Перейти к содержимому
Калькуляторы

#280. Мониторинг с помощью RRDTOOL

я думаю, могу выразить мнение хозяина, что влезать нужно всегда, если по существу :)

В данном случае не совсем по существу..

 

Во первых разница MRTG и RRDTOOL в том и состоит, что MRTG действительно раз в несколько минут перерисовывает картинки а RRDTOOL только базы обновляет (извините, но это FAQ + RTFM).

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

 

далее идет безопасный код, но без возможности изменения периода вывода:

 

#!/usr/local/rrdtool/bin/rrdcgi
<HTML>
<HEAD><TITLE>Traffic stat</TITLE></HEAD>
<BODY>
<H3>traffic stat for <RRD::CV RRD_NAME>, step<RRD::CV RRD_TIME> sec.</H3>
<H4>Select time</H4>
<FORM><INPUT NAME=RRD_TIME TYPE=RADIO VALUE="-43200">1  day<br>
      <INPUT NAME=RRD_TIME TYPE=RADIO VALUE="-86400"> 2 days <br>
      <INPUT NAME=RRD_TIME TYPE=RADIO VALUE="-2419200"> 1 month <br>
<INPUT TYPE=SUBMIT>
</FORM>
<RRD::PRINT>
<P><RRD::GRAPH /home/stat/traf.png --imginfo '<IMG SRC=/stat/traf.png></IMG>'
--imgformat=PNG -h 150 -w 600 -s -43200
-t "traffic"
-v ""
--slope-mode
DEF:rlin=/var/db/rrd/traf.rrd:rlin:AVERAGE
DEF:rlout=/var/db/rrd/traf.rrd:rlout:AVERAGE
CDEF:kbin=rlin,1024,/
CDEF:kbout=rlout,1024,/
AREA:rlin#00FF00:"In"
GPRINT:kbin:LAST:\:"%3.2lf Kbps \n"
LINE1:rlout#0000FF:"Out"
GPRINT:kbout:LAST:\:"%3.2lf Kbps \n"
>
</P>
</BODY>
</HTML>

 

С Уважением,

Zyxman.

По пунктаам:

1. в обзоре RRDTool не только обновляет базу но и рисует картинки. RRDTool -- большой пакет, он вырос из MRTG и частично унаследовал его (MRTG) функционал, разве нет?

2. зачем в указаном ПРАВЛЕНОМ коде форма -- неясно. она все равно действовать не будет.

код правленый, безопасный до упора:

 

#!/usr/local/rrdtool/bin/rrdcgi
<HTML>
<HEAD><TITLE>Traffic stat</TITLE></HEAD>
<BODY>
<H3>DAILY traffic stat for server</H3>
</FORM>
<RRD::PRINT>
<P><RRD::GRAPH /home/stat/traf.png --imginfo '<IMG SRC=/stat/traf.png></IMG>'
--imgformat=PNG -h 150 -w 600 -s -43200 <!--вот тут можно менять время. в секуднах-->
-t "traffic"
-v ""
--slope-mode
DEF:rlin=/var/db/rrd/traf.rrd:rlin:AVERAGE
DEF:rlout=/var/db/rrd/traf.rrd:rlout:AVERAGE
CDEF:kbin=rlin,1024,/
CDEF:kbout=rlout,1024,/
AREA:rlin#00FF00:"In"
GPRINT:kbin:LAST:\:"%3.2lf Kbps \n"
LINE1:rlout#0000FF:"Out"
GPRINT:kbout:LAST:\:"%3.2lf Kbps \n"
>
</P>
</BODY>
</HTML>

 

за <RRD::CV RRD_NAME> сорри -- у меня скрипт который и время и файл позволяет выбрать. хотя это и очень по идее плохо (туда правда доступ все равно три человека имеет).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

я думаю, могу выразить мнение хозяина, что влезать нужно всегда, если по существу :)

В данном случае не совсем по существу..

 

Во первых разница MRTG и RRDTOOL в том и состоит, что MRTG действительно раз в несколько минут

перерисовывает картинки

а RRDTOOL только базы обновляет (извините, но это FAQ + RTFM).

Во вторых, код с настолько серьезным недочетом секюрити лучше сразу давать правленным

(или явно указывать где и что править).

 

С Уважением,

Zyxman.

По пунктаам:

1. в обзоре RRDTool не только обновляет базу но и рисует картинки. RRDTool -- большой пакет,

он вырос из MRTG и частично унаследовал его (MRTG) функционал, разве нет?

2. зачем в указаном ПРАВЛЕНОМ коде форма -- неясно. она все равно действовать не будет.

код правленый, безопасный до упора:

 

за <RRD::CV RRD_NAME> сорри -- у меня скрипт который и время и файл позволяет выбрать.

хотя это и очень по идее плохо (туда правда доступ все равно три человека имеет).

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

извините, еще раз повторюсь: FAQ + RTFM!

 

к сожалению я обнаружил для себя, что использование rrdcgi тупиковый путь,

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

сколько-нибудь исчерпывающее решение нереально.

Сегодня обещаю разобраться с модулем для perl и дать пристойный эквивалент на perl.

Изменено пользователем zyxman

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.