为什么需要搭建日志分析平台
1、由于Linux服务器并不是谁都可以上的,并且查看日志需要tail -f xxx.log非常麻烦,有时候还需要人家进行复现
2、保证其他开发人员能快速分析排错
3、保证服务器只有部分人可以进入(防小人)
准备工作,logback 配置
1 | <?xml version="1.0" encoding="UTF-8" ?> |
2、核心配置参数:
1 | <encoder> |
这里是把日志转json,日志:
1 | { "date":"2020-05-07 12:03:02,784", "level":"INFO", "logger":"c.g.l.l.AccessLog", "file_line":"BaseAuthAndLoginAop.java:71", "msg":{"appName":"hyfj","request":{"headers":{"Origin":"http://localhost:8083","Accept":"*/*","Connection":"keep-alive","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36","Referer":"http://localhost:8083/swagger-ui.html","Host":"localhost:8083","Accept-Encoding":"gzip, deflate, br","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8","Content-Length":"0","Content-Type":"application/json"},"params":{"currentPage":["1"],"phone":["15196705987"],"password":["123"]},"queryString":"phone=15196705987&password=123¤tPage=1","clientIp":"192.168.2.60","uri":"http://localhost:8083/user/page","method":"POST","time":"2020-05-07 12:03:02","host":"localhost:8083"},"response":"{\"list\":[],\"pagination\":{\"current\":1,\"pageSize\":20,\"total\":0}}","requestCurl":"","checkTokenTime":-1,"controllerTime":-1}, "exception":"" } |
转json需要取继承两个类,并且去重写父类的方法
1 | public class StackTraceConverter extends ThrowableProxyConverter { |
开始搭建 docker
这里我使用的是centos7搭建的docker
1 | 移除旧版本: |
安装elk
拉取镜像docker pull sebp/elk
创建es数据存放目录:mkdir -p /var/data/elk
以sebp/elk镜像启动容器,并命名为:myelkdocker run -d -p 5044:5044 -p 5601:5601 -p 9200:9200 -p 9300:9300 -v /var/data/elk:/var/lib/elasticsearch --name=myelk sebp/elk
端口占用:
logstash,占用5044端口
kibana,占用5601端口
elasticsearch,占用9200和9300端口
docker基础语法:
1 | 查看容器的标准输出: |
进入容器后:
1 | cd /etc/logstash/conf.d/ |
单独测试logstash
1 | 启动:service logstash restart |
1 | 进入容器,先执行: |
安装filebeat
centos 7 安装filebeat
1 | curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-5.4.3-x86_64.rpm |
如果不能安装,可自行查看官方文档进行安装:
https://www.elastic.co/guide/en/beats/filebeat/5.4/filebeat-installation.html
安装好后,剩下的就行进行配置,filebeat的配置文件在:/etc/filebeat
配置文件为filebeat.yml
1 | filebeat: |
filebeat的启动与停止
1 | 启动: |
kibana
一切配置完成后,只需要输入ip:5601 即可进入kibana配置中心,这个时候进行基础配置就可以了
- 本文作者: Cayden
- 本文链接: http://example.com/2020/07/17/从0搭建日志分析/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!