Получить максимальное число за определенный период из файла rrd

У меня есть файл rrd, в котором хранятся cpu average loads.

Я хотел бы знать Maximum Load за определенный период; допустим в течение суток.

Я написал:

rrdtool fetch test.rrd MAX -r 300 -e 1364712300 -s -1h

У меня так много MAX чисел, что мне нужно написать больше кода, чтобы получить фактическое максимальное число.

Мой вопрос: могу ли я просто написать простую командную строку, чтобы получить этот МАКСИМАЛЬНЫЙ номер?


person user2253717    schedule 12.04.2013    source источник


Ответы (2)


Если вам нужен только один номер, попробуйте

rrdtool graph x -s -1h -e 1364712300 \ 
   DEF:v=test.rrd:ds1:MAX VDEF:vm=v,MAXIMUM PRINT:vm:%lf

это напечатает одно число на STDOUT. График не будет создан, так как вы не использовали никаких графических инструкций.

person Tobi Oetiker    schedule 26.04.2013
comment
Спасибо, это было очень полезно, но для чего предназначен второй параметр x? Я использую RRDtool 1.3.8, и мне пришлось его удалить. - person doshea; 16.01.2015

Я думаю, что это даст вам максимум за каждые 5 минут в течение указанного вами диапазона времени. Попробуйте установить -r 3600 на максимум 1 час или -r 86400 на максимум 24 часа.

Вы можете убедиться в этом, посмотрев временные метки, предоставленные вам вместе с выводом.

person Butters    schedule 22.04.2013