我有一个多线程应用程序,我使用Log4j进行日志记录。我面临的问题是日志一旦被触发就会被追加。因此,不同线程的日志会在触发时出现。我所需要的只是从类的方法触发的日志,即使它们在以后的某个时间点被调用,它们的日志也在一起。
答案 0 :(得分:0)
使用异步日志记录,在log4j.xml中尝试类似
的内容<appender name="messages" class="FileAppender">
<param name="File" value="messages.log"/>
</appender>
<appender name="messages-async" class="org.apache.log4j.AsyncAppender">
<param name="LocationInfo" value="true"/>
<appender-ref ref="messages"/>
</appender>
<logger name="messages" additivity="false">
<level value="info"/>
<appender-ref ref="messages-async"/>
</logger>
或者,看看log4j2。