Grafana接入Elasticsearch数据,绘制dashboard

本文档介绍了如何通过Grafana接入Elasticsearch数据源,以分析Nginx日志。首先,配置Grafana连接到ES,设置数据源名称、URL和索引名称。接着,创建新的dashboard并定制变量,如域名、状态码、Nginx主机和时间间隔。然后,逐步绘制面板,包括域名流量、接口流量和延迟情况的看板。在绘制过程中,注意处理特殊字符转义和避免MinDocCount问题。最后,分享了在创建面板时遇到的坑点及其解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

介绍:此项目将nginx日志导入es,并用grafana做看板分析nginx日志

一、grafana接入es数据源

  1. Add data source
    在这里插入图片描述
  2. select Elasticsearch 数据源
    在这里插入图片描述
  3. 填写es数据源地址等信息
  • name:数据源名称。(自行填写)
  • URL:es数据源地址
  • Index name:es索引名称。
  • Time field name:时间字段 (和es数据字段保持一致)
    在这里插入图片描述

二、新建dashboard

  1. create new dashboard
    在这里插入图片描述
  2. 设置dashboard 名称等
    在这里插入图片描述
  3. 修改名称并加入对应文件夹
    在这里插入图片描述

三、创建面板(panel)

  1. 绘制panel前,可以自定义一些变量
  • 创建数据源变量database,并支持多选和全选
    在这里插入图片描述
  • 创建domain变量:引用刚才创建的$database变量,并通过query语句 {“find”:“terms”,“field”:“http_host”} ,查询出所有的域名
    在这里插入图片描述
  • 以此类推,创建需要创建的变量
    (1)状态码 $status
    (2)nginx主机 $proxy
    (3)获取数据的时间间隔 $inter
    在这里插入图片描述
  • 变量创建效果如下:
    在这里插入图片描述

在这里插入图片描述
2. 绘制面板

(1)绘制域名流量面板
在这里插入图片描述
Query:Lucence查询语法,过滤出所选域名
Alias:设置为别名
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
(2)绘制域名接口流量看板
在这里插入图片描述
(3)绘制域名接口延时
在这里插入图片描述
在这里插入图片描述
(4)过滤出4xx日志,以nginx维度展示。同理接口维度和upstream维度以此类推
在这里插入图片描述

  • 绘制过程中的一些坑点
    (1)域名中带特殊符号,设置别名展示时会转义
    例:test-aa.bb.com 别名设置(Alias): ${domain} 展示效果为test\-aa.bb.com
    解决方法:${domain:raw}
    (2)Min Doc Count = 0 会将强制读取所有结果,发现分组过滤的数据有问题时,可以尝试不设置此参数
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值