RRDTool: файл RRD не обновляется - PullRequest
0 голосов
/ 21 мая 2011

Мой Файл RRD не обновляется, в чем причина?

На графике показана легенда с: -nanv

Я создал файл RRD, используя этоСинтаксис:

rrdtool create ups.rrd --step 300 
DS:input:GAUGE:600:0:360 
DS:output:GAUGE:600:0:360 
DS:temp:GAUGE:600:0:100 
DS:load:GAUGE:600:0:100 
DS:bcharge:GAUGE:600:0:100 
DS:battv:GAUGE:600:0:100 
RRA:AVERAGE:0.5:12:24 
RRA:AVERAGE:0.5:288:31 

Затем я обновил файл следующим синтаксисом:

rrdtool update ups.rrd N:$inputv:$outputv:$temp:$load:$bcharge:$battv

И расшифровал его следующим образом:

rrdtool graph ups-day.png 
-t "ups " 
-s -1day 
-h 120 -w 616 
-a PNG 
-cBACK#F9F9F9 
-cSHADEA#DDDDDD 
-cSHADEB#DDDDDD 
-cGRID#D0D0D0 
-cMGRID#D0D0D0 
-cARROW#0033CC 
DEF:input=ups.rrd:input:AVERAGE 
DEF:output=ups.rrd:output:AVERAGE 
DEF:temp=ups.rrd:temp:AVERAGE 
DEF:load=ups.rrd:load:AVERAGE 
DEF:bcharge=ups.rrd:bcharge:AVERAGE 
DEF:battv=ups.rrd:battv:AVERAGE 
LINE:input#336600 
AREA:input#32CD3260:"Input Voltage" 
GPRINT:input:MAX:" Max %lgv" 
GPRINT:input:AVERAGE:" Avg %lgv" 
GPRINT:input:LAST:"Current %lgv\n" 
LINE:output#4169E1:"Output Voltage" 
GPRINT:output:MAX:"Max %lgv" 
GPRINT:output:AVERAGE:" Avg %lgv" 
GPRINT:output:LAST:"Current %lgv\n" 
LINE:load#FD570E:"Load" 
GPRINT:load:MAX:"      Max %lg%%" 
GPRINT:load:AVERAGE:" Avg %lg%%" 
GPRINT:load:LAST:" Current %lg%%\n" 
LINE:temp#000ACE:"Temperature" 
GPRINT:temp:MAX:"   Max %lgc" 
GPRINT:temp:AVERAGE:"    Avg %lgc" 
GPRINT:temp:LAST:" Current %lgc" 

Ответы [ 2 ]

2 голосов
/ 09 апреля 2014

Вам понадобится как минимум 13 обновлений, каждые 5 минут (IE, 12 PDP (первичные точки данных)), прежде чем вы сможете получить один CDP (сводная точка данных), записанный в ваши RRA, что позволит вам получить точку данных награфик.Это связано с тем, что вашим RRA с наименьшим разрешением является счет 12, а это означает, что вам нужно 12 PDP для создания одного CDP.

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

В качестве альтернативы добавьте RRA с меньшим разрешением (возможно, счет 1), чтобы вам не приходилось собирать данные так долго, пока у вас не будет полного CDP.

0 голосов
/ 05 июня 2011

Сценарий обновления должен запускаться с точно таким же интервалом, как определено в вашей базе данных. Я вижу, что он имеет значение шага 300, поэтому база данных должна обновляться каждые 5 минут. Просто поместите ваш скрипт обновления в работу cron (вы также можете сделать это для вашего скрипта графа) * ​​1003 *

Например,

sudo crontab -e

Если вы запускаете в первый раз, выберите ваш любимый редактор (я обычно использую Vim ) и добавьте полный путь к вашему скрипту и запускайте его каждые 5 минут. Так что добавьте это (не забудьте переименовать путь):

*/5 * * * *  /usr/local/update_script > /dev/null && /usr/local/graph_script > /dev/null

Сохраните его и подождите пару минут. Я обычно перенаправляю вывод в /dev/null в случае вывода, который может быть сгенерирован скриптом. Так что если скрипт, который будет выполнен, выдаст crontab, то не получится и отправит уведомление.

...