使用日志分析作业

使用集合让一切井井有条 根据您的偏好保存内容并对其进行分类。

本页面介绍如何在 Cloud Logging 中为作业启用和查看日志

您可以使用日志来获取可用于分析作业的信息。例如,日志可帮助您调试失败的作业。 为作业启用 Cloud Logging 后,Cloud Logging 会生成以下类型的日志供您查看:

请注意,Cloud Logging 仅在作业开始运行后生成日志。如需验证作业是否已开始运行,请描述作业并确认作业的状态RUNNING 或之后的状态。如果您需要分析没有生成日志的作业(例如,由于作业在 RUNNING 状态之前失败),请使用 gcloud CLI 或 Batch API 描述该作业并检查 statusEvents 字段

准备工作

  • 如果您之前未使用过 Batch,请查看 Batch 使用入门,完成项目和用户需满足的前提条件,以启用 Batch。
  • 如需获取使用日志分析作业所需的权限,请让管理员授予您以下 IAM 角色:

    • 如需创建启用了日志的作业,请对项目进行批量作业编辑器 (roles/batch.jobsEditor)
    • 如需查看日志,请使用项目的日志查看器 (roles/logging.viewer)

    如需详细了解如何授予角色,请参阅管理访问权限

为作业启用日志

如需为作业生成日志,请在创建作业时启用 Cloud Logging:

  • 如果您使用 Google Cloud 控制台创建作业,则 Cloud Logging 始终处于启用状态。
  • 如果您使用 gcloud CLI 或 Batch API 创建作业,则 Cloud Logging 默认处于停用状态。如需启用 Cloud Logging,请在创建作业时为 logsPolicy 字段添加以下配置:

    {
        ...
        "logsPolicy": {
            "destination": "CLOUD_LOGGING"
        }
        ...
    }
    

查看作业日志

您可以使用 Google Cloud Console、gcloud CLI 或 Logging API 在 Cloud Logging 中查看作业日志。

控制台

如需使用 Google Cloud Console 查看作业日志,请执行以下操作:

  1. 描述作业
  2. 作业详情页面的日志部分,点击 Cloud Logging。系统会打开日志浏览器页面。

    默认情况下,日志浏览器会显示此作业的所有任务日志。

    建议:如需过滤显示的日志,请构建查询;例如,在 query-editor 字段中输入批量日志查询

gcloud

如需使用 gcloud CLI 查看日志,请使用 gcloud logging read 命令

gcloud logging read "QUERY"

其中 QUERY批量日志查询

API

如需使用 Logging API 查看日志,请使用 entries.list 方法

POST https://logging.googleapis.com/v2/entries:list
{
    "resourceNames": [
        "projects/PROJECT_ID"
    ],
    "filter": "QUERY"
    "orderBy": "timestamp desc"
}

请替换以下内容:

编写查询以过滤批量日志

您可以通过编写包含以下一个或多个过滤条件参数的查询以及零个或多个布尔运算符(ANDORNOT来过滤批量日志。

  • 如需过滤来自特定作业的日志,请指定该作业的唯一 ID (UID):

    labels.job_uid=JOB_UID
    

    其中,JOB_UID 是作业的 UID。如需获取作业的 UID,请描述作业

  • 如需过滤特定类型的批处理日志,请指定日志类型:

    logName=projects/PROJECT_ID/logs/BATCH_LOG_TYPE
    

    请替换以下内容:

    • PROJECT_ID:您要查看其日志的项目的项目 ID
    • BATCH_LOG_TYPE:您要查看的批处理日志的类型,其中 batch_task_logs 表示任务日志,batch_agent_logs 表示代理日志。

后续步骤