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

Grafana跨面板数据传递:能否将一个面板的数据传入另一个面板的查询标签值?

解决跨面板传递IP到Loki查询的方案

当然可以实现!Grafana的变量和联动功能正好能搞定你这个需求,不用复杂的额外配置,下面一步步来操作:

1. 先创建动态变量获取金丝雀实例IP

首先,你需要基于现有金丝雀面板的数据源(比如Prometheus或者你用来监控资源的数据源),创建一个动态变量来抓取所有金丝雀实例的IP地址:

  • 进入Grafana的「变量」设置页面(在仪表盘设置里找「Variables」)
  • 点击「Add variable」,类型选「Query」
  • 数据源选择你金丝雀面板用的那个(比如Prometheus)
  • 输入查询语句,比如如果你的指标里有canary标识标签,就用:
    label_values(your_resource_metric{canary="true"}, ipaddress)
    
    (把your_resource_metric换成你实际用的资源指标名,比如node_cpu_seconds_total之类的)
  • 变量名设为canary_ip,可以勾选「Multi-value」或者「Include all option」,方便选择单个或多个IP
  • 保存变量

2. 在Loki面板中引用这个变量

接下来创建你的Loki日志面板:

  • 新建一个面板,数据源选Loki
  • 编写日志查询时,用刚才的变量匹配IP标签,同时加上你的错误关键词:
    {ipaddress=~"$canary_ip"} |= "你的错误关键词"
    
    这里用=~而不是=,是为了支持多选IP的场景(如果变量开了多选的话)
  • 这样一来,当你在仪表盘顶部选择不同的canary_ip时,Loki面板会自动更新,只展示对应IP的错误日志

3. 可选:设置面板点击联动(更流畅的体验)

如果你想实现「点击金丝雀面板里的某个IP,直接跳转到Loki面板看对应日志」的效果:

  • 回到金丝雀面板,找到展示IP的那个面板(比如表格或者单值面板)
  • 编辑该面板,找到「Links」设置项,点击「Add link」
  • 链接类型选「Dashboard」,选择你的Loki日志仪表盘
  • 在「Variables」部分,把canary_ip变量的值设置为${__data.fields.ipaddress}(这个变量会自动获取点击的那一行的IP值)
  • 保存设置后,点击金丝雀面板里的IP,就会直接跳转到Loki面板并自动加载对应IP的日志啦

一些小提示

  • 确保你的金丝雀数据源能正确返回带ipaddress标签的指标,这样变量才能抓取到IP
  • 如果Loki里的ipaddress标签格式和监控数据源里的不一致(比如大小写、有无端口),要统一格式,避免匹配失败

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.27 22:08:11