跳转到内容
Telemetry
API 可靠性 SQL查询示例

按路由计算 API 请求吞吐量

通过稳定的 API 路由计算观察到的每分钟请求数,并在吞吐量旁边保留错误量。

入门api_throughput_events已审核 2026-07-28测试用 阿帕奇 DataFusion 45.2.0

审阅者 Telemetry产品团队 . SQL 兼容性、事件契约、合成输出和操作注意事项. 审查标准和所有权

问题已回答

哪些 API 路由每分钟处理的请求最多?

当吞吐量保留路线形状和实际观察到的时间时,它是最有用的。此查询将请求量除以每个路由的观察范围,而不是假设每个路由在整个仪表板窗口中都处于活动状态。

活动合约

查询期望的字段

字段类型为什么存在
timestamp_utcTimestamp请求完成时间(UTC)。
route_templateUtf8有界路由模板,而不是原始 URL。
status_codeInt64HTTP 响应状态。
environmentUtf8部署环境。
DataFusion SQL

复制查询

sql
SELECT
  route_template,
  COUNT(*) AS requests,
  SUM(CASE WHEN status_code >= 500 THEN 1 ELSE 0 END) AS errors,
  60.0 * COUNT(*) / NULLIF(
    date_part('epoch', MAX(timestamp_utc) - MIN(timestamp_utc)),
    0
  ) AS requests_per_minute
FROM api_throughput_events
WHERE timestamp_utc >= now() - INTERVAL '24 hours'
  AND environment = 'production'
GROUP BY route_template
ORDER BY requests_per_minute DESC, route_template;

此只读查询是针对空类型表计划和执行的 阿帕奇 DataFusion 45.2.0。确定性样本输出是综合的并单独审查;根据您自己的数据验证字段类型、阈值和业务定义。 阅读测试方法。

查询结果

按路由观察的请求吞吐量

搜索具有最高的观察到的请求率,并且还有 5xx 响应需要调查。

route_templaterequestserrorsrequests_per_minute
/api/search610.2
/api/checkout400.13

综合示例输出。在将其用于操作决策之前,针对您自己的事件架构和阈值运行查询。

Observed request throughput by route:来自 Calculate API Request Throughput by Route 示例结果的合成 requests_per_minute 值的静态图表
确定性示例输出的可索引 SVG。下载它以获取带有归属的文章、操作手册或设计评论。

重现示例

下载公共装置

JSON 包包含类型化事件契约, reproducible 输入行、确切的 SQL、预期输出、审阅注释和引擎版本。 CSV 包含显示的结果。

SQL 是如何工作的

  1. 1对受控路由模板进行分组可避免每个资源标识符或查询字符串有一个系列。
  2. 2分母使用每条路由的观察到的跨度,这对于稀疏路由来说比除以整个回溯窗口更安全。
  3. 3错误计数保留在结果中,因此可以将流量激增与相同粒度的可靠性进行比较。

需要决定的边缘情况

  • 对于生产图表,汇总到完整的固定时间段中,以便相邻期间可以直接比较。
  • 具有一个请求的路由没有观察到的跨度; NULLIF 返回 null 而不是发明比率。
  • 如果内部健康检查和合成流量会扭曲客户需求,则将其分开。

推荐仪表板

  • 趋势:完整五分钟桶中每分钟的请求数
  • 酒吧:requests_per_minute by route_template
  • 叠加:错误率和部署标记

警报指导

对与审查基线的持续偏差发出警报,而不是对单个大流量路线发出警报。

读取警报设置

让查询示例发挥作用

相关埋点和指南

继续分析

在真实事件中运行它

创建表,调整字段并保存结果

免费开始,发送结构化事件,并将查询结果用作图表、共享仪表板小部件或警报输入。

获取 API 密钥