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

使用ElasticSearch的Grafana变量查询:筛选功能失效问题

解决Grafana+ElasticSearch按国家字段筛选的配置方案

1. 创建国家筛选变量

  • 进入仪表盘设置,选择「变量」→「新建变量」
  • 变量类型选「查询」,数据源指定你的ElasticSearch实例
  • 查询语句:输入适配ES 8.x的聚合DSL
    {
      "size": 0,
      "aggs": {
        "countries": {
          "terms": {
            "field": "honeypot_country.keyword",
            "size": 1000,
            "order": { "_key": "asc" }
          }
        }
      }
    }
    
  • 在「自定义选项」中,选择「从查询结果中提取字段」,填写countries.buckets.key
  • 勾选「包含全部选项」,支持默认展示所有国家数据
  • 保存变量,命名为country

2. 配置面板数据过滤

每个需要筛选的面板,按以下方式添加过滤逻辑:

  • 打开面板查询编辑器,在「过滤器」区域点击「添加过滤器」
  • 字段选honeypot_country.keyword,操作符选「等于」,值选择$country(对应刚才创建的变量)
  • 若手动编写DSL查询,在query节点中加入过滤条件:
    "bool": {
      "filter": [
        {
          "term": {
            "honeypot_country.keyword": "$country"
          }
        }
      ]
    }
    

3. 常见问题排查

  • 变量无国家选项:检查ES字段名是否带.keyword后缀(必须指定,因为你的字段是keyword类型),同时验证该DSL在Kibana中能否返回正确聚合结果
  • 筛选后数据不生效:确认面板过滤器的字段是否带.keyword,Grafana中使用keyword类型字段必须指定后缀,否则会匹配text类型的分词结果
  • 「全部」选项失效:确保变量已勾选「包含全部选项」,Grafana会自动处理该选项下的无过滤逻辑

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 08:55:17