Prometheus 内置函数:clamp() 用于将向量中的每个样本值限制在指定的最小值和最大值之间

clamp() 函数是一个向量函数,用于将向量中的每个样本值限制在指定的最小值和最大值之间。如果样本值小于最小值,则将其设置为最小值;如果样本值大于最大值,则将其设置为最大值;如果样本值在最小值和最大值之间,则保持不变。

作用

clamp() 函数是一个向量函数,用于将向量中的每个样本值限制在指定的最小值和最大值之间。如果样本值小于最小值,则将其设置为最小值;如果样本值大于最大值,则将其设置为最大值;如果样本值在最小值和最大值之间,则保持不变。

clamp() 函数在 Prometheus 中通常用于数据清洗或准备数据以进行可视化,以确保数据的范围符合特定的需求或期望。在处理可能包含异常值的指标时,这个函数特别有用。

语法

clamp() 函数的语法如下:

clamp(v instant-vector, min scalar, max scalar)

参数说明:

  • v range-vector: 是要限制值范围的向量。

  • low: 是设定的最小值。

  • high: 是设定的最大值。

示例

假设你有一个名为 prometheus_http_requests_total 的指标,它记录了 HTTP 请求的总数,你希望将这个指标的值限制在 10 到 100 之间,以避免因异常高的值导致的图表显示问题或警报误报。你可以使用以下 PromQL 查询来实现这一点:

clamp(prometheus_http_requests_total, 10, 100)

这将返回一个新的向量,其中 prometheus_http_requests_total 的每个样本值都被限制在 10 到 100 之间。

如果原始值小于 10,则结果为 10。

如果原始值大于 100,则结果为 100。

如果原始值在 10 到 100 之间,则结果保持不变。

示例:

Prometheus 内置函数:clamp()

Prometheus 内置函数:clamp()

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