Prometheus 同一计数器名称的不同标签集?

Prometheus 同一计数器名称的不同标签集?,prometheus,Prometheus,我正在考虑这样做: counter_name counter sample_name_of_that_counter_name_1 {'key1'="value1"} 12 sample_name_of_that_counter_name_2 {'key1'="value8",'key2'="value2","key3"="value3"} 23 sample_name_of_that_counter_name_3 {'key4'="value4"} 2 因此,作为度量名称的同一个计数器将

我正在考虑这样做:

counter_name counter 
sample_name_of_that_counter_name_1 {'key1'="value1"} 12 
sample_name_of_that_counter_name_2 {'key1'="value8",'key2'="value2","key3"="value3"} 23
sample_name_of_that_counter_name_3 {'key4'="value4"} 2
因此,作为度量名称的同一个计数器将具有不同的标签集(作为键作为值),从而产生不同的序列

但在阅读文档时,我感到困惑。 在一个地方它说():

-看起来我可以用label:key1=>value1创建一个计数器“counter\u name”,它将创建这个由counter\u name+label确定的时间序列。 另一个独特的系列将使用相同的计数器名称但不同的标签创建:计数器“counter_name”,标签为:“key1=>value1,key2=>value2”

随后由doc确认:

"Changing any label value, including adding or removing a label, will create a new time series."
但在同一文档的另一页()上,我们看到:

"Client libraries MUST NOT under any circumstances allow users to have different label names for the same metric for Gauge/Counter/Summary/Histogram or any other Collector offered by the library."
它混淆了“如果客户端添加或删除标签-它将创建新的时间序列(用于相同的度量名称)”,但同时“它是不允许的”


有人能帮我弄清楚吗?

对于一个指标有不同的标签名称是不正常的。通常,您宁愿定义多个度量名称。什么是理性?我确实这么认为,但真的认为,在我的情况下,我希望与可变标签相同的度量,我也开始好奇,因为PHP的LIB我使用一种允许保存非正统的情况下,但特洛伊例外,而暴露。这里我是如何得到文档中相互排斥的语句的,现在我正试图弄清楚。如果不允许,为什么文档会说:“更改任何标签值,包括添加或删除标签,将创建一个新的时间序列。”?这正是我所需要的——同一个指标有不同的标签。为一个指标使用不同的标签名称是不正常的。通常,您宁愿定义多个度量名称。什么是理性?我确实这么认为,但真的认为,在我的情况下,我希望与可变标签相同的度量,我也开始好奇,因为PHP的LIB我使用一种允许保存非正统的情况下,但特洛伊例外,而暴露。这里我是如何得到文档中相互排斥的语句的,现在我正试图弄清楚。如果不允许,为什么文档会说:“更改任何标签值,包括添加或删除标签,将创建一个新的时间序列。”?这正是我所需要的——相同的指标,不同的标签。。
"Client libraries MUST NOT under any circumstances allow users to have different label names for the same metric for Gauge/Counter/Summary/Histogram or any other Collector offered by the library."