Prometheus 内置函数:label_join() 用于将时间序列上的多个标签值合并成一个单一的标签值

label_join()函数用于将时间序列上的多个标签值合并成一个单一的标签值。这对于从多个标签中创建复合标签或处理标签结构非常有用。

作用

label_join() 函数用于将时间序列上的多个标签值合并成一个单一的标签值。这对于从多个标签中创建复合标签或处理标签结构非常有用。

label_join() 函数会将每个时间序列的多个源标签值合并成一个字符串,并将该字符串设置为目标标签的值。合并时,你可以使用 "" 作为分隔符,也可以指定其他字符作为分隔符。

语法

label_join() 函数的基本语法如下:

label_join(v instant-vector, dst_label string, separator string, src_label_1 string, src_label_2 string, ...)

参数说明:

  • instant-vector:一个向量表达式,用于选择你想要操作的时间序列。

  • dst_label:新的标签名,用于存储合并后的标签值。

  • separator:分隔符。

  • src_label_1,src_label_2,....:你想要合并的源标签名列表。

示例

下面是一个使用 label_join() 函数的例子:

label_join(prometheus_http_requests_total, "mylabel", "", "instance", "handler")

上面例子中,我们选择了所有 prometheus_http_requests_total 指标的时间序列。然后,我们使用 label_join() 函数将这些时间序列的 instance 和 handler 标签值合并成一个新的标签 mylabel。如下图:

Prometheus 内置函数:label_join() 用于将时间序列上的多个标签值合并成一个单一的标签值

执行 label_join() 函数后的结果如下图:

Prometheus 内置函数:label_join() 用于将时间序列上的多个标签值合并成一个单一的标签值

注意,label_join() 函数不会改变原始时间序列的其余部分,只是添加了一个新标签。此外,如果源标签中的任何值为空,则合并后的标签值也将为空。

谁不会休息,谁就不会工作。 —— 列宁
0 不喜欢
说说我的看法 -
全部评论(
没有评论
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
其他应用
公众号