【发布时间】:2015-11-16 15:24:23
【问题描述】:
虽然有人问过类似的问题,但我找不到解决方案。我猜是因为配置不同。
我使用的是第 3 方 jar,但直接使用 log4j 时也遇到了同样的问题。
我正在开发 Eclipse Mars.1
我的log4j.properties如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/xml/doc-files/log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
<root>
<level value="ALL" />
<appender-ref ref="consoleAppender"/>
<appender-ref ref="fileAppender"/>
</root>
<appender name="consoleAppender" class="org.apache.log4j.ConsoleAppender" additivity="false">
<param name="Threshold" value="DEBUG" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %-5p [%X{ThreadId}] %X{MethodName} - %m%n" />
</layout>
</appender>
<appender name="fileAppender" class="org.apache.log4j.RollingFileAppender" additivity="false">
<param name="Threshold" value="DEBUG" />
<param name="append" value="true" />
<param name="maxFileSize" value="10MB" />
<param name="maxBackupIndex" value="10" />
<param name="File" value="c:\Users\administrator\Eclipse workspaces\mylog-${current.date}.log"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %-5p [%X{ThreadId}] %X{MethodName} - %m%n" />
</layout>
</appender>
</log4j:configuration>
下面是我在 Eclipse 控制台中看到的示例:
2015-11-16 17:13:33 DEBUG [] - ConferenceId = 4618311
13082 [main] DEBUG com.log.Log4jWrapperSingleton - ConferenceId = 4618311
13082 [main] DEBUG com.log.Log4jWrapperSingleton - ConferenceId = 4618311
13082 [main] DEBUG com.log.Log4jWrapperSingleton - ConferenceId = 4618311
2015-11-16 17:13:33 INFO [] - SLEEP_BETWEEN_CREATE_TO_TERMINATE_SEC waiting 2000 ms...
13083 [main] INFO com.log.Log4jWrapperSingleton - SLEEP_BETWEEN_CREATE_TO_TERMINATE_SEC waiting 2000 ms...
13083 [main] INFO com.log.Log4jWrapperSingleton - SLEEP_BETWEEN_CREATE_TO_TERMINATE_SEC waiting 2000 ms...
13083 [main] INFO com.log.Log4jWrapperSingleton - SLEEP_BETWEEN_CREATE_TO_TERMINATE_SEC waiting 2000 ms...
每次代码迭代都会增加一个重复项。如果我现在有 3 个重复的“SLEEP_BETWEEN_CREATE_TO_TERMINATE_SEC 等待”,下一个循环我将有 4 个......
你能建议吗?
谢谢。
【问题讨论】:
-
请贴出插入这些日志语句的代码部分。
-
我已经看到之前一遍又一遍地添加附加程序
-
您的代码是否多次记录调试/信息消息 - 就像在 for 循环中,有类似 for (i = 0 ; i
-
@KLibby 我使用第 3 方包装,所以我不认为发布声明会有帮助。
-
@TR1 这是一个无限循环。