Apigee Integration 日志

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

查看集成执行日志

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

控制台

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

    转到 Application Integration 日志

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

    下图显示了一个示例 Apigee Integration 执行日志页面。

    显示 Apigee Integration“执行日志”页面的图片 显示 Apigee Integration“执行日志”页面的图片

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

    • 集成名称:集成的名称。
    • 执行 ID:为集成的每次运行生成的唯一标识符。
    • 状态:集成执行的状态。
      • 正在进行:表示集成目前正在执行。
      • 成功:表示集成已成功执行。
      • 失败:表示集成执行失败。
      • 已取消:表示用户已取消集成执行。
      • 暂停:表示集成执行已暂停,正在等待事件或操作完成。
      • 暂停重试:表示集成执行失败,正在等待重试。
      • 已暂停:表示集成执行已暂停,需要人工干预才能继续集成。
    • 开始时间:集成开始执行时的时间戳。
    • 时长:执行集成所花费的时间。
    • 集成版本:所执行集成的版本。
    • 触发器 ID:触发器的 ID 值。

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

API

如果执行日志的大小大于 300 MB,Apigee 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'
    

使用日志进行问题排查

以下部分介绍了如何使用 Apigee 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 中查看。

执行以下步骤以从 Apigee Integration 访问失败连接器任务的日志数据:

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

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

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

如需手动检索失败连接器任务的日志数据,您可以在 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"

限制

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

后续步骤

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