===== Создание графика температуры с помощью RRDTool - rrdcgi =====
Веб-сервер, у меня Apache.\\
Добавляю в **/usr/local/etc/apache22/httpd.conf** следующие строки для обработки cgi скриптов
Alias /term "/usr/local/www/term/"
Options FollowSymLinks ExecCGI
AddHandler cgi-script .cgi
DirectoryIndex index.cgi
AllowOverride None
Order deny,allow
Allow from all
Директория /usr/local/www/term – являеться корневой для термометра.\\
Создадю ее
# mkdir /usr/local/www/temperature
Назначаю права на созданную директорию
# chown www:www /usr/local/www/temperature
Рестартую apache
# apachectl restart
Т.к. RRDTool ставиться при установки cacti и отрисовка температуры у меня уже осуществляется, то я использую базу данных cacti.
Создаю cgi скрипт
# cat > /usr/local/www/term/index.cgi
#!/usr/local/bin/rrdcgi
Температура воздуха в г.Георгиевск
Температура воздуха в г.Георгиевск
'
DEF:temperature=/usr/local/share/cacti/rra/klotik_ru_snmp_oid_10.rrd:snmp_oid:AVERAGE
CDEF:tp_34=temperature,0,GT,temperature,100,GT,34,temperature,IF,0,IF AREA:tp_34#FF0000
CDEF:tp_33=temperature,0,GT,temperature,33,GT,33,temperature,IF,0,IF AREA:tp_34#FF0F00
CDEF:tp_32=temperature,0,GT,temperature,32,GT,32,temperature,IF,0,IF AREA:tp_32#FF1700
CDEF:tp_31=temperature,0,GT,temperature,31,GT,31,temperature,IF,0,IF AREA:tp_31#FF1F00
CDEF:tp_30=temperature,0,GT,temperature,30,GT,30,temperature,IF,0,IF AREA:tp_30#FF2700
CDEF:tp_29=temperature,0,GT,temperature,29,GT,29,temperature,IF,0,IF AREA:tp_29#FF2F00
CDEF:tp_28=temperature,0,GT,temperature,28,GT,28,temperature,IF,0,IF AREA:tp_28#FF3700
CDEF:tp_27=temperature,0,GT,temperature,27,GT,27,temperature,IF,0,IF AREA:tp_27#FF3F00
CDEF:tp_26=temperature,0,GT,temperature,26,GT,26,temperature,IF,0,IF AREA:tp_26#FF4700
CDEF:tp_25=temperature,0,GT,temperature,25,GT,25,temperature,IF,0,IF AREA:tp_25#FF4F00
CDEF:tp_24=temperature,0,GT,temperature,24,GT,24,temperature,IF,0,IF AREA:tp_24#FF5700
CDEF:tp_23=temperature,0,GT,temperature,23,GT,23,temperature,IF,0,IF AREA:tp_23#FF5F00
CDEF:tp_22=temperature,0,GT,temperature,22,GT,22,temperature,IF,0,IF AREA:tp_22#FF6700
CDEF:tp_21=temperature,0,GT,temperature,21,GT,21,temperature,IF,0,IF AREA:tp_21#FF6F00
CDEF:tp_20=temperature,0,GT,temperature,20,GT,20,temperature,IF,0,IF AREA:tp_20#FF7700
CDEF:tp_19=temperature,0,GT,temperature,19,GT,19,temperature,IF,0,IF AREA:tp_19#FF7F00
CDEF:tp_18=temperature,0,GT,temperature,18,GT,18,temperature,IF,0,IF AREA:tp_18#FF8700
CDEF:tp_17=temperature,0,GT,temperature,17,GT,17,temperature,IF,0,IF AREA:tp_17#FF8F00
CDEF:tp_16=temperature,0,GT,temperature,16,GT,16,temperature,IF,0,IF AREA:tp_16#FF9700
CDEF:tp_15=temperature,0,GT,temperature,15,GT,15,temperature,IF,0,IF AREA:tp_15#FF9F00
CDEF:tp_14=temperature,0,GT,temperature,14,GT,14,temperature,IF,0,IF AREA:tp_14#FFA700
CDEF:tp_13=temperature,0,GT,temperature,13,GT,13,temperature,IF,0,IF AREA:tp_13#FFAF00
CDEF:tp_12=temperature,0,GT,temperature,12,GT,12,temperature,IF,0,IF AREA:tp_12#FFB700
CDEF:tp_11=temperature,0,GT,temperature,11,GT,11,temperature,IF,0,IF AREA:tp_11#FFBF00
CDEF:tp_10=temperature,0,GT,temperature,10,GT,10,temperature,IF,0,IF AREA:tp_10#FFC700
CDEF:tp_09=temperature,0,GT,temperature,09,GT,09,temperature,IF,0,IF AREA:tp_09#FFCF00
CDEF:tp_08=temperature,0,GT,temperature,8,GT,8,temperature,IF,0,IF AREA:tp_08#FFD700
CDEF:tp_07=temperature,0,GT,temperature,7,GT,7,temperature,IF,0,IF AREA:tp_07#FFDF00
CDEF:tp_06=temperature,0,GT,temperature,6,GT,6,temperature,IF,0,IF AREA:tp_06#FFE700
CDEF:tp_05=temperature,0,GT,temperature,5,GT,5,temperature,IF,0,IF AREA:tp_05#FFEF00
CDEF:tp_04=temperature,0,GT,temperature,4,GT,4,temperature,IF,0,IF AREA:tp_04#FFF700
CDEF:tp_03=temperature,0,GT,temperature,3,GT,3,temperature,IF,0,IF AREA:tp_03#FFFF00
CDEF:tp_02=temperature,0,GT,temperature,2,GT,2,temperature,IF,0,IF AREA:tp_02#ffff6F
CDEF:tp_01=temperature,0,GT,temperature,1,GT,1,temperature,IF,0,IF AREA:tp_01#ffffAF
CDEF:tm_17=temperature,0,LT,temperature,-100,LT,-34,temperature,IF,0,IF AREA:tm_17#0000FF
CDEF:tm_16=temperature,0,LT,temperature,-32,LT,-32,temperature,IF,0,IF AREA:tm_16#0011FF
CDEF:tm_15=temperature,0,LT,temperature,-30,LT,-30,temperature,IF,0,IF AREA:tm_15#0022FF
CDEF:tm_14=temperature,0,LT,temperature,-28,LT,-28,temperature,IF,0,IF AREA:tm_14#0033FF
CDEF:tm_13=temperature,0,LT,temperature,-26,LT,-26,temperature,IF,0,IF AREA:tm_13#0044FF
CDEF:tm_12=temperature,0,LT,temperature,-24,LT,-24,temperature,IF,0,IF AREA:tm_12#0055FF
CDEF:tm_11=temperature,0,LT,temperature,-22,LT,-22,temperature,IF,0,IF AREA:tm_11#0066FF
CDEF:tm_10=temperature,0,LT,temperature,-20,LT,-20,temperature,IF,0,IF AREA:tm_10#0077FF
CDEF:tm_09=temperature,0,LT,temperature,-18,LT,-18,temperature,IF,0,IF AREA:tm_09#0088FF
CDEF:tm_08=temperature,0,LT,temperature,-16,LT,-16,temperature,IF,0,IF AREA:tm_08#0099FF
CDEF:tm_07=temperature,0,LT,temperature,-14,LT,-14,temperature,IF,0,IF AREA:tm_07#00AAFF
CDEF:tm_06=temperature,0,LT,temperature,-12,LT,-12,temperature,IF,0,IF AREA:tm_06#00BBFF
CDEF:tm_05=temperature,0,LT,temperature,-10,LT,-10,temperature,IF,0,IF AREA:tm_05#00CCFF
CDEF:tm_04=temperature,0,LT,temperature,-8,LT,-8,temperature,IF,0,IF AREA:tm_04#00DDFF
CDEF:tm_03=temperature,0,LT,temperature,-6,LT,-6,temperature,IF,0,IF AREA:tm_03#00EEFF
CDEF:tm_02=temperature,0,LT,temperature,-4,LT,-4,temperature,IF,0,IF AREA:tm_02#00FFFF
CDEF:tm_01=temperature,0,LT,temperature,-2,LT,-2,temperature,IF,0,IF AREA:tm_01#CDFFFF
LINE1:temperature "GPRINT:temperature:LAST:Сейчас\:%3.2lfC" "GPRINT:temperature:MAX:Максимальная\:%3.2lfC" "GPRINT:temperature:MIN:Минимальная\:%3.2lfC">
Данные на:
Ctrl+D
Создаю папку и установливаю владельца для хранения графиков
# mkdir /usr/local/www/term/png
# chown www:www /usr/local/www/term/png/
Захожу браузером на сервер: http://ip_адрес_сервера/term
Параметр –lazy – указывает не пересоздавать график если данные не обновились, для отладки лучше отключить или удалять график в ручную.
Ссылки:\\
http://dutyadmin.ru/content/rrdtool-teoriya-i-praktika