使用标签为突发事件添加注解

本文档介绍了如何整理您的 突发事件 为其添加用户定义的标签这些标签是在 并列示在提醒政策和 事件。根据您的配置,标签也会 会列在某些通知中

标签简介

标签采用键值对形式,用于将信息附加到 时间序列、提醒政策、突发事件或通知。 例如,时序上的标签可能标识了 从中收集数据的虚拟机 (VM) 实例。 标签可以是用户定义的标签,也可以是预定义的标签。

用户指定的标签

用户定义的标签包含您指定的信息。 这些标签可具有静态值或动态值:

标签必须以小写字母开头。标签键和标签 值只能包含小写字母、数字、下划线和 短划线。

预定义的标签

预定义标签包含在资源描述符中;这些标签必须是 在写入时间序列数据时填充。这些标签显示的是 正在收集的指标或作为该指标所依据的资源的信息 写入。例如,时序上的标签可能会标识 虚拟机 (VM)、可用区、Google Cloud 项目和设备类型。 当 Monitoring 根据该时序创建突发事件时, 则突发事件会继承这些标签。

如何查看标签

您可以查看提醒政策或突发事件的标签 突发事件的详细信息页面上, 提醒政策的详情页面, 以及某些通知

  • 提醒政策:用户定义的静态标签在 用户标签部分。用户定义的动态标签和预定义标签 属性
  • 突发事件:政策标签中列出了用户定义的静态标签 部分,而动态用户定义的标签列在指标标签部分中 部分。受监控的资源标签中列出了预定义的标签 和指标标签部分。
  • 通知:系统会列出预定义标签和用户定义的标签 以下通知类型:

    • 电子邮件
    • Google Chat
    • PagerDuty
    • Pub/Sub
    • Webhook

示例:添加包含动态值的用户定义的标签

您可以使用 MQL 配置标签,以使其值 根据时序数据动态变化。例如,您希望 为突发事件添加 criticality 标签,标签的值会发生变化 具体取决于所监控的 CPU 利用率指标的值:

fetch gce_instance
| metric 'compute.googleapis.com/instance/cpu/utilization'
| group_by sliding(5m), [value_utilization_mean: mean(value.utilization)]
| map
    add[
      criticality:
        if(val() >= 90 '%', 'CRITICAL',
          if(val() >= 80 '%', 'WARNING',
            if(val() >= 70 '%', 'INFO', 'GOOD')))
    ]
| condition val() >= 70 '%'

下图说明了使用 MQL 查询会处理它们监控的时间序列数据:

提醒策略如何处理其受监控的时序。

政策处理程序处理 CPU 利用率数据,并输出 用于指示何时满足条件的时序。在上一个 则当 CPU 利用率至少为 70%。对于每个输入时序,政策处理程序可以 生成以下四个时序之一:

输出时序名称 满足条件 说明
“GOOD” 此时序的标签与输入时序的标签相同。但没有严重级别标签。
“CRITical” CPU 利用率至少为 90%。输出时序的标签与“GOOD”标签相同时序以及值为“CRITical”的严重性标签。
“警告” CPU 利用率至少为 80% 但低于 90%。输出时序的标签与“GOOD”标签相同时序以及值为“WARNING”的严重性标签。
“INFO” CPU 利用率至少为 70% 但低于 80%。输出时序的标签与“GOOD”标签相同时序以及值为“INFO”的严重性标签。

政策处理程序生成的时间序列数据是 incident manager,用于确定创建和关闭事件的时间。 为了确定何时结束突发事件,突发事件管理员会使用 durationevaluationMissingData、 和 autoClose 字段。

最佳做法

确保在创建标签时一次最多只有一个未结突发事件 的值是动态设置的,请执行以下操作:

  • MetricThreshold 对象中,替换 以下字段的默认值:

    • duration 字段:设置为非零值。
    • evaluationMissingData 字段:设置此字段,关闭突发事件 何时停止。使用 Cloud Monitoring API 时, 将此字段设置为 EVALUATION_MISSING_DATA_INACTIVE。使用 Google Cloud 控制台,请将该字段设置为 "缺失数据点被视为值 “不违反相关政策条件”。
  • AlertStrategy 对象中,设置 autoClose。 字段设置为 30 分钟的最小值。使用 Cloud Monitoring API 时, 将此字段设置为 30m

如需了解详情,请参阅部分指标数据

突发事件流程

假设在 提醒政策。以下顺序说明了事件是如何 打开和关闭的项:

  1. 由于测量到的 CPU 利用率低于 70%, 政策处理程序生成“GOOD”时序和 未未结任何突发事件

  2. 接下来,假设 CPU 利用率升到 93%。政策处理程序 停止生成“GOOD”时间序列数据并开始生成 “CRITical”时序。

    突发事件管理员会看到一个新的“CRITical”符合 然后创建突发事件 通知包含值为 CRITICAL 的严重性标签。

  3. 假设 CPU 利用率降为 75%。政策处理程序 停止生成“CRITical”并开始生成“INFO” 时序。

    事件管理员会看到一个新的“INFO”符合 然后创建突发事件通过 通知包含值为 INFO 的严重性标签。

    突发事件管理人员发现,没有收到“CRITical”部门的数据 并且该时序有未处理的事件。由于 政策配置为在数据不再到达时关闭突发事件, 突发事件经理将关闭 与“CRITical”相关的事件时序。因此, 只有严重性标签值为 INFO 的突发事件才会保持未结状态。

  4. 最后,假设 CPU 利用率降到 45%。该值小于 因此政策处理程序会停止生成 “INFO”然后开始生成“GOOD”值时序。

    事件管理员发现“INFO”没有数据到达 并且该时序有未处理的事件。由于 政策使用的是建议的设置,则事件已关闭。

如果您没有为 evaluationMissingData 字段使用建议的值, 这样一来,当数据不再到达时,未结突发事件也不会立即关闭。 结果是您可能会看到针对同一输入的多个未结突发事件 时序。如需了解详情,请参阅部分指标数据

后续步骤