我正在尝试使用包含正则表达式的“ expr ”定义警报规则
Metric: XYZ-POST-failure-400-1min-rate
- alert: alert_name_here
expr: __name__=~"(.*)-POST-failure-\d{3}-1min-rate" > 0
使用“ promtool ”
对此进行单元测试Error
group "group_name", rule 1, "alert_name_here": could not parse expression: parse error at char 10: unexpected character after '=': '~'
Prometheus警报管理器甚至支持此功能吗? 有人可以指导我实现此目标的正确方法是什么吗?
谢谢
答案 0 :(得分:0)
该表达式应为有效的PromQL查询,您缺少花括号将其设为valid vector selector:
{__name__=~"(.*)-POST-failure-\d{3}-1min-rate"} > 0
您可以在Prometheus界面中对其进行测试。
关于YAML具有大括号的问题,您可以使用允许使用特殊字符序列的单引号:
- alert: alert_name_here
expr: '{__name__=~"(.*)-POST-failure-\d{3}-1min-rate"} > 0'