【问题标题】:Alert triggered node name is not specifying in the alert being received when more than one is triggered触发多个时收到的警报中未指定警报触发节点名称
【发布时间】:2018-10-26 03:28:57
【问题描述】:

我已经在 prometheus 中配置了节点内存使用警报。我的警报模板如下:

- alert: NodeMemory Usage(development)
      annotations:
        description: '{{$labels.instance}} Memory usage is critical (current value is: {{ $value }})'
        summary: High Memory  usage detected
      expr: |
        1 - sum by(node) ((node_memory_MemFree{job="node-exporter"} + node_memory_Cached{job="node-exporter"} + node_memory_Buffers{job="node-exporter"}) * on(namespace, pod) group_left(node) node_namespace_pod:kube_pod_info:) / sum by(node) (node_memory_MemTotal{job="node-exporter"}* on(namespace, pod) group_left(node) node_namespace_pod:kube_pod_info:)  > 0.70
      for: 1s
      labels:
        severity: warning

当单个节点超过阈值时(此处节点名称为nodes-3z4c),我收到警报中的节点名称,如下:

[FIRING:1]  (NodeMemory Usage(development) nodes-3z4c monitoring/k8s warning)

Memory usage is critical (current value is: 0.7148033249432908)

但问题是,当多个节点超过阈值时,多个节点的名称没有在警报通知中指定并得到如下通知:

[FIRING:4] NodeMemory Usage (monitoring/k8s)
Memory usage is critical (current value is: 0.7319404231240473)
Memory usage is critical (current value is: 0.7856648253333621)

谁能帮我解决这个问题?

【问题讨论】:

    标签: prometheus prometheus-alertmanager prometheus-operator


    【解决方案1】:

    这与您如何定义警报无关。如果您在 Alertmanager UI 中查看它,您会看到所有标签都在那里。

    它可以是 template you use(如果 Alertmanager 直接发送消息)或您正在使用的任何 webhook 处理程序,它只保留常用标签并删除其他所有内容。

    【讨论】:

    • 好的,谢谢您的回复。我明白了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多