Grafana是否支持面板级(局部作用域)的变量定义?
Grafana面板级局部变量支持说明
Grafana 9.5及以上的正式版本原生支持为单个面板定义专属局部变量,完全匹配跨面板同名变量复用、单面板变量调整不影响其他面板的需求。
- 配置方式:进入目标面板的编辑界面,在右侧面板设置栏找到
Variables选项即可创建,配置逻辑和Dashboard全局变量完全一致,支持查询类变量、自定义列表变量、文本输入变量等所有全局变量支持的类型。 - 作用域规则:
- 面板内创建的局部变量仅对当前面板生效,对应的变量选择控件默认显示在当前面板标题栏,不会出现在Dashboard顶部的全局变量区
- 如果存在和全局变量重名的面板局部变量,当前面板会优先读取局部变量的取值,局部变量的修改不会同步到全局,也不会触发其他面板的查询刷新
- 低版本替代方案:如果使用的是9.5之前的老版本Grafana,没有原生面板变量功能,可以通过两种方式实现近似效果:
- 在面板的查询语句中通过常量声明、WITH子句固定同名参数的取值,缺点是不支持用户在视图层交互调整参数
- 给不同面板的同名变量增加专属前缀做命名区分,比如A面板的实例变量命名为
panelA_instance、B面板的命名为panelB_instance,再将对应变量的展示控件调整到对应面板附近,缺点是配置维护成本较高
注意:如果需要跨面板传递变量值,还是需要使用Dashboard级全局变量,面板局部变量不支持跨面板取值同步。
内容的提问来源于stack exchange,提问作者Shiladitya Mukherjee
相关产品推荐
相关产品推荐

