管理作业执行

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

所需的角色

如需获得管理 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。

查看作业执行详细信息

您可以使用执行详情窗格查看作业的最近 10,000 次执行的作业执行详情,以及过去 7 天内发生的任何执行。较早的执行详情会被移除,并且不再显示在执行详情窗格中。但是,较早的执行的日志和监控数据仍然在 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。