Я пытаюсь настроить оповещение в файле alert.rules Прометея, который срабатывает только в течение определенных периодов времени.
Я уже тестировал приведенный ниже блок кода без временных ограничений внутри тега expr, и он работает абсолютно нормально.
Как указано в Документация PromQL: hour () , hour()
возвращает значение в диапазоне от 0 до 23 в зависимости от текущего UTC.
- alert: test_down
expr: absent(container_memory_usage_bytes{name="test_ap"}) and hour() > 5 and hour() < 22
for: 30s
labels:
severity: critical
annotations:
summary: "test_ap down"
description: "test_ap is down for more than 30 seconds."
Но здесь оповещение не отправляется. Кто-нибудь знает, почему ничего не запускается и как я могу это исправить?
РЕДАКТИРОВАТЬ: Я уже решил это. Я не понимаю, почему я должен делать это так, как я, но работает следующее:
заменить and hour() > 5 and hour() < 22
на and ON() hour() > 5 < 22