通过状态事件查看作业的历史记录

本文档介绍了如何查看 Batch 作业和任务的状态事件。状态事件提供了一个历史记录,您可以使用该记录来分析作业,并且通常包含可用于问题排查的实用错误消息。

每个作业及其每个任务都有状态事件,这些事件由 Batch 在作业运行时自动创建。 每个状态事件都描述了状态变化以及达到该状态的原因。 如需了解作业和任务状态,请参阅作业生命周期。 您还可以选择配置作业以具有自定义状态事件,这些事件用于描述可运行对象的进度。如需详细了解自定义状态事件,请参阅配置自定义状态事件

准备工作

  1. 如果您之前未使用过 Batch,请查看开始使用 Batch 并完成项目和用户的前提条件,以启用 Batch。
  2. 如需获得查看作业和任务所需的权限,请让管理员向您授予项目的 Batch Job Viewer (roles/batch.jobsViewer) 或 Batch Job Editor (roles/batch.jobsEditor) IAM 角色。 如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

    您也可以通过自定义角色或其他预定义角色来获取所需的权限。

查看状态事件

作业级(作业的 statusEvents[] 字段)和任务级(每个任务的 statusEvents[] 字段)可能会显示不同的状态事件。

以下说明介绍了如何使用Google Cloud 控制台、gcloud CLI 和 Batch API 查看状态事件。如需使用客户端库语言,请按照查看作业详情查看任务详情中的步骤操作,然后查看相应的 statusEvents[] 字段。

查看作业的状态事件

控制台

如需使用Google Cloud 控制台查看当前项目中作业的状态事件,请按以下步骤操作:

  1. 在 Google Cloud 控制台中,前往作业列表页面。

    前往“作业列表”

  2. 作业名称列中,点击作业的名称。

    作业详情页面随即打开。

    默认情况下,系统会打开详情标签页。

  3. 点击活动标签页。

gcloud

如需使用 gcloud CLI 查看作业的状态事件,请使用 gcloud batch jobs describe 命令,然后查看 statusEvents[] 字段。

gcloud batch jobs describe JOB_NAME \
    --location=LOCATION

替换以下内容:

  • JOB_NAME:现有作业的名称。

  • LOCATION:作业所在的位置

API

如需使用 Batch API 查看作业的状态事件,请向 jobs.get 方法发出 GET 请求,然后查看 statusEvents[] 字段。

GET https://batch.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/jobs/JOB_NAME

替换以下内容:

  • PROJECT_ID:当前项目的项目 ID

  • LOCATION:作业所在的位置

  • JOB_NAME:现有作业的名称。

查看任务的状态事件

gcloud

如需使用 gcloud CLI 查看任务的状态事件,请使用 gcloud batch tasks describe 命令,然后查看 statusEvents[] 字段。

gcloud batch tasks describe TASK_INDEX \
  --location=LOCATION \
  --job=JOB_NAME \
  --task_group=TASK_GROUP_NAME

替换以下内容:

  • TASK_INDEX:您要查看其详细信息的任务的索引。在任务组中,第一个任务的任务索引从 0 开始,每增加一个任务,索引就递增 1。例如,包含 4 个任务的任务组的索引为 0123

  • JOB_NAME:现有作业的名称。

  • LOCATION:作业所在的位置

  • TASK_GROUP_NAME:包含您要查看其详细信息的任务的任务组的名称。该值必须设置为 group0

API

如需使用 Batch API 查看任务的状态事件,请向 tasks.get 方法发出 GET 请求,然后查看 statusEvents[] 字段。

GET https://batch.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/jobs/JOB_NAME/taskGroups/TASK_GROUP_NAME/tasks/TASK_INDEX

替换以下内容:

  • PROJECT_ID:当前项目的项目 ID

  • LOCATION:作业所在的位置

  • JOB_NAME:现有作业的名称。

  • TASK_GROUP_NAME:包含您要查看其详细信息的任务的任务组的名称。该值必须设置为 group0

  • TASK_INDEX:您要查看其详细信息的任务的索引。在任务组中,第一个任务的任务索引从 0 开始,每增加一个任务,索引就递增 1。例如,包含 4 个任务的任务组的索引为 0123

后续步骤