AllTrails

Deltahost

Facebook

Instagram

Komoot

Strava

YouTube

🏠 Oleksandr Rudenko blog

📉 Перегляд графіків, що генеруються MRTG

12.02.2009 | Олександр

Представляю вашему вниманию (ras MRTG cover) простой просмотрщик статистики, генерируемой MRTG (multi router traffic grapher), написанный на perl. Программа генерирует индекс всех графиков, отделяет скоростные графики от количественных, приводит единицы отображение скоростей к килобитам, позволяет выполнять сортировку в обоих направлениях по каждому полю. Просмотр графиков также переделан для лучшего восприятия.

Написана данная утилита была по причине необходимости держать на роутерах небольшой набор графиков, а так как не хотелось для их просмотра постоянно рисовать какую-то индексную страницу — появилось это решение.

Скриншоты

индексная страница:



страница просмотра графиков:



Скачать (версия 0.3a1 от 17.06.2009):

Установка

Установка и настройка (рассматривается дистрибутив CentOS 5.2):
Переинициализировать httpd ("service httpd reload"), после этого можно наблюдать индекс графиков по адресу "http://yousite/mrtg/".

Следует отметить, что описание для индекса и параметры при отображении графика — берутся из первых двух строк таблицы сгенерированного MRTG html-файла.

Примеры конфигурационных файлов MRTG

/etc/mrtg/mrtg.cfg:
HtmlDir: /var/www/mrtg
ImageDir: /var/www/mrtg
LogDir: /var/lib/mrtg
ThreshDir: /var/lib/mrtg
Include: /etc/mrtg/mrtg-local.conf
Include: /etc/mrtg/mrtg-satel.conf
Include: /etc/mrtg/mrtg-satel-ppp.conf
Include: /etc/mrtg/mrtg-vizit.conf
Include: /etc/mrtg/mrtg-zeus.conf
Include: /etc/mrtg/mrtg-cooler.conf
Include: /etc/mrtg/mrtg-temperature_cpu.conf
Include: /etc/mrtg/mrtg-temperature_hdd.conf
Include: /etc/mrtg/mrtg-temperature_sys.conf
Include: /etc/mrtg/mrtg-uptime.conf
Include: /etc/mrtg/mrtg-cpu.conf
Include: /etc/mrtg/mrtg-cpu_ras.conf
Include: /etc/mrtg/mrtg-cpu_ras-netbook.conf
Include: /etc/mrtg/mrtg-cpu_iriska.conf
/etc/mrtg/mrtg-satel-ppp.conf

Target[satel-ppp]: `/etc/mrtg/scripts/dev.sh ppp0`
MaxBytes[satel-ppp]: 1250000
AbsMax[satel-ppp]: 1500000
Options[satel-ppp]: bits,unknaszero,growright
Title[satel-ppp]: satel-ppp
PageTop[satel-ppp]: <h1>Интернет www.satel.net.ua</h1>
  <table>
    <tr>
      <td>Интерфейс:</td>
      <td>ppp0</td>
    </tr>
    <tr>
      <td>Максимальная скорость:</td>
      <td>10 Mbps</td>
    </tr>
  </table>
Скрипт, снятия счётчиков трафика с интерфейса, ему передаётся параметр - имя интерфейса, по которому выбираются счётчики из /proc/net/dev, если устройства нет — выдаются нули:

/etc/mrtg/scripts/dev.sh:
#!/bin/bash

DEVICE=$1
if [ "$DEVICE" = "" ] ; then
  /bin/echo "Usage: $0 DEVICE"
  exit 1
fi

LINE=`/bin/grep -P "^\s*$DEVICE:" /proc/net/dev | /bin/cut -d : -f 2`
if [ "$LINE" = "" ] ; then
  /bin/echo 0
  /bin/echo 0
else
  /bin/echo $LINE | /usr/bin/awk '{print $1}'
  /bin/echo $LINE | /usr/bin/awk '{print $9}'
fi
Лицензия

You may freely distribute and/or modify this module under the terms of either the GNU General Public License (GPL, www.gnu.org/licenses/gpl.txt).

Ссылки:


Коментарі

⬆️ Наверх сторінки