配额和限制

Cloud Trace 会强制执行速率配额、span 注入限制和数据保留期限,这些限制和期限取决于您使用哪个 API 将跟踪记录数据发送到 Google Cloud 项目:Telemetry (OTLP) API 或 Cloud Trace API。Telemetry API 实现了 OpenTelemetry OTLP 规范,并与开源 OpenTelemetry 生态系统具有更高的兼容性。

Trace API 配额和限制

本部分提供有关仅适用于 Trace API 的配额和限制的信息。本部分列出的配额和限制不适用于 Telemetry API。

Cloud Trace 会强制执行两种不同类型的配额:Cloud Trace API 请求的速率配额和发送到 Trace 的 span 的提取配额。

配额

下表总结了可用于读取和写入操作的配额单位,以及 Trace API 每日提取 span 的配额。例如,对于 GetTrace、ListTraces 和 ListSpan 这三个 API 命令,每 60 秒的总调用次数为 300 次。以下两个不同示例说明了您可以如何使用全部可用配额单元。

  • 每 60 秒进行 12 次 ListTraces API 调用。
  • 每 60 秒进行 10 次 ListTraces API 调用和 50 次 GetTrace API 调用。
类别 总配额单元数
读取操作1 每 60 秒 300 个
写入操作2 每 60 秒 4800 个
已提取的 span3,4 每天 300 万 - 每天 50 亿

1 读取操作包括 GetTrace、ListTraces、ListSpan。对 ListTraces 的调用会消耗 25 个配额单位。对 GetTrace 的调用会消耗 ListSpan 1 个配额单位。在 Google Cloud 控制台中使用 Trace 探索器查询和查看轨迹不会消耗此配额。
2 写入操作包括 PatchTraces、BatchWrite 和 CreateSpan。每次写入操作消耗 1 个配额单位。
3 此配额仅适用于使用 Cloud Trace API 提取的 span。 通过 Telemetry API 进行的提取不受限制。 4 Cloud Trace API 的每日轨迹 span 提取配额取决于您的结算账号历史记录以及您提出的配额增加请求。

限制

下表列出了 Cloud Trace API 的限制。

说明 值
每次 GetTrace 调用的 Span 数上限 10,000
每次 PatchTraces 调用的 Span 数上限 25000
每次 ListTraces 调用的跟踪记录数上限 ROOTSPAN 和 MINIMAL 视图中为 1,000
COMPLETE 视图中为 100
span 名称的最大长度 1024 个字节
每个 span 的标签或属性数量上限 1024
标签或属性的键的大小上限 512 个字节
标签或属性的值的大小上限 65,532 个字节
每个 span 的事件数量上限 256
可提取的 span 的最长过去时间戳 14 天
要提取的 span 的未来时间戳上限 3 天
相对于时间段时间戳的事件最晚时间戳 365 天

超出限制可能不会导致 API 调用失败并显示错误。 例如,当附加到 span 的属性数量超过 1024 时,系统不会报告错误。在这种情况下,Cloud Trace API 会使用不确定性算法来选择要注入的 1024 个属性。其余属性会被舍弃。

Cloud Trace API 提供了有关 GetTrace、PatchTraces 和 ListTraces 端点的详细信息。

如何注释 span 取决于 Cloud Trace API 端点。如果您使用 batchWrite 端点,则将属性添加到 Span 对象。如果您使用 patchTraces 端点,请向 TraceSpan 对象添加标签。

Telemetry API 限制和配额

本部分列出了仅在使用 Telemetry API 来注入跟踪记录数据时适用的限制。Telemetry API 实现了 OpenTelemetry OTLP API,旨在与使用某个 OpenTelemetry SDK 进行插桩的应用搭配使用。本部分列出的限制不适用于 Cloud Trace API。

说明 值 注意
属性键的大小上限 512 字节 限额。
属性值的大小上限 64 KiB 限额。
Span* 对象名称的大小上限 1024 字节 限额。
附加到 Span* 对象的属性数量上限 1024 限额。
每个 ResourceSpans* 对象的资源属性数量上限 1024 限额。
每个 ResourceSpan* 对象的属性数量上限
包括附加到以下类型的子对象的属性:
Resource、Span、ScopeSpans、Event 和 Link.
8192 限额。
每个 Span* 对象的 Event* 对象数量上限 256 限额。
每个 Span* 对象的 Link* 对象数量上限 128 限额。
Event* 对象名称的大小上限 1024 字节 限额。
每个 Event* 对象的属性数上限 1024 限额。
每个 Link* 对象的属性数上限 1024 限额。
架构网址的大小上限 8192 字节 限额。
每分钟的轨迹注入字节数上限

以下区域为 2.4 GB:asia-east1, asia-northeast1, asia-southeast1, asia-south1, europe-west1, europe-west2, europe-west3, europe-west4, us-central1, us-east4, us-west1。

所有其他区域为 300 MB。

配额。
*  如需了解此结构的定义,请参阅 trace.proto 文件。

跟踪记录范围的限制

跟踪记录范围的限制 值
每个项目的跟踪记录范围数量上限 100
每个轨迹范围的视图数量上限 20

Trace 保留期限

类别 保留期限
存储在 _Trace 存储桶中的 span 30 天

管理配额

本部分介绍了如何申请更改配额以及如何监控配额用量。

请求更改 Cloud Trace API 配额

如需确定您是否可以使用 Google Cloud 控制台申请提高或降低 Cloud Trace API 配额限制,请前往配额和系统限制页面,然后搜索您感兴趣的配额。

  • 如果列出了配额,您可以使用该页面请求更改限额。如需了解这些步骤,请参阅查看和管理配额。
  • 如果未列出相应配额,或者您请求更新配额时收到错误 Edit is not allowed for this quota,请与支持团队联系,并请求更改配额。必须为Google Cloud 项目启用结算功能,才能在 Google Cloud 控制台中修改配额。

监控配额用量

为确保您不会用尽配额并失去对应用性能的可观测性,请验证您是否批量更新并监控配额用量。例如,您可以创建一项提醒政策,以便在用量超出阈值时收到通知。如需详细了解如何监控 API 请求并了解其响应,请参阅监控 API 用量。

  • 如需查看 Cloud Trace API 和每日 span 注入配额,请参阅查看和管理配额。

  • 如需了解如何减少 API 配额单位和每日跨度注入配额单位,请参阅限制用量。

  • 如需申请增加 API 配额单位或每日 span 注入配额,请参阅申请更多配额。

  • 如需详细了解如何创建提醒政策来监控 Trace API 配额以及速率跟踪记录 Span 提取量,请参阅创建超出配额的提醒。

高查询量

如需对轨迹数据进行大批量查询,请创建关联的 BigQuery 数据集,然后使用 BigQuery API。

请勿使用 Cloud Trace API 进行大批量查询,因为对 Trace API 的调用会受到速率限制。