最近在做一件将log4j2日志同步到elk的事,也是查阅了许多文章,趟过了n个坑,终于得到了可行的方案。下面分享给各位小伙伴
第一、是要安装elk,elk版本最好一致
elasticsearch下载地址
https://www.elastic.co/cn/downloads/past-releases#elasticsearch
kibana下载地址
https://www.elastic.co/cn/downloads/past-releases/kibana-7-10-2
logstash下载地址
https://www.elastic.co/downloads/past-releases#logstash
第二、增加修改配置
log4j2配置:log4j2.xml
<?xml version="1.0" encoding="UTF-8" ?>
<Configuration>
<Properties>
<property name="LOG_PATTERN">%d{yyyy-MM-dd HH:mm:ss.SSS} -%5p ${PID:-} [%15.15t] %-30.30C{1.} : %m%n</property>
</Properties>
<Appenders>
<Console name="Console" target="SYSTEM_OUT" follow="true">
<PatternLayout pattern="${LOG_PATTERN}" />
</Console>
<RollingFile name="RollingFile" fileName="d:/logs/main.log"
filePattern="d:/logs/$${date:yyyy-MM-dd}/xinyar-%d{MM-dd-yyyy}-%i.log.gz"
immediateFlush="false" append="true">
<PatternLayout pattern="${LOG_PATTERN}" />
<!-- 每个文件大小 -->
<!-- <SizeBasedTriggeringPolicy size="50M" /> -->
<!-- <SizeBasedTriggeringPolicy size="50KB" /> -->
<SizeBasedTriggeringPolicy size="20M" />
&l