为 Dataplex 任务设置提醒和通知

本页面介绍了如何针对 Dataplex 任务的失败作业执行设置提醒。

您可以使用下列任一方式设置提醒:

  • Google Cloud 控制台中的日志浏览器
  • Monitoring API

术语

  • 突发事件自动关闭时长:突发事件结束的时长 如果没有匹配的日志条目,则会发生此错误。
  • 通知的间隔时间:两次收到通知的最短时间。 (针对与过滤条件匹配的日志)。任何在最短时间内匹配的日志都会 已跳过。您可以设置的最短时间为 5 分钟。

使用 Logs Explorer 设置通知

  1. 打开 Google Cloud 控制台。 。
  2. 点击导航菜单 > Logging > Logs Explorer
  3. 点击显示查询切换开关。

    1. 如需为项目中任何 Dataplex 任务的失败作业设置设置提醒,请输入以下查询:

      severity=ERROR
      resource.type = "dataplex.googleapis.com/Task"
      logName = "projects/PROJECT_NAME/logs/dataplex.googleapis.com%2Fprocess"
      jsonPayload.state = "FAILED"
      
    2. 如需针对项目中特定 Dataplex 任务的失败作业执行设置提醒,请执行以下操作: 输入以下查询:

      severity=ERROR
      resource.type = "dataplex.googleapis.com/Task"
      resource.labels.task_id = TASK_ID
      logName = "projects/PROJECT_NAME/logs/dataplex.googleapis.com%2Fprocess"
      jsonPayload.state = "FAILED"
      
  4. 点击创建提醒

  5. Alert Policy Name 字段中,输入新提醒的名称。

  6. Documentation(文档)字段中,输入要包含的说明 通知。如需详细了解您可以添加到其中的内容, 提醒政策的文档字段,请参阅 在文档模板中使用 Markdown 和变量

  7. 点击下一步

  8. 选择要包含在提醒中的日志,然后点击下一步

  9. 设置通知间隔突发事件自动关闭时长。 然后点击下一步

  10. 可选:选择通知渠道。如需详细了解如何配置通知 使用 Google Cloud 控制台,请参阅管理通知渠道

  11. 点击保存

使用 Monitoring API 设置通知

  1. 启用 Monitoring API 并授予用户访问该 API 的权限。如需更多信息 请参阅启用 Monitoring API
  2. 设置创建提醒政策所需的角色或权限。如需更多信息 请参阅创建提醒政策所需的授权
  3. 使用 Google Cloud 控制台创建通知渠道 或 Google Cloud CLI
  4. 使用以下命令获取 channel_id

    gcloud beta monitoring channels list
    
  5. 创建一个 policy.json 文件,其中包含以下内容: log-based-alerting-policy:

    1. 要为任何作业的失败执行设置提醒,请执行以下操作: 项目中的 Dataplex 任务,请使用以下代码:

      {
      "displayName": "Alert Using Monitoring API",
      "documentation": {
        "content": "Log-based alert in project PROJECT.",
        "mimeType": "text/markdown"
      },
      
      "conditions": [
        {
          "displayName": "Log match condition: Failed Job Execution",
          "conditionMatchedLog": {
            "filter": "severity=\"ERROR\" resource.type = \"dataplex.googleapis.com/Task\" logName = \"projects/PROJECT_ID/logs/dataplex.googleapis.com%2Fprocess\" jsonPayload.state = \"FAILED\"",
          },
        }
      ],
      "combiner": "OR",
      
      "alertStrategy": {
        "notificationRateLimit": {
          "period": "300s"
        },
        "autoClose": "604800s",
      },
      
      "notificationChannels": [
        "projects/PROJECT_ID/notificationChannels/CHANNEL_ID"
      ]
      }
      
    2. 如需针对项目中特定 Dataplex 任务的失败作业执行设置提醒,请执行以下操作: 请使用以下代码:

      {
      "displayName": "Alert Using Monitoring API",
      "documentation": {
        "content": "Log-based alert in project PROJECT.",
        "mimeType": "text/markdown"
      },
      
      "conditions": [
        {
          "displayName": "Log match condition: Failed Job Execution",
          "conditionMatchedLog": {
            "filter": "severity=\"ERROR\" resource.type = \"dataplex.googleapis.com/Task\" logName = \"projects/PROJECT_ID/logs/dataplex.googleapis.com%2Fprocess\" jsonPayload.state = \"FAILED\" resource.labels.task_id = \"TASK_ID\"",
          },
        }
      ],
      "combiner": "OR",
      
      "alertStrategy": {
        "notificationRateLimit": {
          "period": "300s"
        },
        "autoClose": "604800s",
      },
      
      "notificationChannels": [
        "projects/PROJECT_ID/notificationChannels/CHANNEL_ID"
      ]
      }
      
  6. 使用以下命令将 policy.json 文件传递给 gcloud CLI:

    gcloud alpha monitoring policies create --policy-from-file="policy.json"
    

    如果成功,该命令将返回新政策的资源名称。例如:

    Created alert policy [projects/PROJECT_ID/alertPolicies/*POLICY_ID*].

后续步骤