Grafana 可视化 Easysearch 数据——从数据源接入到大屏实现
一、为什么是 Grafana + Easysearch?
运维领域"查日志用 Easysearch,看指标用 Grafana"已成默契。
Grafana 是可观测性领域事实标准,天然支持 Elasticsearch 协议;Easysearch 完全兼容 ES API,两者相加 = 零改造、开箱即用的可视化方案。
核心优势一句话:不用额外中间层,直接把 Easysearch 里的日志、指标、业务数据画成图。 少废话,直接看大屏效果图:

二、数据源配置(关键细节别踩坑)
2.1 前置条件
-
Easysearch 已启动,HTTP 端口默认 9200

-
Grafana 已部署,推荐原生安装,稳定、无额外依赖。

Linux(RPM / CentOS / RHEL):
# 添加 YUM 源
cat <<EOF | sudo tee /etc/yum.repos.d/grafana.repo
[grafana]
name=grafana
baseurl=https://packages.grafana.com/oss/rpm
repo_gpgcheck=1
enabled=1
gpgcheck=1
gpgkey=https://packages.grafana.com/gpg.key
EOF
sudo yum install -y grafana
sudo systemctl enable grafana-server
sudo systemctl start grafana-server

装完后,访问 http://localhost:3000,默认账号密码 admin / admin,首次登录会提示修改密码。

2.2 避坑1:版本兼容问题

如果直接执行 2.3 步骤,可能会报如上的错误。任何 AI 都没有一次告知如何正确适配。
这个坑我给趟过了,正确配置如下:
需要在 Easysearch 配置文件 easysearch.yml 中添加以下参数:
elasticsearch.api_compatibility: true
elasticsearch.api_compatibility_version: "8.9.0"
记得要重启 Easysearch 后再执行如下的步骤。
2.3 想清楚对谁做可视化!
咱们是对日志可视化,日志来自哪里要搞清楚。
可以是 Logstash 导入到 Easysearch 的,
可以是 MySQL 同步到 Easysearch 的,
可以是 Kafka 同步到 Easysearch 的
......
不一而足。
关键的关键是,数据必须导入到 Easysearch 了!

2.3 添加数据源
路径:Connections → Data sources → Add new data source → Elasticsearch


关键字段逐一说明:
|
字段 |
填写说明 |
|---|---|
|
URL |
http://easysearch-host:9200
(内网直连,勿带斜杠) |
|
Authentication |
若开启 Security,选 Basic auth,填账号密码 |
|
Index name |
目标索引名,支持通配符,如 |
|
Time field name |
时间字段,通常为 |
|
Elasticsearch version |
选 7.10+,Easysearch 与此版本协议兼容 |
|
Max concurrent queries |
默认 5,大屏面板多时可适当调高 |
⚠️ 兼容性重点:
Grafana 数据源版本务必选 7.10+,选低了聚合查询会报错;选 OpenSearch 模式反而不兼容,别踩。
点击 Save & test,看到绿色 Data source connected 即成功。

这里的时间戳字段是和索引字段一一对应的,不要乱写!!否则后续可视化不可实现。
避坑2:安全连接 Easysearch 需要勾选 skip TLS

2.4 成功连接标志

三、Panel 可视化实战
如下仅供参考,搞不定问 AI 也可以搞定。
3.1 时序图(Time Series)—— 趋势监控首选
场景:观察某服务每分钟请求量、错误率趋势。

Query 配置:
-
Query Type:
Lucene -
Query:
level:ERROR AND service:"order-service" -
Metric:
Count -
Group by:
Date Histogram(@timestamp, auto)
Grafana Query Builder 截图对应关系:
-
[Metrics] Count -
[Group by] Date Histogram | Field: @timestamp | Interval: auto -
[Query] level:ERROR AND service:"order-service"
Tips:
-
Interval 选 auto,Grafana 会根据时间范围自动计算粒度,省心。
-
多条曲线:复制 Query,修改过滤条件,用 Legend 区分,例如
{{service}}。
3.2 饼图(Pie Chart)—— 分布一眼看清
场景:统计各 HTTP 状态码的分布比例。

Query 配置:
-
Query Type:
Lucene -
Query:
* -
Metric:
Count -
Group by:
Terms | Field: status_code.keyword | Size: 10
Grafana 会把每个 status_code 值自动映射成饼图的一块。
Tips:
-
字段必须是
.keyword类型,否则 Terms 聚合报错。 -
在 Panel Options 里开启 Legend values:
Percent + Value,让饼图更直观。
3.3 Table 面板 —— 明细查询必备
场景:展示最近 100 条错误日志的原始明细。
Query 配置:
-
Query Type:
Lucene -
Query:
level:ERROR -
Metric:
Raw Document(不做聚合) -
Order:
@timestamp desc -
Limit:
100
在 Transformations 里用 Organize fields 选出需要的列,隐藏噪音字段,表格立刻清爽。
Tips:
-
加一个 Data links,点击行跳转到 Easysearch Kibana/头部工具查看完整原始文档,体验拉满。
-
颜色映射:
level=ERROR标红,level=WARN标黄,在 Field overrides 里配置。



3.4 避坑3:饼图不显示
查了 AI,有的说需要安装插件,有的说需要这啊,那啊 的配置,都不对!~ 实操发现,如要改如下截图内容。

配色默认只显示一组颜色,手动点击饼图那里点击修改即可。
四、生产环境注意事项
4.1 性能
-
避免在大时间范围(如 30 天)用高基数 Terms 聚合,容易 OOM。
-
合理设置 Max data points,时序图默认 1000 个点足够。
4.2 安全
-
Grafana 配只读账号连 Easysearch,权限最小化。
-
敏感索引(含 PII)单独控制 Grafana 访问权限。
4.3 可维护性
-
Dashboard 用 JSON 导出,存 Git,版本管理。
-
变量命名统一规范,后期维护不抓瞎。
五、小结
Easysearch 的 UI 设计效果非常巧妙,但相比 kibana 遗憾的是,缺少 dashboard 可视化面板的 DIY 操作,这个在大型的政府机构、企事业单位对外展示的需求是非常迫切的。
grafana 源自于 kibana,使用起来基本会 kibana 就可以快速使用 grafana。
稍微摸索一下就可以快速用起来!
如果你使用 Easysearch 过程中需要可视化大屏,建议参考本文用起来!!
如果有问题,欢迎留言交流。
参考资料
-
Grafana 文档
https://grafana.com/
-
Easysearch 官方文档
https://infinilabs.cn/products/easysearch/
2026 年国产搜索引擎大盘点:Easysearch 凭什么值得关注?
Elasticsearch 国产化替代 ——信创政策到技术选型的全面指南调研报告 V1.0
EasySearch 最常见问题答疑——国产化搜索引擎实战指南

更短时间更快习得更多干货!
和全球 2100+ Elastic 爱好者一起精进!

AI 时代,抢先一步学习进阶干货!
更多推荐

所有评论(0)