Запрос 5 минут в среднем от Прометея
У меня есть запрос, чтобы использовать память в Prometheus как 0,0-1,0 процента. Я могу оповещать об этом напрямую, но не хочу, чтобы оповещения были короткими, только высокий уровень во времени или среднее время, превышающее лимит.
Я надеялся сделать это в запросе, но если AlertManger может сделать это приемлемо, я просто не могу найти как.
Запрос
(node_memory_MemTotal - node_memory_MemFree - node_memory_Buffers - node_memory_Cached) / node_memory_MemTotal
Вопрос
Как я могу взять среднее за 1 минуту этого результата запроса?
1 ответ
Кажется, я нашел способ сделать это, но я не уверен, что это лучше.
(((node_memory_MemTotal offset 5m - node_memory_MemFree offset 5m - node_memory_Buffers offset 5m - node_memory_Cached offset 5m) / node_memory_MemTotal offset 5m) + ((node_memory_MemTotal - node_memory_MemFree - node_memory_Buffers - node_memory_Cached) / node_memory_MemTotal)) / 2
При этом используется модификатор смещения, чтобы выполнить те же измерения 5 минут назад, а во время запроса добавить, а затем разделить их, чтобы получить среднее значение.