使用平台日志

本页面介绍了如何查看由 SaaS 运行时生成的平台日志。 Google Cloud 中的平台日志是服务专属日志,可用于调试和排查问题,并更好地了解您使用的 Google Cloud服务。

如需详细了解受支持的 SaaS 运行时平台日志,请参阅Google Cloud 平台日志。如需详细了解如何解读平台日志表中的数据,请参阅日志条目结构

准备工作

  1. 在 Google Cloud 控制台的项目选择器页面上,选择或创建一个 Google Cloud 项目。
  2. 确保您的 Google Cloud 项目已启用结算功能。
  3. 启用 SaaS 运行时 API。
  4. 如需获得查看日志和创建提醒所需的权限,请让管理员向您授予项目的以下 Identity and Access Management (IAM) 角色:
    • Logs Viewer (roles/logging.viewer)
    • Monitoring Editor (roles/monitoring.editor)

创建基于日志的提醒

如需创建基于日志的提醒,请在 Logs Explorer 中构建一个查询,该查询会返回您希望收到提醒的日志条目,然后配置提醒政策。

  1. 在 Google Cloud 控制台中,前往 Logs Explorer 页面。

    转到日志浏览器

  2. 在查询编辑器中,输入查询内容以过滤所选日志条目。 如需查看查询示例,请参阅以下部分。

  3. 点击创建提醒

  4. 输入提醒政策的名称和说明。

  5. 配置提醒详细信息,包括通知渠道。

  6. 点击保存提醒

如需查看详细说明,请参阅创建基于日志的提醒

平台日志的查询示例

本部分提供了基于 SaaS 运行时平台日志的常见提醒场景的查询示例。

SaaS 运营提醒

如需在单元配置操作失败时创建提醒,请使用以下查询:

protoPayload.methodName="google.cloud.saasplatform.saasservicemgmt.v1beta1.SaasDeployments.CreateUnitOperation"
protoPayload.response.state="UNIT_OPERATION_STATE_FAILED"

如需在单元配置操作达到最终状态(成功、失败或已取消)时创建提醒,请使用以下查询:

jsonPayload.@type="type.googleapis.com/google.cloud.saasservicemgmt.logging.v1.UnitOperationLog"
AND (jsonPayload.unit_operation_state="UNIT_OPERATION_STATE_SUCCEEDED" OR jsonPayload.unit_operation_state="UNIT_OPERATION_STATE_FAILED" OR jsonPayload.unit_operation_state="UNIT_OPERATION_STATE_CANCELLED")
AND jsonPayload.unit_operation_type="PROVISION"

发布提醒

如果区域性发布因用户操作以外的原因而进入 PAUSEDFAILED 状态,则使用以下查询创建提醒:

jsonPayload.@type="type.googleapis.com/google.cloud.saasservicemgmt.logging.v1.RolloutLog"
AND (jsonPayload.current_state="PAUSED" OR jsonPayload.current_state="FAILED")
AND jsonPayload.reason!="USER_PAUSE"
AND jsonPayload.root_rollout_id != resource.labels.rollout_id

如需在全局发布进入 PAUSEDFAILED 状态时创建提醒,请使用以下查询:

jsonPayload.@type="type.googleapis.com/google.cloud.saasservicemgmt.logging.v1.RolloutLog"
AND (jsonPayload.current_state="PAUSED" OR jsonPayload.current_state="FAILED")
AND jsonPayload.root_rollout_id == resource.labels.rollout_id

如需在发布进入 PAUSED 状态(因为 SaaS 运行时已将发布识别为不健康)或 FAILED 状态时创建日志提醒,请使用以下查询:

logName:"rollout_events" 
(jsonPayload.currentState="PAUSED" jsonPayload.reason="SYSTEM_PAUSE")
OR 
jsonPayload.currentState="FAILED

如需在发布进入 PAUSED 状态(因为 SaaS 运行时已将发布识别为不健康)或 FAILED 状态时为发布状态指标创建日志提醒,请使用以下查询:

saasservicemgmt_googleapis_com:rollout_state
{state_name="PAUSED", reason="SYSTEM_PAUSE"}
OR
saasservicemgmt_googleapis_com:rollout_state{state_name="FAILED"}

后续步骤