Prometheus 电子邮件警报以显示指标值

Prometheus email alert to show metric value

我在 Prometheus/Alert 经理中有一个标签 cs_job_time,我想在满足另一项工作的条件时发送电子邮件提醒。电子邮件发送正常,但是否可以在电子邮件中包含 cs_job_time 的值?我可以使用 {{$value}} 作为相关指标,但我还想打印 cs_job_time.

的值

我遇到了 this 但是当我尝试时

time = "{{  `cs_job_time{instance='%s', job='/'}` $labels.instance | query | first }}

或类似变体,我收到错误消息 "Error expanding alert template CSJobAlert with data '{map[] 2123}': runtime error: invalid memory address or nil pointer dereference" source="alerting.go:199"

是否可以通过电子邮件发送指标值?

示例中缺少 printf

"{{ printf `cs_job_time{instance='%s', job='/'}` $labels.instance | query | first }}"

不过要小心,如果没有结果,那么 first 就会失败。通常最好使用范围语句,因为它对此具有弹性。