为 Dataplex 任务设置提醒和通知

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

如需设置提醒,您可以使用 Google Cloud 控制台中的日志浏览器或 Monitoring API。

术语

  • 突发事件自动关闭时长:如果在此时长内没有匹配的日志条目,您可以自动关闭突发事件。
  • 通知之间的时间间隔:您可以通过设置同一通知之间的时间间隔来降低重复通知的频率。在此期间,系统会跳过与过滤条件匹配的日志条目。您可以设置的最短时间为 5 分钟。

使用日志浏览器设置通知

  1. 在 Google Cloud 控制台中,转到日志浏览器页面。

    转到日志浏览器

  2. 点击显示查询切换开关。

    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"
      
  3. 点击创建提醒

  4. 提醒政策名称字段中,输入新提醒的名称。

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

  6. 点击下一步

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

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

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

  10. 点击保存

使用 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*].

后续步骤