ELK_05_Filebeat收集Tomcat日志

安装tomcat (在 192.168.189.118 上面安装)
实验环境:192.168.189.118 --->tomcat filebeat elasticsearch kibana
也需要安装java环境
yum install tomcat tomcat-webapps tomcat-admin-webapps tomcat-docs-webapp tomcat-javadoc -y
tomcat : tomcat 主体
tomcat-webapps tomcat-admin-webapps tomcat-docs-webapp tomcat-javadoc 这些都是tomcat 自带的示例页面

如果不装这些,tomcat 装好后,只有一个空壳,可以理解为tomcat的一个daemon
systemctl enable tomcat
systemctl start tomcat
netstat -luntp|grep 8080


tomcat的日志是带日期的:


查看日志:


日志格式类似于nginx 日志格式。

++++++++++++++
把tomcat的日志格式转换成json格式

vim /etc/tomcat/server.xml
139 行删除掉,添加如下内容
pattern="{"clientip":"%h","ClientUser":"%l","authenticated":"%u","AccessTime":"%t","method":"%r","status":"%s","SendBytes":"%b","Query?string":"%q","partner":"%{Referer}i","AgentVersion":"%{User-Agent}i"}"/>





保存退出,重启tomcat.
systemctl restart tomcat
清空原来的日志:
> /var/log/tomcat/localhost_access_log.2020-10-04.txt

浏览器中打开tomcat 页面,随机点取页面上内容,生成一些日志。

查看日志:确认是否为json格式
tail -f /var/log/tomcat/localhost_access_log.2020-10-04.txt


++++++++++++
修改filebeat 的配置文件
vim /etc/filebeat/filebeat.yml

这下面的是在 filebeat.inputs: 下面
- type: log
  enabled: true
  paths:
    - /var/log/tomcat/localhost_access_log.*.txt
  json.keys_under_root: true
  json.overwrite_keys: true
  tags: ["tomcat"]


这下面的是在 output.elasticsearch: 下面
- index: "tomcat-access-%{[beat.version]}-%{+yyyy.MM}"
  when.contains:
    tags: "tomcat"


保存,退出。并重启filebeat
查看ES,是否有tomcat 索引生成




登录Kibana,创建tomcat日志索引















添加要显示的key