Cloud Trace 是一款适用于 Google Cloud的分布式跟踪系统,可跟踪请求延迟时间,并帮助您排查服务和生成式 AI 应用中的性能瓶颈。通过从Google Cloud 服务和已插桩的应用收集延迟数据,Trace 可帮助您了解请求在微服务架构中是如何处理的,并确定相关日志。
轨迹可帮助您解答以下问题:
- 您的应用处理某特定请求需要多长时间?
- 为什么请求需要很长时间才能完成?
- 为什么有些请求花费的时间比其他请求长?
- 我的应用请求的整体延迟是多少?
- 应用延迟是否随着时间的推移而增加或减少?
- 如何缩短应用延迟时间?
- 您的应用的依赖项有哪些?
如需了解如何将跟踪记录和日志结合使用以进行根本原因分析,请参阅博文排查分布式应用问题:将跟踪记录和日志结合使用以进行根本原因分析。
如需了解如何分析应用,请参阅 Cloud Profiler。
环境支持
在以下环境中,Trace 在 Linux 上运行:
- Compute Engine
- Google Kubernetes Engine (GKE)
- Apigee(公开预览版)
- App Engine 柔性环境
- App Engine 标准环境
- Cloud Run
- Cloud Service Mesh
- Cloud SQL 查询数据分析
- 非Google Cloud 环境
组件
Trace 包含一个跟踪客户端,该客户端会收集跟踪记录并将其发送到您的 Google Cloud 项目。然后,您可以使用Google Cloud 控制台查看和分析跟踪客户端收集的数据。如需了解数据模型,请参阅轨迹和 span。
跟踪客户端
跟踪客户端会从您的应用中收集延迟时间和 span 数据,并将其导出到您的 Google Cloud 项目。您可以根据环境和要求,通过对应用代码进行插桩处理来自动或手动收集轨迹数据。
跟踪界面
如需查看和分析 span 数据,您可以使用Google Cloud 控制台中的 Trace 探索器和可观测性分析页面:
Trace 探索器:显示有关跟踪记录数据的汇总信息,并可让您详细检查各个跟踪记录。汇总的延迟时间数据会显示在热图上,您可以使用指针探索该热图。如需限制显示哪些数据,您可以添加过滤条件。 您还可以查看和探索各个 span 和 trace:
- 如需了解如何查看存储在多个项目中的跟踪记录数据,请参阅创建和管理跟踪记录范围。
- 如需了解如何过滤和查看跟踪记录数据,请参阅查找和探索跟踪记录。
Observability Analytics:提供 SQL 查询界面。您的查询可以联接轨迹数据和日志数据,并且您可以表格或图表的形式查看查询结果。如果您创建了关联的 BigQuery 数据集,则可以使用 BigQuery 分析您的轨迹数据。如需了解详情,请参阅查询和分析轨迹。
具有自动跟踪功能的配置
以下配置会自动捕获轨迹数据:
App Engine 标准环境
Cloud Run functions 和 Cloud Run
对于传入和传出的 HTTP 请求,延迟时间数据会自动发送到 Trace。
对应用进行插桩
对应用进行插桩,以收集有助于您了解其性能并排查故障的特定信息。 有几种开源插桩框架可收集日志、指标和跟踪记录数据,并将这些数据发送给任何供应商,包括 Google Cloud。对于您的智能体应用,某些框架可以收集您的提示和回答,或传递上下文,以便跟踪某些远程 Google Cloud MCP 服务器调用。
如需对应用进行插桩,我们建议您使用不受制于供应商的开源插桩框架(例如 OpenTelemetry),而不是使用供应商和产品特有的 API 或客户端库。如需了解这些框架,请参阅 插桩和可观测性以及选择插桩方法。
我们提供的插桩示例使用 OpenTelemetry: