Смещение показателей графита на наименьшее значение в текущем временном диапазоне

У меня есть Grafana с метриками Graphite. У меня есть график, показывающий EnqueueCount некоторой конкретной очереди в ActiveMQ. Проблема в том, что EnqueueCount показывает все значения с момента создания очереди, поэтому, когда я сужаю временной диапазон в Grafana до «сегодня пока», график выглядит следующим образом:

график

Я бы хотел, чтобы он отображал только значения за текущий период - я бы хотел, чтобы график всегда начинался с 0. В этом случае я бы хотел компенсировать его на -2. Есть функция offset, но она только константа, а мне нужно что-то вроде «смещения по наименьшему значению за период времени».

Я просмотрел документацию по графиту, но не могу найти ни одной функции, которая позволила бы мне сделай это.

Есть идеи, как я могу этого добиться?

Версии, которые мы используем:

  • Grafana v4.2.0 (фиксация: 349f3eb)
  • графитовая паутина-0.9.12-5
  • питон-углерод-0.9.12-3

person Jaroslaw Pawlak    schedule 02.06.2017    source источник


Ответы (1)


Используйте функцию nonNegativeDerivative () - тогда вы получите скорость изменения EnqueueCount за (обычно это ваш интервал метрики) минуту. Если вы хотите снова посчитать - используйте интеграл ().

Итак, integral(nonNegativeDerivative(EnqueueCount)) - но обычно люди ищут ставку, тогда достаточно производной.

person deniszh    schedule 02.06.2017
comment
Использование производной для удаления данных за пределами выбранного временного интервала - очень умный трюк :) Большое спасибо, это именно то, что мне нужно. - person Jaroslaw Pawlak; 02.06.2017