Поиск:


Создание примитивной статистики с web интерфейсом на linux роутере.



Рубрика: Интернет,Программы | автор macik | 01.06.11 | 0:23

На днях задался вопросом. Как исполнить команду  iftop -i eth* без привилегий супер пользователя? К сожалению ответ я так и не нашел. Но зато нашол интересные решения по быстрому мониторингу канала.  Первое это nload, простая утелита с простым выводом данных.

Ничего особенного. При надобности укажите какой нужен интерфейс для мониторинга (nload eth1). Присуствуюет пара ключей, для вариантов отображения и обновления статистики. Ключ -h вам поможет. На этом я не остановился, по сравнению с iftop , это пузатая мелоч,  выдает только загрузку канала.

Мир не без добрых людей, и добрый @StAlKeR-xXl меня натолкнул на этот скриншот:

По нему я вышел на приложение vnstat PHP frontend Но естествено эта штука не работает без vnstat.

Vnstat, программа для linux,  при ее включение создается файл базы данных для конкретного интерфейса, а с помощью  vnstat PHP frontend вы можете просматривать статистику через web интерфейс.

Для начало надо установить vnstat.

sudo apt-get install vnstat

Чтобы начать считать трафик нужно создать базу данных для требуемого интерфейса.

sudo vnstat -u -i eth2

В моем случае указан интерфейс eth2 , ключ -i дает возможность указать нужный вам интерфейс. Ключ -u обновляет или создает новую базу данных. Для каждого интерфейса надо выполнять данную команду, если вы хотите иметь статистику по всем сетевым подключениям.

Вот какие отчеты выдает vnstat. Общая статистика по интерфейсу – вывод команды без ключей:

Статистика по часам, ключ -h:

Так же можно узнать статистику по дням (ключ -d), по неделям (ключ -w), по месяцам (ключ -m).

Следует отметить, что сушествует выше описаный ключ -i, который нужно указывать, если статистика ведется по нескольким интерфейсам. Без ключа -i, по умолчанию, показывается статистика для eth0.

Программа в Debian атоматически активируется при поднятии сетевых интерфейсов, если создана для него база данных, что удобно например при подсчете статистики с ppoe.

Статистика добавляется в базу данных каждые 5 минут, при установке была создана соответствующаяя запись в cron. Данный этап очень важен для дальнейшего обновления статистики.

0-55/5 *    * * *    root    if [ -x /usr/bin/vnstat ] && [ `ls /var/lib/vnstat/ | wc -l` -ge 1 ]; then /usr/bin/vnstat -u; fi

 

Чтобы остановить статистику нужно выполнить команду: vnstat -i eth0 -u -r –disable

Удалить базу можно стереть ee физически в директории /var/lib/vnstat/

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

Продолжение следует.




Лицензия от Creative Commons | Локализация от Тема: ВордПресс | Всего понемногу …