Prometheus 如何从联邦成员端点获取所有指标?

Prometheus 如何从联邦成员端点获取所有指标?,prometheus,Prometheus,我们有一个层次结构的普罗米修斯设置,其中一些服务器与另一些服务器相冲突。 我们希望有一些服务器从其他服务器上获取所有指标 目前,我们尝试使用match[]=“{{uuuuu name\uuuuu=~“*”}”作为度量选择器,但这会在char 16处产生错误parse error:向量选择器必须至少包含一个非空的匹配器 有没有一种方法可以从远程普罗米修斯(prometheus)中刮取所有度量值,而不将每个(前缀)列为匹配选择器?是的,您可以这样做:match[]=“{uuuuuuuuuuuu na

我们有一个层次结构的普罗米修斯设置,其中一些服务器与另一些服务器相冲突。 我们希望有一些服务器从其他服务器上获取所有指标

目前,我们尝试使用
match[]=“{{uuuuu name\uuuuu=~“*”}”
作为度量选择器,但这会在char 16处产生错误
parse error:向量选择器必须至少包含一个非空的匹配器


有没有一种方法可以从远程普罗米修斯(prometheus)中刮取所有度量值,而不将每个(前缀)列为匹配选择器?

是的,您可以这样做:
match[]=“{uuuuuuuuuuuu name.=~+“}”
(请注意
+
而不是
*
以不匹配空字符串)


普罗米修斯在一个标签匹配器集中至少需要一个匹配器,但该匹配器并不匹配所有内容。

联盟并不打算传输所有指标,如果您尝试这样做,最终会遇到问题


相反,把你想要的指标汇总起来,然后只将它们联合起来。

我已经尝试了多个例子,即使是普罗米修斯文档中的例子,但都不起作用

相反,这对我有用

http://prometheus-ip:9090/federate?match[]={job!=""}

这是我的配置文件

有了这些限制,您可以筛选出哪些出口商(工作)将被裁掉:

  params:
    'match[]':
    - '{job=~"node-exporter|kube-state|fluentbit"}'
    - '{__name__=~"job:.*"}'

将这些添加到您的联合作业中

    params:
      match[]:
        - '{__name__=~".+"}'
        - '{__name__=~"^job:.*"}'
        - '{job="prometheus"}'
        - '{job="node"}'
        - '{__name__="server_labels"}'

我试图达到相同的配置,在尝试了多个解决方案后,实际对我有效的解决方案是:

params:
  match[]:
    - '{job=~".+"}'

这个简单的设置收集了所有具有
作业
的度量。同样的方法不适用于
{{uuuuu name\uuuu=~“job:.*}

谢谢您的警告。当我们遇到麻烦的时候,我会记住这一点,但现在我确信删除所有的指标是可以的。当事情解决后,我们会回到愤怒前,我们对需要查找什么和不需要查找什么有了更好的理解。我发现在prom 2.0.0上uuuu name uuu=~“.*”工作正常。注意{}之外不必要的“标记”。某些记录规则度量没有标签作业