Grafana 配合 ELK(Elasticsearch) 大数据可视化展示nginx日志和程序日志

头像
码农笔录
2019-01-25 云计算/大数据 阅读量 23141

谈到日志分析,我们一般想到的就是ELK(Elasticsearch,Logstash,Kibana),或者我们自己实现kibana的功能,自己写一些统计图表,数据直接查询es。Grafana是大数据可视化的一个不错的选择,支持很多的数据源,包括elasticsearch,mysql等等。接下来给大家带来安装步骤和一些demo

本文环境:

(1)系统环境centos7

(2)grafana 版本 5.4.3

(3)elasticsearch 版本6.3.2

 需要前期储备的知识,ELK+Nginx的日志存储。如果没有了解请参考我的另一篇文章 ELK+logback+kafka+nginx 搭建分布式日志分析平台,最起码的明白整个原理和流程,否则下面你可能会看不懂。下图是我做的一个效果图


1.安装grafana(centos)

grafana官方下载地址

wget https://dl.grafana.com/oss/release/grafana-5.4.3-1.x86_64.rpm

sudo yum localinstall grafana-5.4.3-1.x86_64.rpm

service grafana-server start

安装并启动成功后,ip+3000端口访问,初始化密码 admin/admin,第一次登录后,会强制修改密码。

2.配置图表

我们进来首先要添加数据源,grafana默认支持elasticsearch,按照下图顺序,添加数据源。


我们选择elasticsearch后,需要配置一些信息。首先要配置es的地址,我的地址看起来有点怪,是因为我这是内网服务器,用frp做了内网穿透,我的日志格式是nelson-nginx-2018.01.25,index是每天的日期。所以pattren选择Daily


然后我们新建一个dashboard,并新建一个面板


我们前面在添加数据源后,一般第一个添加的他会默认候选为默认数据源,当我们添加面板后,数据就会从默认数据源读取数据,如下图所示,可以看到nginx的实时访问流量。我们可以点击title,弹出图中所示下拉框,然后点击editor修改面板信息,和修改查询的条件等等。



接下来我们添加一个新的面板,Table


假如我们要统计请求域名的数量(需要修改nginx日志格式),并排序,然后我们要修该面板的参数,如下图所示



3.安装grafana插件

比如我们一般都会需要的饼状图,grafana默认并没有支持,需要下载插件。如下图所示,图中所示都是grafana默认带的插件,如果我们需要更多的插件,我们需要去官网查看更多的插件。



点击进入详情页面,我们使用命令安装。

grafana-cli plugins install grafana-piechart-panel

service grafana-server restart

安装完成以后一定记得重启一下grafana。



这是我最后做完的效果图