取舍对照
| 维度 | Histogram | Summary |
|---|---|---|
| 分位计算位置 | 查询时(PromQL 计算) | 采集时(客户端计算) |
| 跨实例聚合 | 支持(按 le 求和后再算) | 不支持(分位不能平均) |
| 精度 | 受分桶边界影响 | 滑动窗口内的精确分位 |
| 序列成本 | 由桶数量决定 | 由分位数量决定 |
Histogram 分位查询与平均值
Histogram 分位查询与平均值
# P90 / P99:先按 le 聚合桶,再计算分位
histogram_quantile(0.90, sum by (le) (rate(http_request_duration_seconds_bucket[5m])))
histogram_quantile(0.99, sum by (le) (rate(http_request_duration_seconds_bucket[5m])))
# 平均耗时 = _sum / _count
sum(rate(http_request_duration_seconds_sum[5m])) / sum(rate(http_request_duration_seconds_count[5m]))分桶边界要覆盖业务关注点(如 100ms、300ms、1s):过粗会让分位估计的误差集中在阈值附近。