Кто-нибудь использует интервал $ __ для выбора диапазона по фиксированным значениям? - PullRequest
1 голос
/ 05 августа 2020

В PromQL мы используем селекторы векторов диапазонов для получения векторов диапазонов для таких функций, как rate(). Grafana предоставляет динамическую c переменную $__interval, и она используется следующим образом:

sum(rate(my_metric{foo="bar"}[$__interval]))

Это значение является приблизительным, так что результирующий вектор диапазона содержит одну запись для каждого пикселя (или более). Насколько я понимаю, это предотвращает чрезмерную выборку.

Пока все хорошо. Но, глядя на несколько панелей мониторинга, доступных в Grafana Cloud, или, например, на демонстрационные панели мониторинга от Robust Perception, никто не использует $__interval. Вместо этого люди выбирают 1m или 5m, даже если не используются правила записи или предупреждения.

Есть ли для этого причина?

1 Ответ

2 голосов
/ 05 августа 2020

$__interval полезен для графиков, которые можно увеличивать / уменьшать. В этом случае Grafana автоматически настраивает $__interval для текущего уровня масштабирования. Например, $__interval=15s используется для графика в диапазоне 15s*1000=~4 hours времени (1000 - это приблизительное количество точек на временной ряд, запрашиваемый Grafana для построения графика; обычно этого достаточно для монитора с горизонтальным разрешением до 4000 пикселей. ), а $__interval=1h используется для графика во временном диапазоне 1h*1000=~40 days. Это позволяет учесть все точки исходных данных из исходного временного ряда при построении графика.

Если в квадратных скобках используется фиксированное значение 5m, то точность графика может пострадать на временных диапазонах. меньше 5m*1000=~3.5 days. Если временной диапазон графика превышает 3,5 дня, то некоторые исходные данные будут отсутствовать в расчетах.

...