Grafana 9.5.12中常量变量在告警规则与通知模板中的使用方法咨询
Grafana 9.5.12中常量变量在告警规则与通知模板中的使用方法咨询
嘿,我完全懂你的感受——本来以为在Grafana里整个常量变量用在告警和通知里是分分钟的事,结果实际操作发现没那么顺利对吧?别担心,我来给你一步步拆解在9.5.12版本里怎么实现你的需求:
一、创建仪表盘级常量变量
首先咱们得先把minVal这个常量变量建好,完全不用依赖任何数据源:
- 打开你的目标仪表盘,点击右上角的齿轮图标进入仪表盘设置
- 切换到「Variables」标签页,点击「Add variable」按钮
- 在变量类型里选择「Constant」,然后填写:
- Name:填
minVal(注意名字要和你后续使用的一致,大小写敏感) - Value:输入
200 - 可以给变量加个描述比如“告警阈值最小值”,方便后续维护
- Name:填
- 点击「Add」保存变量,再回到仪表盘主界面,确保变量能正常加载(顶部变量栏能看到它)
二、在告警规则里使用常量变量
接下来把这个变量用到告警判断里:
- 如果你是基于仪表盘面板创建的告警(推荐,能直接复用仪表盘变量):
- 打开目标面板的编辑界面,点击「Alert」标签页
- 在告警条件的表达式编辑器里,假设你已经通过Math reduce函数拿到了
lastVal这个值,直接写表达式:$lastVal < $minVal - 保存告警规则即可,Grafana会自动解析这个常量变量的值,不用额外配置
- 如果你是创建独立的全局告警规则:
- 进入「Alerting」->「Alert rules」,点击「Create alert rule」
- 在规则编辑界面,先到「Variables」标签页,添加一个全局常量变量(步骤和仪表盘变量类似,只是作用范围是全局)
- 回到表达式编辑器,同样直接使用
$minVal编写判断逻辑
三、在通知模板里使用常量变量
最后把变量放到通知消息里:
- 进入「Alerting」->「Notification templates」,创建或编辑你的模板
- 在模板内容里,你可以直接通过模板语法引用变量:
Value has gone below {{ .Variables.minVal }} - 如果你是在告警规则的「Notification settings」里直接自定义消息文本,也可以直接用
${minVal},比如输入:Value has gone below ${minVal}
一些小提醒
- 确保告警规则和变量的作用范围匹配:仪表盘变量只能被该仪表盘内的面板告警引用,全局变量可以被所有告警规则引用
- 测试的时候可以手动触发一次告警,看看通知消息里的变量是否正确显示成200,避免拼写错误(比如变量名写错大小写)
备注:内容来源于stack exchange,提问作者Hareendra Chamara Philips
相关产品推荐
相关产品推荐

