配置这一步过程中,足足折腾了我三天,各种查资料,查官网。走了一些坑。需要说明以下几点
- 配置log4j和配置Log4j2不是一样的,之前按照配置Log4j的方式一直没有成功
- 代码中的Logger工具类一定要引用正确,不然也是没用的
- 当使用 log4j2时,spring-boot会去找src/main/resources下的log4j2.xml文件,使用log4j时,找的是log4j.properties文件
以下是我的log4j2.xml文件的内容
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="INFO">
<Appenders>
<Socket name="socket" host="192.168.1.6" port="4560">
<JsonLayout properties="true"/>
</Socket>
</Appenders>
<Loggers>
<Logger name="com.smprogram.toc.api" level="debug" >
<AppenderRef ref="socket"/>
</Logger>
</Loggers>
</Configuration>
4. Logger类package正确引入
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Logger logger=LoggerFactory.getLogger(getClass());
5. 按照以上方式最终可以正确输入日志到Logstash