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

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

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

准备工作

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

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

查看状态事件

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

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

查看作业的状态事件

控制台

Google Cloud

如需使用 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。例如,包含四个任务的任务组的索引为 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。例如,包含四个任务的任务组的索引为 0123

后续步骤