如需将轨迹数据发送到 Google Cloud 项目,您可以使用 Telemetry (OTLP) API 或 Cloud Trace API。Telemetry API 实现了 OpenTelemetry OTLP API,并为开源 OpenTelemetry 生态系统提供了更大的兼容性和支持。Trace API 是一种专有 Google Cloud API,在支持 Telemetry API 之前就已存在。Telemetry API 的限制通常比 Trace API 的限制更宽松。
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 个 |
提取的跨度3 | 每天 300 万 - 每天 50 亿 |
1 读取操作包括 GetTrace
、ListTraces
、ListSpan
。调用 ListTraces
会消耗 25 个配额单元。对 GetTrace
的调用会消耗 ListSpan
1 个配额单元。
2 写入操作包括 PatchTraces
、BatchWrite
和 CreateSpan
。每次写入操作都会消耗 1 个配额单元。
3 每天的跟踪记录 Span 提取量配额取决于结算账号历史记录和您申请增加的配额。
限制
说明 | 值 |
---|---|
每次 GetTrace 调用的 Span 数上限 |
1000 |
每次 PatchTraces 调用的 Span 数上限 |
25000 |
每次 ListTraces 调用的跟踪记录数上限 |
ROOTSPAN 和 MINIMAL 视图中为 1,000COMPLETE 视图中为 100 |
每个跟踪记录的 Span 数上限 | 1000 |
轨迹大小上限 | 50 MB |
span 名称的长度上限 | 128 字节 |
每个 Span 的标签或属性数上限 | 32 |
标签或属性键的大小上限 | 128 字节 |
标签或属性值的大小上限 | 256 字节 |
每个 Span 的事件数上限 | 128 |
要提取的跨度的最大过去时间戳 | 14 天 |
要提取的跨度的最远未来时间戳 | 3 天 |
相对于 span 时间戳的事件最大过往时间戳 | 365 天 |
您可以在使用 Trace API v2 batchWrite
时为 span 添加注释,方法是创建一个 attributes
对象并将其附加到 Span
对象。同样,您可以在使用 Trace API v1 patchTraces
方法时为 span 添加注释,方法是创建一个 labels
对象并将其附加到 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 字节 |
trace.proto
。
跟踪范围限制
跟踪范围限制 | 值 |
---|---|
每个项目的轨迹范围数量上限 | 100 |
每个跟踪记录范围的项目数量上限 | 20 |
Trace 保留期限
类别 | 保留期限 |
---|---|
Cloud Trace 存储的 span 数据 | 30 天 |
分析报告 | 30 天 |
管理配额
本部分介绍了如何申请更改配额以及如何监控配额用量。
请求更改 Cloud Trace API 配额
您可以使用 Google Cloud 控制台请求增加或减少 Cloud Trace API 限额。如需了解详情,请参阅查看和管理配额。
如果出现错误 Edit is not allowed for this quota
,您可以与支持团队联系,请求更改配额。另请注意,必须在 Google Cloud 项目中启用结算功能才能点击这些复选框。
监控配额使用情况
请务必批量更新并监控配额用量,以免配额用尽,导致无法了解应用性能。例如,您可以创建一项提醒政策,以便在用量超过阈值时收到通知。如需详细了解如何监控 API 请求并了解其响应,请参阅监控 API 用量。
如需查看您的 Cloud Trace API 配额和每日 Span 提取量配额,请参阅查看和管理配额。
如需了解如何减少您使用的 API 配额单元数和每日 Span 提取量配额单元数,请参阅限制用量。
如需申请增加您的 API 配额单元或每日 Span 提取量配额,请参阅申请更多配额。
如需详细了解如何创建提醒政策来监控 Trace API 配额以及速率跟踪记录 Span 提取量,请参阅创建超出配额的提醒。