Суммирование по временным меткам unix в grafana prometheus

#gpu #devops #prometheus #grafana #promql

#gpu #devops #prometheus #grafana #promql

Вопрос:

Допустим, у меня есть my_val значение в prometheus, которое записывается при использовании экземпляра gpu. Я хочу подвести итог тому, сколько часов или использования gpu у меня было на прошлой неделе. Я могу вызвать timestamp(myval{instance="$instance"}) , который вернет вектор с временными метками, но я не могу вызвать sum(idelta) их, потому что по какой-то причине это мгновенный вектор.

Grafana также изменяет объем запрашиваемых данных в зависимости от того, насколько я масштабирую.

Как мне создать надежный вызов для каждой точки данных

Ответ №1:

Попробуйте выполнить следующий запрос:

 count_over_time(my_val[7d]) * <scrape_interval> / 3600
  

Где <scrape_interval> — интервал очистки в секундах, установленный в файле конфигурации Prometheus для цели, которая экспортирует my_val метрику.
Предполагается, что этот запрос my_val не содержит точек данных, когда экземпляр gpu не использовался.