Jump to content
Local
spaul

Графики скорости пользователей для abills

Recommended Posts

http://www.youtube.com/watch?v=4wk8j9-5NFI

 

post-16419-0-47009000-1301255745_thumb.png

 

Скрипт для генерации графиков скорости пользователя (pppoe, pptp и другого, что имеет accounting) V0.2

 

Цена 20$

 

Описание:

- Генерируется график за сутки

- Просмотреть можно за текущий месяц

- График на javascript, интерактивный. Подсвечиваюстя значения скорости в позиции, где установлен курсор мыши.

 

Скрипт можно использовать как отдельно (нужно будет вводить логин пользователя для просмотра графика), также можно встроить небольшую ссылочку в абиллс (как на видео).

 

Кому интересно задавайте вопросы ) Личные - в личку, общие - сюда ))

Share this post


Link to post
Share on other sites

Сколько у тебя пользователей?

За какой период хранится статистика?

Какая стоит тачка на этих объемах?

Какая динамика роста пользователей, размер баз данных, производительность билинга?

Share this post


Link to post
Share on other sites

1. Скрипт генерирует, график только при запросе информации или создает такие графики для всех пользователей ( на подобии МРТЖ ) ?

Как бы стоит Абиллс на машине где ему уже тяжело дышать и не хотелось бы сейчас делать апгрейд.

 

2. Требуется ли менять структуру таблиц и т.д., другими словами как повлияет установка Вашего скрипта на обновление биллинга?

Share this post


Link to post
Share on other sites

Вам за 15 баксов предлагают не билинг, а скрипт, который парсит существующую базу,

и если серваку, уже тяжело дышать, то тут ему смерть.

Share this post


Link to post
Share on other sites

Вам за 15 баксов предлагают не билинг, а скрипт, который парсит существующую базу,

и если серваку, уже тяжело дышать, то тут ему смерть.

 

Я прекрасно понял что мне предлагают. И меня интересует технически нюанс а не прогноз по жизни моего сервера.

Share this post


Link to post
Share on other sites

1. Скрипт генерирует, график только при запросе информации или создает такие графики для всех пользователей ( на подобии МРТЖ ) ?

Как бы стоит Абиллс на машине где ему уже тяжело дышать и не хотелось бы сейчас делать апгрейд.

 

2. Требуется ли менять структуру таблиц и т.д., другими словами как повлияет установка Вашего скрипта на обновление биллинга?

 

1. Скрипт генерирует график при запросе, для этого выбирает данные с акканутинг пакетов (хранятся в таблице s_detail). Все эти данные у вас и так хранятся. Вы можете их просмотреть в Статистика->Сессия->Кнопка D(детали сессии)

 

2. Структура базы вообще не затрагивается. При установке вам нужно только прописать логин пароль для соединения с базой. Данные только считываются с таблици. Никаких операций записи скриптом не предусмотрено. После обновления биллинга нужно будет прописать одну строчку заново в файл Abills/modules/Dv/webinterface. Но можно и отдельно держать скрипт, и вводить имя пользователя вручную, чтобы посмотреть его скорость.

 

По поводу нагрузки:

 

При генерации графика из базы abills -> таблици s_detail выбирается 1440/(Аккаунтинг интервал) значений. У меня аккаунтинг интервал 1минута, соответственно у меня выбирается 1440 значений. Это довольно трудоемкий процесс. Судьба закинула мой биллинг на Атлон X2 (2 яйца по 2.8 ГГц). Генерация суточного графика занимает 100%одного из ядер на время около 5 секунд.

 

Если вы ставили абилс по инструкции, то у вас аккаунтинг интервал должен быть 600 (5минут), соответственно для генерации графика вам нужно будет выбрать из базы всего 288 значений. Вобщем думаю что даже на дохлом биллинге, если 6 раз в день посмотреть график по проблемных клиентах то ничего страшного не произойдет.

 

Вообще правильно настроенный абилс ресурсов жрет очень мало, у меня до 1.5К пользователей онлайн + zabbix, который опрашивает 66 устройств в среднем по 100 елементов на каждом раз в 30 секунд...... И в результате загрузка проца самая максимальная ... (барабанная дробь).... 25% =) Тоесть 25% общего процессорного времени МАКСИМУМ!!

 

