本文共 783 字,大约阅读时间需要 2 分钟。
介绍:此项目将nginx日志导入es,并用grafana做看板分析nginx日志
一、grafana接入es数据源
- Add data source
- select Elasticsearch 数据源
- 填写es数据源地址等信息
- name:数据源名称。(自行填写)
- URL:es数据源地址
- Index name:es索引名称。
- Time field name:时间字段 (和es数据字段保持一致)
二、新建dashboard
- create new dashboard
- 设置dashboard 名称等
- 修改名称并加入对应文件夹
三、创建面板(panel)
- 绘制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 会将强制读取所有结果,发现分组过滤的数据有问题时,可以尝试不设置此参数
转载地址:http://jmhrn.baihongyu.com/