获取普罗米修斯时间序列的数据点计数
Get Datapoint Count of a Prometheus Timeseries
我已经为 Prometheus 表达式定义了记录规则。
规则 - rule:my_recording_rule
表达式 - sum by(foo) (increase(some_metric{}[4w]))
该记录规则每 15 秒包含一次数据。所以如果我们花 1 分钟,就会记录 4 个数据点。
我想获取该记录规则中的总数据点数。
我试过 count(rule:my_recording_rule)
但它只给出了列出的时间序列数。
我想获取每个时间序列的数据点数。
您需要使用count_over_time功能。例如,以下查询将 return 每个时间序列最后一小时内的原始样本数 some_metric
名称:
count_over_time(some_metric[1h])
如果您需要对匹配时间序列中的数据点求和,则只需将查询包装到 sum:
sum(count_over_time(some_metric[1h]))
我已经为 Prometheus 表达式定义了记录规则。
规则 - rule:my_recording_rule
表达式 - sum by(foo) (increase(some_metric{}[4w]))
该记录规则每 15 秒包含一次数据。所以如果我们花 1 分钟,就会记录 4 个数据点。
我想获取该记录规则中的总数据点数。
我试过 count(rule:my_recording_rule)
但它只给出了列出的时间序列数。
我想获取每个时间序列的数据点数。
您需要使用count_over_time功能。例如,以下查询将 return 每个时间序列最后一小时内的原始样本数 some_metric
名称:
count_over_time(some_metric[1h])
如果您需要对匹配时间序列中的数据点求和,则只需将查询包装到 sum:
sum(count_over_time(some_metric[1h]))