在 Prometheus Alert Manager 电子邮件中填充 Date/Time

Populating a Date/Time in Prometheus Alert Manager E-mail

所以我有一个警报规则,当队列长度在一段时间内很长时,它会在 prometheus 中触发。

通过警报管理器,我可以创建和接收电子邮件。

我现在的问题是,作为我的电子邮件正文的一部分,我想要警报管理器触发电子邮件或警报被触发的日期和时间。

我不确定该怎么做。我是否可以在警报中创建一个标签并用当前 date/time 以某种方式填充它,或者什么?有什么想法吗?

Alertmanager 模板中的警报有一个您可以使用的 StartsAt 属性。

- alert: Alert
  for: 5m
  expr: ...
  annotations:
    timestamp: >
      time: {{ with query "time()" }}{{ . | first | value | humanizeTimestamp }}{{ end }}

我仍然觉得迭代警报和获取警报文本中的时间序列或时间戳的值很困难。所以我用上面的方法解决了这个问题。它有效,我能够在电子邮件正文中获得警报的时间戳/时间序列。干杯!