- 本次使用目的:通过Elastic Stack搭建出一个小型日志系统
从springboot开始输出日志到log,在maven中引入logback-ecs-encoder,来生成log.json,然后通过filebeat获取log.json,把内容存入elasticsearch之后,通过kibana来浏览数据。
springboot服务+filebeat服务 | elasticsearch服务+kibana服务 |
- 官方地址getting started进行开始:
https://www.elastic.co/guide/en/elastic-stack-get-started/current/get-started-elastic-stack.html
开始根据官网的教程下边进行摘要总结:(本次调试系统为centos7桌面版,带桌面的linux发行版方便localhost浏览器调试,mac系统也体验过是ok的,不太建议windows调试)
下边先安装elasticsearch、kibana、Filebeat体验一下
- 安装启动elasticsearch:
curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.16.2-linux-x86_64.tar.gz
tar -xzvf elasticsearch-7.16.2-linux-x86_64.tar.gz
cd elasticsearch-7.16.2
./bin/elasticsearch
在centos中打开Firefox浏览器,输入网址访问:http://127.0.0.1:9200
- 安装启动kibana
curl -L -O https://artifacts.elastic.co/downloads/kibana/kibana-7.16.2-linux-x86_64.tar.gz
tar xzvf kibana-7.16.2-linux-x86_64.tar.gz
cd kibana-7.16.2-linux-x86_64/
./bin/kibana
在centos中打开Firefox浏览器,输入网址访问:http://127.0.0.1:5601
getting started中演示的是Metricbeat的例子,可自行测试,我们的目标是Filebeat,点击页面链接开始Filebeat
- 官方地址Filebeat:
https://www.elastic.co/guide/en/beats/filebeat/7.16/filebeat-installation-configuration.html
下载解压:
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.16.2-linux-x86_64.tar.gz
tar xzvf filebeat-7.16.2-linux-x86_64.tar.gz
修改配置: 进入到filebeat目录中vim filebeat.yml
output.elasticsearch:
hosts: ["localhost:9200"]
设置assets:
./filebeat setup -e
启动:(虽然启动了但是没有采集任何数据)
sudo chown root filebeat.yml
sudo ./filebeat -e
- 官方日志教程:
https://www.elastic.co/guide/en/ecs-logging/java/current/setup.html
直接从step 3开始,打开vim filebeat.yml,step 1后边接入springboot应用的时候用到
filebeat.inputs:
- type: log
paths: /path/to/app.log
json.keys_under_root: true
json.overwrite_keys: true
json.add_error_key: true
json.expand_keys: true
重启filebeat程序,往/path/to/app.log中写入几行数据即可。打开kibana进行查看:http://127.0.0.1:5601/app/discover
好了,就是这么简单已经体验过filebeat采集数据到.log文件,通过kibana来展示了。玩归玩闹归闹,现在还差的远,远程访问、安全配置如何设置,接着往下走。