grafana仪表盘中针对prometheus设置全局变量
Posted 山风的风
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了grafana仪表盘中针对prometheus设置全局变量相关的知识,希望对你有一定的参考价值。
【variables】变量的设置页面
variables提供了参数功能,相当于一个宏变量,这个宏变量的值是和datasource级联的
参数作用
【General】
name: 变量名称,在其他地方调用这个变量时,使用$name。
type: 变量的类型,如下:
- query 表示这个变量是一个查询语句:
- datasource 就表示改变量代表一个数据源,如果是datasource 那就可以用改变量修改整个仪表盘的数据源
- interval 表示查询的时间跨度,例如:
- custom 自定义一些其他变量
- constant 定义可以隐藏的常量,对于要共享的仪表盘中包括路径或者前缀很有用,在仪表盘导入过程中,常量变量将成为导入时的选项。
- text box 用户提供一个可以自由输入的文本框
label:标签,在仪表盘上显示标签名字,不设置标签则显示变量名
hide:隐藏,用于隐藏标签,可以调用,但是在仪表盘不显示变量名
【Query Options】
data source: 选择数据源
refresh: 刷新方式
- never 从不刷新
- on dashboard load 仪表盘加载时,常用选项
- on time range changed 时间范围发生变化时
query:Query 类型的变量允许您向 Prometheus 查询指标、标签或标签值的列表。
- label_names()返回标签名称列表,会将prometheus所有指标的标签名称全部显示出来,赋值给变量名
- label_values(label)返回每个指标中标签的标签值列表,例如 查询标签名是instance的对应的标签值,把结果赋值给变量名
- label_values(metric, label)返回指定指标中标签的标签值列表,例如 查询指标kube_node_info中的标签名是instance的 对应的标签值,把结果赋值给变量名
- metrics(metric) 返回与指定指标正则表达式匹配的指标列表,例如 将包含这个“memory_Mem” 字段的指标名过滤出来,赋值给变量名
- query_result(query)返回查询的 Prometheus 查询的结果列表
regex:使用正则表达式 对抓取到的返回值进行过滤,例如
使用query_result(count(node_uname_info)),返回的结果是
2 1657614411000
regex 设置 / (.*) .*/
,只过滤出()里面匹配的内容 "2"
sort:对获取的返回值 进行排序
- Disanled禁用
- Alphabetical(asc)按字母升序
- Alphabetical(desc)按字母降序
- Numerical(asc)按数字升序
- Numerical(desc)按数字降序
- Alphabetical(casc-insensitive,asc)按字母不区分大小写升序
- Alphabetical(casc-insensitive,desc)按字母不区分大小写降序
【Selection options】
Multi-value:启用这个功能,变量的值就可以选择多个,具体表现在变量对应的下拉框中可以选多个值的组合。
Include All option:启用这个功能,变量下拉框中就多了一个all选项。
Custom all value:启用Include All option这个功能,才会出现Custom all value这个输入框,表示给all这个选项自定义一个值,all这个选项默认是所有值的组合,你也可以自定义,比如我自定义all为cpu五分钟平均负载,则选择all就代表cpu五分钟平均负载。
虽然选择组合值可以在一个panel里面查看多种监控数据,但是由于不同监控数据的数值大小格式都可能不一样,在一个图形里面格式很难兼容,这样就会出现问题,所以此处建议默认都不选。
【Preview of values】
表达式返回的结果 会显示在这里
以上是关于grafana仪表盘中针对prometheus设置全局变量的主要内容,如果未能解决你的问题,请参考以下文章
在 cAdvisor 的刮板中更改 Prometheus 作业标签会破坏 Grafana 仪表板
关于如何在 Grafana 绘制 Apache Hudi Metrics 仪表盘的教程