You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Grafana Dashboard自定义变量在Flux查询中过滤数据报错求助

解决Grafana Flux查询中自定义变量过滤失效的问题

问题原因

你遇到的undefined identifier process2错误,是因为Grafana替换变量${process}时直接输出了process2(不带引号),Flux会把它当作未定义的标识符而非字符串值;而手动写"process2"是合法字符串,所以查询能正常执行。

解决方案

方法1:给变量添加引号包裹

修改Flux过滤语句,将变量用双引号包裹,确保替换后生成合法的字符串格式:

|> filter(fn: (r) => r["Process ID"] == "${process}")

当变量值为process2时,实际执行的语句会自动变为r["Process ID"] == "process2",符合Flux的字符串语法要求。

方法2:使用Flux字符串转换函数

也可以通过string()函数将变量强制转换为字符串类型,规避引号问题:

|> filter(fn: (r) => r["Process ID"] == string(v: ${process}))

额外检查项

  • 确认自定义变量的类型设置:如果是手动配置的变量,确保类型选择为Custom,值列表里的process1/process2/process3是纯字符串(无多余引号或空格)。
  • 验证变量替换效果:在Grafana查询编辑器中,点击变量旁的“预览”按钮,查看替换后的完整查询语句是否符合预期。

内容的提问来源于stack exchange,提问作者Pratiyush Kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 04:22:34