请参阅 Application Integration 支持的连接器

在 Application Integration 中查看执行日志

Application Integration 会为集成的每次运行生成执行日志消息。日志消息中包含的信息可帮助确定集成中每个步骤的状态,或对失败的集成、任务或事件进行问题排查。如需详细了解如何登录 Application Integration,请参阅日志简介

查看集成执行日志

如需查看执行日志页面,请选择以下选项之一:

控制台

  1. Application Integration 中,转到日志页面。

    转到 Application Integration 日志

  2. 在导航菜单中,点击日志。或者,在导航菜单中,点击集成,然后选择要查看其日志的集成。然后,点击 显示执行日志图标的图片查看此集成的执行日志。系统会显示执行日志页面。
  3. 区域列表中,选择区域以查看集成的区域特定执行日志。您还可以点击 refresh 刷新日志以重新加载当前日志列表。

    下图显示了 Application Integration 执行日志示例页面。

    显示“Application Integration Execution Logs”页面的图片 显示“Application Integration Execution Logs”页面的图片

    每个执行日志消息都会显示以下属性。

    • 集成名称:集成的名称。
    • 执行 ID:为集成的每次运行生成的唯一标识符。
    • 状态:集成执行的状态。
      • 正在进行:表示集成目前正在执行。
      • 成功:表示集成已成功执行。
      • 失败:表示集成执行失败。
      • 已取消:表示用户已取消集成执行。
      • 暂停:表示集成执行已暂停,正在等待事件或操作完成。
      • 暂停重试:表示集成执行失败,正在等待重试。
      • 已暂停:表示集成执行已暂停,需要人工干预才能继续集成。
    • 开始时间:集成开始执行时的时间戳。
    • 时长:执行集成所花费的时间。
    • 集成版本:所执行集成的版本。
    • 触发器 ID:触发器的 ID 值。
    • Cloud Logging:指明集成是否配置为记录到 Cloud Logging。如果已启用 Cloud Logging,此字段会提供用于在 Cloud Logging 中查看日志的链接。如果 Cloud Logging 未启用,则此字段会设置为已停用

  4. 过滤条件字段中,添加过滤条件。您可以根据集成名称、执行 ID、日期或时间范围、执行状态、变量类型以及变量名称或值等条件过滤日志。 如需自定义程度更高的搜索,请使用 API 标签页中所述的 projects.locations.integrations.executions.list 方法。

API

如果执行日志的大小超过 300 MB,Application Integration 将抛出 Response too large error 错误,并且不会在执行日志页面上加载日志。在这种情况下,您必须使用 projects.locations.integrations.executions.list 方法来获取日志。如需使用 API 方法查看日志,请按以下步骤操作:

  1. 如需获取要查看其执行日志的执行 ID,请使用 projects.locations.integrations.executions.list 方法构建 GET 请求,并将 snapshotMetadataWithoutParams 参数设置为 TRUE
    curl -v -X -G GET
        -H "Content-Type: application/json"
        -H "Authorization: Bearer $(gcloud auth print-access-token)"
        -d 'snapshotMetadataWithoutParams=true'
        'https://integrations.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/integrations/INTEGRATION_NAME/executions'
    

    响应中会返回执行 ID。复制要查看其日志的执行 ID。

  2. 如需获取执行 ID 的执行日志,请使用 projects.locations.integrations.executions.list 方法构建一个 POST 请求,并针对您在上一步中复制的执行 ID 进行过滤:
    curl -v -X -G GET 
        -H "Content-Type: application/json"
        -H "Authorization: Bearer $(gcloud auth print-access-token)"
        -d 'filter=execution_id="EXECUTION_ID"'
        'https://integrations.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/integrations/INTEGRATION_NAME/executions'
    

    在响应中,查看 ExecutionDetails 字段以查看日志详细信息。

    或者,在 Google Cloud 控制台中,您可以按执行 ID 过滤执行日志。

  3. 示例:过滤日志

    如果要过滤响应以列出一个集成预期的所有集成的日志,请使用以下格式:

    curl -v -X -G GET 
        -H "Content-Type: application/json"
        -H "Authorization: Bearer $(gcloud auth print-access-token)"
        -d 'filter= workflowName!="INTEGRATION_NAME"'
        'https://integrations.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/integrations/-/executions'
    

使用日志进行问题排查

以下部分介绍如何使用 Application Integration 执行日志排查失败问题。

排查集成失败问题

在对失败的集成运行进行问题排查时,执行日志消息非常有用。

例如,如果集成未能在特定时间范围内运行,请按照以下步骤访问和过滤日志以排查失败问题:

  1. 集成列表中搜索或选择要进行问题排查的集成,然后点击以打开集成编辑器。
  2. 点击集成编辑器工具栏中的日志以查看日志消息。
  3. 点击添加过滤条件以显示可用过滤条件的列表。
  4. 选择集成名称
  5. 输入集成名称,然后点击应用
  6. 点击添加过滤条件以显示可用过滤条件的列表。
  7. 选择执行状态以显示状态列表。
  8. 选中失败复选框,然后点击应用以显示失败的集成。
  9. 点击添加过滤条件以显示可用过滤条件的列表。
  10. 选择日期/时间范围,然后输入所需的时间范围以检查故障。例如,您可以输入以下内容:
    • 开始日期:选择 2020-12-16
    • 开始时间:选择 04:00:00 PM
    • 结束日期:选择 2019-12-16
    • 结束时间:选择 05:00:00 PM
    • 默认情况下,系统会使用 AND 条件合并多个过滤器。
    • 点击应用

如果在过滤时间范围内集成失败,执行日志页面将显示日志消息列表。每个日志消息都对应集成的失败运行作业。

查看堆栈轨迹异常

如需查看异常列表,请点击任一日志消息。点击每个异常消息中的链接可查看异常的堆栈轨迹。

显示日志异常错误的图片 显示日志异常错误的图片

跟踪连接器故障

您可以使用执行日志消息来排查和跟踪失败连接器任务的执行情况。失败连接器任务的日志数据使用 Cloud Logging 进行存储,并且可以在 Logs Explorer 中查看。

如需通过 Application Integration 访问失败的连接器任务的日志数据,请执行以下步骤:

  1. 进入所需集成的执行日志页面。
  2. 展开失败执行的日志消息,并将堆栈轨迹展开至包含失败连接器任务的行。
  3. 状态列中,点击失败

    显示失败连接器任务日志的图片 显示失败连接器任务日志的图片

  4. Application Integration 会自动为失败的连接器任务运行所需的查询,并打开“日志浏览器”页面以显示详细的执行日志数据。

如需手动检索失败连接器任务的日志数据,您可以在 Logs Explorer 的查询页面中运行以下查询。如需详细了解如何使用 Logs Explorer,请参阅 Logs Explorer 界面

查询格式

resource.type="connectors.googleapis.com/Connection"
jsonPayload.integration_connectors_trace_id="EXECUTION_ID_EXECUTION_TASK_ID_EXECUTION_ATTEMPT_NUMBER"

示例

resource.type="connectors.googleapis.com/Connection"
jsonPayload.integration_connectors_trace_id="9db51e4b-7d57-473d-931f-cc27b282dfad_1_2"

限制

  • 如果为集成停用了本地日志记录,则系统不会为该集成生成执行日志。

后续步骤

  • 如需了解 Application Integration 中的日志,请参阅日志简介