Как использовать выбранный период времени в запросе?

Я использую Grafana с Prometheus и хочу создать запрос, который зависит от выбранного периода времени, выбранного в правом верхнем углу экрана.

Есть ли какая-либо переменная (или что-то в этом роде) для использования в поле запроса?

Другими словами, если я выберу 24 часа, я бы хотел использовать эти данные в запросе.


person Facundo Chambo    schedule 06.11.2017    source источник


Ответы (3)


Я знаю два пути:

  1. Вы можете использовать переменную $ __ interval следующим образом:

    increase(http_requests_total[$__interval])
    

Недостатком является то, что значение переменной $ __ interval регулируется разрешением графика, но это также может быть полезно в некоторых ситуациях.

  1. Этот подход должен лучше соответствовать вашему случаю:

Перейдите к настройкам Templating в Dashboard, создайте новую переменную с типом Интервал. Включите «Auto Option», установите «Step count» равным 1. Затем убедитесь, что в соответствующем раскрывающемся списке вверху панели инструментов выбрано значение «Авто».

Предположим, вы назовете его timeRange, тогда запрос будет выглядеть так:

increase(http_requests_total[$timeRange])

Эта переменная не будет регулироваться разрешением графика, и если вы выберете «Последние 10 часов», ее значение будет 10h.

person Yoory N.    schedule 08.11.2017

Если вы планируете использовать prometheus в качестве источника данных, диапазон $ __ поддерживает вашу панель управления. Это отличное время.

 increase(gin_total_requests[$__range])

Зачем создавать переменную, если можно использовать встроенную глобальную переменную.

Я добавил ссылки на документацию в качестве резервной копии моего ответа Grafan 5.3 +

person druphub    schedule 07.05.2020
comment
Это ответ на вопрос, и он должен быть первым, даже если ответ действительно работает и предлагает интересный подход. - person jmary; 25.03.2021
comment
Вы знаете, почему я не работаю increase, когда я использую 24-часовой диапазон во временном диапазоне сборщика? Данные существуют, потому что если я удалю increase и $__range , они покажут мне данные. - person jcarlosweb; 16.05.2021

count_over_time({job="gerrit-sshd"}[$__interval])

У меня это работает, и более того, вы должны установить Max data point как 1 в параметре запроса.

Тогда $__interval - это тот же временной диапазон, что и на панели в правом верхнем углу Grafana.

person nervermore    schedule 17.03.2021