java 禁用 log4j 控制台日志记录并启用文件日志记录

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/6095992/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-10-30 14:18:34  来源:igfitidea点击:

Disable log4j console logging and enable file logging

javalogginglog4j

提问by Tapas Bose

My log4j.properties file is:

我的 log4j.properties 文件是:

log4j.rootLogger=WARN, stdout, file
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d [%t] %p [%c] - %m%n

log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=${jboss.server.log.dir}/afrodite.log
log4j.appender.file.MaxFileSize=10MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.Append=true
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d [%t] %p [%c] - %m%n

log4j.logger.info.release.scheduler=INFO, scheduler
log4j.appender.scheduler=org.apache.log4j.RollingFileAppender
log4j.appender.scheduler.File=${jboss.server.log.dir}/afrodite_scheduler.log
log4j.appender.scheduler.MaxFileSize=10MB
log4j.appender.scheduler.MaxBackupIndex=10
log4j.appender.scheduler.Append=true
log4j.appender.scheduler.layout=org.apache.log4j.PatternLayout
log4j.appender.scheduler.layout.ConversionPattern=%d [%t] %p [%c] - %m%n 

If I want to disable console output for scheduler loggerwhat should I do? That means scheduler logger only log into file not in console.

如果我想禁用调度程序记录器的控制台输出,我该怎么办?这意味着调度程序记录器只登录到文件而不是在控制台中。

Thanks and Regards.

谢谢并恭祝安康。

采纳答案by Péter T?r?k

Add this line to your config:

将此行添加到您的配置中:

log4j.appender.scheduler.additivity=false
log4j.appender.scheduler.additivity=false

log4j.additivity.info.release.scheduler=false

(sorry, first hint was incorrect.)

(抱歉,第一个提示不正确。)

回答by madhu

you can add two lines in your properties file.

您可以在属性文件中添加两行。

log4j.rootLogger=ALL, stdout, file,scheduler   (#here ALL declare for all level of logs)

log4j.logger.info.release.scheduler=INFO, scheduler
log4j.additivity.info.release.scheduler=false