Prometheus 显示按标签数量过滤的顶级指标

tka*_*kap 5 graphite prometheus

根据这个:https: //prometheus.io/docs/practices/instrumentation/#do-not-overuse-labels 我应该坚持每个指标不超过 10 个标签。

我正在尝试编写查询,该查询显示按其拥有的标签数量过滤的前 10 个指标。是否可以?

val*_*ala 4

Prometheus 提供/api/v1/status/tsdb端点,该端点公开统计数据中标签数量最多的指标名称seriesCountByMetricName它还公开了其他有用的统计数据,这可能有助于确定高基数的来源:

  • labelValueCountByLabelName统计数据中唯一值数量最多的标签
  • label=valueseriesCountByLabelPair统计数据中具有最多数量的唯一时间序列的配对

PS 其他类似 Prometheus 的系统可能会为/api/v1/status/tsdb端点提供额外的功能,这有助于缩小高基数的来源范围。例如,VictoriaMetrics提供以下附加功能:

  • 能够通过查询参数指定统计数据的日期date。例如,/api/v1/status/tsdb?date=2022-04-01将返回 2022 年 4 月 1 日的统计数据。
  • 能够通过查询参数指定每个收集的统计数据返回的条目数topN。例如,/api/v1/status/tsdb?topN=100每个列表最多返回 100 个条目stats
  • 能够通过任意时间序列选择器过滤出时间序列以进行统计收集。例如,/api/v1/status/tsdb?match[]=foobar将返回foobar仅包含名称的时间序列的统计数据。

请参阅这些文档以获取更多信息。