相关疑难解决方法(0)

log4j的生产设置文件?

这是我当前的log4j设置文件.这些设置是否适合生产使用,还是应该删除/调整或更改?我问,因为我的所有线程都因为log4j阻塞而被挂起.我检查了我的打开文件描述符,我只使用了113.

# ***** Set root logger level to WARN and its two appenders to stdout and R.
log4j.rootLogger=warn, stdout, R

# ***** stdout is set to be a ConsoleAppender.
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
# ***** stdout uses PatternLayout.
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
# ***** Pattern to output the caller's file name and line number.
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n

# ***** R is set to be a RollingFileAppender.
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=logs/myapp.log
# ***** Max file size is set to 100KB
log4j.appender.R.MaxFileSize=102400KB
# ***** Keep one backup file …
Run Code Online (Sandbox Code Playgroud)

java log4j

15
推荐指数
2
解决办法
1万
查看次数

尽管isDebugEnabled为true,但log4j调试消息未显示在控制台中

我在我的项目中使用以下代码来使用log4j记录调试消息

private static final Logger LOG = Logger.getLogger(MyClass.class)
// ...
if(LOG.isDebugEnabled()) {
    LOG.debug("my log message");
}
Run Code Online (Sandbox Code Playgroud)

我可以通过在写入调试消息的行添加断点来确认我的log4j配置是否正确,即LOG.isDebugEnabled()返回true.有趣的是,我的调试消息并不在我的IDE(的IntelliJ)的控制台但是当改变显示,LOG.debug()到LOG.info()如预期将记录信息消息.

任何想法我应该寻找什么,以找出这里出了什么问题?

编辑:这是我的log4j.properties文件

log4j.appender.Stdout=org.apache.log4j.ConsoleAppender
log4j.appender.Stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.Stdout.layout.conversionPattern=%-5p [%d{dd.MM.yy HH:mm:ss}] %C{1} - %m [thread: %t]\n
log4j.appender.Stdout.threshold=info

log4j.appender.StandaloneFile=org.apache.log4j.RollingFileAppender
log4j.appender.StandaloneFile.File=logs/standalone.log
log4j.appender.StandaloneFile.MaxFileSize=5MB
log4j.appender.StandaloneFile.MaxBackupIndex=20
log4j.appender.StandaloneFile.layout=org.apache.log4j.PatternLayout
log4j.appender.StandaloneFile.layout.ConversionPattern=%-5p [%d{dd.MM.yy HH:mm:ss}] %C{1} - %m [thread: %t]\n
log4j.appender.StandaloneFile.threshold=info

log4j.rootLogger=info, Stdout, StandaloneFile
log4j.logger.com.myPacke.package1=info, Stdout, StandaloneFile

log4j.logger.com.myPacke.package2=DEBUG
Run Code Online (Sandbox Code Playgroud)

java logging log4j

12
推荐指数
1
解决办法
3万
查看次数

标签 统计

java ×2

log4j ×2

logging ×1