对于java项目查看日志方法很多,由于项目需要,查看日志需要命令查看,为方便后端开发人员查看错误日志,项目要求搭建elk日志管理
此次是springcloud搭建elk,spirngboot亦可如此
elk :是elasticsearch(存储日志数据),logstash(收集日志) ,kibana(显示日志数据)的缩写
首先得安装这三个软件,下载地址:
开源搜索:Elasticsearch、ELK Stack 和 Kibana 的开发者 | Elastic
1.启动elastcsearch:
elasticsearch下载解压,然后找到bin目录下的(windows下)elasticsearch.bat启动,默认端口9200无需修改 linux环境下启动需要新建用户,然后用新用户cd到bin目录下,然后用 ./elasticsearch & 命令启动 。
启动成功访问 htttp://ip:9200 如图 代表成功
2.启动kibana:
kibana下载解压
(windows环境下)修改 config下的kibana.yml文件 如图:打开kibana链接es的地址 保存
然后进入bin目录点击kibana.bat启动
linux环境下 同样修改kibana.yml文件,然后用新用户cd到bin目录下,用 ./kibana &命令启动
启动成功访问 http://ip:5601 如图
3.配置logstash日志收集(重点)
logstash下载解压:在bin目录或者config目录新建logstash.conf文件 ,文件内容:
input { beats { port => 5044 } #tcp端口 tcp { port => 4569 codec => "json" } } #过滤 filter { grok { match => { "message" => "(?d{4}-d{2}-d{2}sd{2}:d{2}:d{2},d{3})][(? [A-Z]{4,5})][(? [A-Za-z0-9/-]{4,40})][(? [A-Za-z0-9/.]{4,40})][(? .*)" } remove_field => ["message"] } #过滤error和warn 只要这两个日志 if [level] !~ "(ERROR|WARN)" { drop {} } } output { if[appname] != "" { elasticsearch { # 链接es地址 hosts => ["http://127.0.0.1:9200"] index => "%{[appname]}-%{+YYYY.MM.dd}" #索引名称 } } else { elasticsearch { hosts => ["http://127.0.0.1:9200"] index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}" } } }
保存后启动:
windous环境下cd到bin目录下,用 logstash -f logstash.conf命令启动 如果logstash.conf文件在config目录下用 logstash -f ./config/logstash.conf命令启动
linux环境下 cd到bin目录下:用./logstash -f logstash.conf命令启动
至此elk文件已配置完成,接下来在项目里面配置
1.引入lagstash maven依赖
net.logstash.logback logstash-logback-encoder5.3
2.在resources下新建logback.xml 文件 内容
${log.pattern} 127.0.0.1 4569 {"appname":"auth-service"}
然后启动项目进入kibana界面 1、2、3步骤查看
点击 index Management就会有刚设置的索引,索引es已经自动创建
点击 index patterns 然后 点击create index patterns
输入auth-service-,创建kibana日志的索引 然后点击next step
完成后:点击
红色框切换就可以看到错误日志
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)