问题排查

本页面包含 Trace 的问题排查信息。

Trace 界面中没有任何数据

如果您在预期跟踪记录数据存在时无法查看 Google Cloud 项目中的跟踪记录,请尝试按以下步骤操作:

  1. 在 Google Cloud Console 中,点击工具栏中的导航菜单,然后选择 API 和服务

  2. 在列出所有 API 的信息中心内,确保已列出 Cloud Trace API。如果表中列出了 Cloud Trace API,则表示已启用该 API。请继续执行下一个编号步骤。

    如果未列出 Cloud Trace API,则表示未启用该 API。如需启用 Cloud Trace API,请点击启用 API 和服务,然后搜索 Trace API。如果您看到 Cloud Trace API 条目,请选择该条目。否则,请选择 Stackdriver Trace API。选择该 API 后,点击启用

  3. 在列出所有 API 的信息中心中,如果 Cloud Trace API 对应的行未列出请求列、错误列或其他列的任何数值,则表示没有跟踪记录请求到达您的 Google Cloud 项目。检查您的应用和代理,确保它们已配置为将跟踪记录发送到正确的项目。

  4. 如需查看有关 API 使用情况的详细信息,请点击 Cloud Trace API,然后点击 指标

    如需缩小错误来源的范围,请使用凭据方法过滤条件,并查看您的选择对错误(按 API 方法)图表的影响:

    • 如果所有写入操作都失败,请确保您的服务帐号有权访问 Cloud Trace Agent 角色。此角色包含 cloudtrace.traces.patch 权限。如需了解详情,请参阅 Cloud Trace IAM 角色

    • 如果读取失败,请确保您有权访问此 Google Cloud 项目的 Cloud Trace User 角色。如需查看此角色的完整权限列表,请参阅 Cloud Trace IAM 角色

上传 Go OpenCensus 导出器的 span 失败

以下是导出器工具使用的捆绑器库无法管理应用生成和上传的 span 时出现的错误示例:

OpenCensus Stackdriver exporter: failed to upload span: buffer full
OpenCensus Stackdriver exporter: failed to upload 183 spans: buffer full

如需解决此问题,请尝试以下一项或多项操作:

  • 在传递给 traceExporter 构造函数的 Options 结构体中,增大 TraceSpansBufferMaxBytes 字段的值。此可选字段指定用于缓冲 span 的最大字节数。默认值为 8MB。

  • 在传递给 traceExporter 构造函数的 Options 对象中,减小以下字段的值:

    • BundleDelayThreshold:此可选字段指定导出器在上传跟踪 span 之前可以等待的最长时间。此字段的默认值为 2 秒。

    • BundleCountThreshold:此可选字段指定可以缓冲的 span 数。此字段的默认值为 50。

  • 导出少一些 span。如需减少导出的 span 数,请配置全局采样器或将采样器传递到每个 StartSpan。如需了解示例代码和这些配置的更多信息,请参阅 OpenCensus 采样