Вся нагрузка из за тех же аккаунтинг пакетов, если использовать rlm_perl то нагрузка ЗНАЧИТЕЛЬНО уменьшается. Советую вам поставить, и ваш биллинг снова оживет ;)

Share this post


Link to post
Share on other sites

Забавно, а как будет выглядеть график если у юзера пакет 256к например? А то судя по скрину который ты выложил график отрисовался не относительно максимального значения у пользака а фиксированного 8 мбит.

Скинь аську.

Share this post


Link to post
Share on other sites

А высота графика подстраивается динамически. Графики используются вот эти

Еще в течении недельки буду пробовать использовать javascript для графиков. Просто для сравнения. Хочу чтото подобное на графики zabbix.

 

Я для дисконекта ставлю палку со значением -1 (мегабит). Таким макаром график для юзера с 256к получается вот такой.

 

post-16419-0-58633500-1300718947_thumb.png.

 

Конечно не очень красиво, но все равно читабельно. Настройки отображения очень легко изменить. Потому если все тарифы маленькие, то подстроить не вопрос.

 

Аськой не пользуюсь, есть скайп spaul_bkточкаru

Share this post


Link to post
Share on other sites

Радиус у меня и так на перле ) Но все равно спасибо за совет.

 

Пишите куда Вам слать бабло всегда побеждающее зло.

Share this post


Link to post
Share on other sites

Есть версия 0.2 (смотреть первый пост)

 

post-16419-0-96074300-1301256729_thumb.png

 

CHANGELOG

 

Отображение графика теперь - javascript

График теперь за сутки, а не только за время онлайн.

Участки графика можно увеличивать.

Для работы с масштабом графика есть превью.

 

За помощь в разработке спасибо мистеру UTKC, а также mr.Scamp

Share this post


Link to post
Share on other sites

Задумка интересная и полезная, только не понятно от куда берутся данные о скорости

в s_detail нет поля для указания значения скорости, и вообще я в таблицах не нашел поля для текущей скорости, значение которой можно посмотреть в мониторинге, у меня там у всех абонентов стоять "0"

 

 

acct_session_id

nas_id

acct_status

start

last_update

sent1

recv1

sent2

recv2

id

sum

 

Каким образом вы рассчитываете текущую входящую и исходящую скорость?

Share this post


Link to post
Share on other sites

Anton Kurnosov

А вы когда проезжаете за час 100 км, какая у вас скорость? :)

Share this post


Link to post
Share on other sites

У меня только 2 записи, начало сессии и конец, как тут подсчитать скорость, хотя бы каждые 5 мин, если время сессии 39409.

 

capture1111x.png

Share this post


Link to post
Share on other sites

Данные берутся из s_detail, информация там обновляется по мере прихода accountig-update от сервера доступа.

Если эта информация не приходит, значит нужно крутить настройки NAS-а, в области того, как он работает с радиусом.

Share this post


Link to post
Share on other sites

а строчка обновляется одна (начало сессии) или по для этой сессии добавляются новые строки по мере прихода данных?

 

Интересно то что текущая сессия в s_detail не пишется, только после того как она сброшена (logout).

Разве это нормально?

 

 

NAS - mpd5, freebsd, версия биллинга ABillS 0.50b

 

У меня вместо alive приходят

Acct-Status-Type = Interim-Update

 

User-Name = "ххх"

Acct-Multi-Session-Id = "838795-B-151"

mpd-bundle = "B-151"

mpd-iface = "ng150"

mpd-iface-index = 155

Acct-Link-Count = 1

Acct-Authentic = RADIUS

Acct-Status-Type = Interim-Update

Acct-Session-Time = 33603

Acct-Input-Octets = 42127207

Acct-Input-Packets = 429043

Acct-Input-Gigawords = 0

Acct-Output-Octets = 409697969

Acct-Output-Packets = 695730

Acct-Output-Gigawords = 0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×