英文:
value of one alert can be prnted in annotation description of another alert in Alert manager
问题
我有一个名为“sc_pcd_g2version”的警报,在AlertManager中列出。它返回值25。
我正在寻找一种方法,将这个值“25”提取并打印到AlertManager中另一个名为“sc_pcd_encryption_server”的警报的注释描述中。
请在粗体字中查看警报“sc_pcd_encryption_server”,我希望将其包含在内。要使用当前警报值,我们使用$labels.value
,同样,如何提取另一个警报的值并在注释描述中打印它呢?
英文:
I have one alert "sc_pcd_g2version" listed in AlertManager. It returns value 25.
I am looking for a way to pull this value "25" and print it into the annotation description of another alert "sc_pcd_encryption_server" in Alert manager.
See in the alert sc_pcd_encryption_server you can see in Bold letter that i am looking for to be included. To use Current alert value we use $labels.value
likewise how to pull value of another alert and print it in annotation description?
name: sc_pcd_g2version
expr: sc_pcd_g2version > 0
for: 1m
labels:
job: node
severity: warning
annotations:
message: Possibility of pcd g2version failure {{ $labels.instance }}.
summary: pcd g2version Check failure
name: sc_pcd_encryption_server
expr: sc_pcd_encryption_server > 0
for: 1m
labels:
job: node
severity: warning
annotations:
message: Possibility of **sc_pcd_g2version "25"** in encryption server failure {{ $labels.instance }}.
summary: pcd encryption server Check failure
答案1
得分: 0
通常情况下,这是不可能的。
但在您的确切情况下,您可以利用一个小技巧:在您的第二个警报中,使用 sc_pcd_g2version > 0 and on(instance) sc_pcd_encryption_server > 0
而不是表达式。
这样,当使用 {{ $value }}
时,您将获得 sc_pcd_g2version
的值,而不是 sc_pcd_encryption_server
的值。
类似这样:
name: sc_pcd_encryption_server
expr: sc_pcd_g2version > 0 and on(instance) sc_pcd_encryption_server > 0
for: 1m
labels:
job: node
severity: warning
annotations:
message: 可能出现 {{ $value }} 的情况,加密服务器故障 {{ $labels.instance }}。
summary: pcd加密服务器检查故障
这是可能的,因为您没有使用 sc_pcd_encryption_server
的标签,除了 instance
,而我认为它们对两个指标都是相同的。
请确保 instance
足够匹配到指标。如果不够,请在 on
子句中添加所需的标签。
英文:
Generally, this is not possible.
But in your exact case you could utilize a little trick: use sc_pcd_g2version > 0 and on(instance) sc_pcd_encryption_server > 0
instead of expression in your second alert.
That way when using {{ $value }}
, you get value of sc_pcd_g2version
and not sc_pcd_encryption_server
.
Something like this:
name: sc_pcd_encryption_server
expr: sc_pcd_g2version > 0 and on(instance) sc_pcd_encryption_server > 0
for: 1m
labels:
job: node
severity: warning
annotations:
message: Possibility of {{ $value }} in encryption server failure {{ $labels.instance }}.
summary: pcd encryption server Check failure
This is possible because you don't use labels of sc_pcd_encryption_server
, other than instance
, and they will be same for both metrics I believe.
Be sure to check that instance
is enough to match to metrics. If not, add needed labels to on
clause.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论