管理作业执行

本页面介绍如何查看和删除作业执行。如需执行、取消或替换作业配置,请参阅执行作业

所需的角色

如需获得管理 Cloud Run 作业所需的权限,请让您的管理员为您授予 Cloud Run 作业的 Cloud Run Developer (roles/run.developer) IAM 角色。

如需查看与 Cloud Run 关联的 IAM 角色和权限的列表,请参阅 Cloud Run IAM 角色Cloud Run IAM 权限。如果您的 Cloud Run 作业与Google Cloud API(例如 Cloud 客户端库)进行交互,请参阅服务身份配置指南。如需详细了解如何授予角色,请参阅部署权限管理访问权限

查看项目中的作业执行

您可以使用Google Cloud 控制台或 Google Cloud CLI 查看项目中的作业执行列表:

控制台

如需查看作业的执行列表,请执行以下操作:

  1. 转到 Cloud Run 作业页面

  2. 在列表中,找到要管理其执行的作业

  3. 点击该作业以显示其执行列表。

  4. 在执行详情页面中,从列表中选择相关执行。(可选)您可以将过滤条件设置为所需的条件,例如您可以过滤出状态值为已完成的执行:

gcloud

如需列出项目中所有作业的所有作业执行,请运行以下命令:

gcloud run jobs executions list

如需仅列出特定作业的执行,请运行以下命令:

gcloud run jobs executions list --job JOB_NAME

JOB_NAME 替换为您要对其过滤的作业的名称。

如需了解优化返回列表的其他方法(包括使用过滤条件),请参阅作业执行列表

如需获取特定作业的最新执行的名称,请使用 --format 标志

gcloud run jobs describe JOB_NAME --format="value(status.latestCreatedExecution.name)"

JOB_NAME 替换为您要对其过滤的作业的名称。

客户端库

如需通过代码列出所有作业执行,请使用以下客户端库:

REST API

如需列出作业执行,请向 Cloud Run Admin API jobs 端点发送 GET HTTP 请求。

例如,使用 curl

curl -H "Content-Type: application/json" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -X GET \
  -d '' \
  https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/jobs/JOB-NAME/executions

您需要进行如下替换:

  • ACCESS_TOKEN 替换为具有查看作业执行的 IAM 权限的账号的有效访问令牌。例如,如果您已登录 gcloud,则可以使用 gcloud auth print-access-token 检索访问令牌。在 Cloud Run 容器实例中,您可以使用容器实例元数据服务器检索访问令牌。
  • JOB-NAME 替换为作业的名称。
  • REGION 替换为作业所在的 Google Cloud 区域。
  • PROJECT-ID 替换为 Google Cloud 项目 ID。

查看作业执行详细信息

您可以使用执行详情窗格查看作业的最近 1,000 次执行的作业执行详情。较早的执行详情会被移除,并且不再显示在执行详情窗格中。但是,较早的执行的日志和监控数据仍然在 Cloud LoggingCloud Monitoring 中提供,具体取决于这些产品的保留政策。

您可以使用 Google Cloud 控制台或 Google Cloud CLI 查看有关作业执行的更多详细信息。

控制台

如需查看特定作业执行的详细信息,请执行以下操作:

  1. 转到 Cloud Run 作业页面

  2. 点击作业以打开作业详情窗格。

  3. 点击要查看的作业执行。执行详情会显示在右侧面板中。

  4. 请注意任务容器网络安全性YAML 标签页,以及查看日志 链接。

    • 任务显示有关作业执行中任务的信息。
    • YAML 以 YAML 格式显示作业的配置。
    • 点击查看日志链接,查看与执行相关的日志。
    • 其他标签页会显示执行中使用的作业、容器、安全性、连接等的相关信息。

gcloud

如需查看有关作业执行的详细信息,请执行以下操作:

使用以下命令:

gcloud run jobs executions describe EXECUTION_NAME

EXECUTION_NAME 替换为执行的名称。

您可以使用 --format 标志来设置输出的格式并获取更多信息。例如,作为 YAML:

gcloud run jobs executions describe EXECUTION_NAME --format yaml

客户端库

如需通过代码查看作业执行详情,请使用以下客户端库:

REST API

如需查看作业执行详情,请向 Cloud Run Admin API jobs 端点发送 GET HTTP 请求。

例如,使用 curl

curl -H "Content-Type: application/json" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -X GET \
  -d '' \
  https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/jobs/JOB-NAME/executions/EXECUTION-NAME

您需要进行如下替换:

  • ACCESS_TOKEN 替换为具有查看作业执行详情的 IAM 权限的账号的有效访问令牌。例如,如果您已登录 gcloud,则可以使用 gcloud auth print-access-token 检索访问令牌。在 Cloud Run 容器实例中,您可以使用容器实例元数据服务器检索访问令牌。
  • JOB-NAME 替换为作业的名称。
  • EXECUTION-NAME 替换为作业执行的名称。
  • REGION 替换为作业所在的 Google Cloud 区域。
  • PROJECT-ID 替换为 Google Cloud 项目 ID。

删除作业执行

即使在执行期间,您也可以删除作业执行。如果您删除执行,则会阻止执行继续。

虽然已删除的执行不会出现在执行列表中,但其日志将继续在日志剩余的保留期限内在 Cloud Logging 中可用,并且监控数据将继续在 Cloud Monitoring 中可用。

控制台

如需删除作业执行,请执行以下操作:

  1. 转到 Cloud Run 作业页面

  2. 点击作业以打开作业详情窗格。

  3. 选择要删除的作业执行。

  4. 操作菜单下,点击省略号图标,然后点击删除

  5. 如果系统提示您确认删除,点击确认

gcloud

如需删除作业执行,请执行以下操作:

  1. 使用以下命令:

    gcloud run jobs executions delete EXECUTION_NAME

    EXECUTION_NAME 替换为执行的名称。

  2. 如果系统提示您确认,请回复 y。成功后,系统会显示一条成功消息。

客户端库

如需通过代码删除作业执行,请使用以下客户端库:

REST API

如需删除作业执行,请向 Cloud Run Admin API jobs 端点发送 DELETE HTTP 请求

例如,使用 curl

curl -H "Content-Type: application/json" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -X DELETE \
  -d '' \
  https://run.googleapis.com/v2/projects/PROJECT_ID/locations/REGION/jobs/JOB-NAME/executions/EXECUTION-NAME

您需要进行如下替换:

  • ACCESS_TOKEN 替换为具有删除作业执行的 IAM 权限的账号的有效访问令牌。例如,如果您已登录 gcloud,则可以使用 gcloud auth print-access-token 检索访问令牌。在 Cloud Run 容器实例中,您可以使用容器实例元数据服务器检索访问令牌。
  • JOB_NAME 替换为作业的名称。
  • EXECUTION-NAME 替换为作业执行的名称。
  • REGION 替换为作业所在的 Google Cloud 区域。
  • PROJECT-ID 替换为 Google Cloud 项目 ID。