今天继续给大家介绍Linux运维相关知识,本文主要内容是Logstash收集Tomcat日志。
一、Tomcat服务部署
在之前的文章中,我们尝试进行了系统日志文件的收集以及多文件的收集,今天,我们尝试进行Tomcat日志收集的实战。
区别与系统日志以及安全日志,在进行Tomcat日志收集时,我们需要对Tomcat服务进行一些配置,将Tomcat的日志转化成JSON格式。
Tomcat部署详情请见文章Tomcat详解(二)——tomcat安装与配置
Tomcat安装完成后,我们打开Tomcat的配置文件,/usr/local/tomcat/conf/server.xml,找到日志配置部分,将其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配置文件如下所示:
这样,Tomcat的日志结果如下:
二、Logstash配置
在完成上述配置后,我们来简单配置以下Logstash。与之前的配置相同,我们先写Logstash的配置文件,将其命名为logstash-tomcat,内容如下所示:
input{
file{
path=>"/usr/local/tomcat/logs/localhost_access_log.2022-04-05.txt"
type=>"tomcat"
start_position=>"beginning"
stat_interval=>"5"
}
}
output{
elasticsearch{
hosts=>["192.168.136.101:9200"]
index=>"tomcatlog-%{+YYYY.MM.dd}"
}
}
在上述配置中,我们很简单的将Tomcat中的日志读取,并输出到我们的Elastics中。
之后,我们执行命令:
logstash -f /etc/elasticsearch/conf.d/log-tomcat.conf
该命令执行结果如下:
三、效果检验
最后,我们来检验一下刚才的配置结果。
打开Elasticsearch的Head插件,刷新我们的索引,结果如下所示:
然后,打开Kibana,输入我们刚才配置的日志,并进行添加,结果如下所示:
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200