随着项目越来越庞大,日志的数量也随之增多,游戏上线后的日志量肯定更多了,所以对日志的收集、存储、查询就非常重要了,开源界第一日志分析系统ELK必不可少。
ELK系统由Elasticsearch(分布式存储搜索服务器)、Logstash(日志收集服务器)和Kibana(Elasticsearch前端展示工具)三个开源工具组成。
ELK工作原理展示图:
如上图所示,Logstash收集AppServer产生的Log,并存放到Elasticsearch集群中,而Kibana则从ES集群中查询数据,最后通过Browser(浏览器)展示查询结果。
下图是博主自己建立ELK系统的计划用时与实际用时对比图,大家可以参考下:
接下来,我们先学习ELK三个工具的部署安装,并试验你的第一个例子。
一、elasticsearch 部署安装
1、官网下载ZIP
2、解压
3、进bin目录:G:elasticsearch-5.6.3elasticsearch-5.6.3in,shift+右键 --》 “此处打开命令行”,输入:elasticsearch
4、报错:elasticsearch missing `server' JVM at `C:Program Files (x86)Javajre1.8.0inserverjvm.dll'.
解决办法:jdk1.8.0jreinserver 整个文件夹,复制到 jre1.8.0in 里面
5、继续执行第3步,输入:elasticsearch
6、报错:
Error occurred during initialization of VM
Could not reserve enough space for 2097152KB object heap
解决办法:G:elasticsearch-5.6.3elasticsearch-5.6.3configjvm.options,修改jvm.options文件的22,23行,

启动ES成功,打开地址:http://localhost:9200/
二、logstash 部署安装
1、下载ZIP
2、解压
3、找到 G:ELKlogstash-5.6.3configjvm.options,修改其中JVM的内存配置为512m,6、7行
4、进行最简单的管道测试,进入 G:ELKlogstash-5.6.3in 目录,shift+右键 "此处打开命令行" 输入:logstash -e 'input { stdin { } } output { stdout {} }'
5、可以看到Pipeline main started,此时命令行已经准备好你的输入了,我们输入“hello world”
6、至此,我们确认logstash安装部署成功。(你也可以试试执行命令: logstash -e '',看看会输出什么)
三、Kibana部署安装
1、下载ZIP
2、解压
3、进入G:ELKkibana-5.6.3-windows-x86in 目录,shift+右键 "此处打开命令行" ,运行kibana.bat,结果如下图:
注意:Kibana是基于Elastcisearch的前端显示工具,运行前要确认Elasticsearch服务已经开启,否则将会报错。
4、访问http://localhost:5601/,会看到:
5、至此,Kibana已经成功安装部署。