我已经开始使用spring boot和gradle了,我正在尝试使用log4j2进行日志记录。 我是第一次编译和构建:
gradlew clean build
然后执行jar:
java -jar build/libs/java-apns-notifier-0.1.0.jar
执行jar后,我可以在控制台中看到日志,但在log4j2.xml(D:/temp/logs/apns.log)中提到的文件中没有。在该文件中,我只能看到springframework的日志,但不能看到我的代码 问题是如何使这个简单的场景工作? 我想看到我的日志也出现在日志文件中。
以下是源代码:Java Apple Push Notification Service Notifier
重要!
我最近注意到日志出现了。但只有在我杀死这个过程之后。
所以在这里澄清一下发生了什么:
java -jar build / libs / java-apns-notifier-0.1.0.jar
- >日志文件中没有任何内容
答案 0 :(得分:1)
由于您正在使用
,因此日志需要一些时间才能显示在您的日志文件中immediateFlush="false"
如果将其切换为 true ,您会看到日志立即显示,但可能会影响应用程序的性能。
默认情况下, bufferedIO true 且 bufferSize 8192字节。这意味着只有在缓冲区有8192个字符后才会将日志写入磁盘。
有关详细信息,请参阅https://logging.apache.org/log4j/2.x/manual/appenders.html。