java - 使用 log4j 将类日志记录到多个日志文件

标签 java logging log4j appender

我希望我的应用程序记录到两个文件:第一个文件已经存在,并将记录所有内容。第二个只会有条件地记录。

这是我的 log4j.properties:

log4j.rootCategory=DEBUG, FILE

log4j.logger.es.vf.pegaso=DEBBUG
log4j.logger.org=ERROR
log4j.logger.org.hibernate=ERROR
log4j.logger.org.displaytag=ERROR
log4j.logger.es.vf.pegaso.common.form.el.ElEvaluator=ERROR
log4j.logger.es.vf.pegaso.common.util.csvreader.CsvReaderElEvaluator=ERROR

log4j.appender.FILE=org.apache.log4j.RollingFileAppender
log4j.appender.FILE.file=log/test.log
log4j.appender.FILE.Threshold=DEBUG
log4j.appender.FILE.MaxFileSize=3MB
log4j.appender.FILE.MaxBackupIndex=10
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern=%d{dd MMM yyyy HH:mm:ss,SSS}\t%t\t%-5p\t[%c{1}]\t%m%n

要创建日志,我这样做:

private static final Logger logger = Logger.getLogger(*className*.class);

我尝试了这个,但似乎不起作用:

log4j.category.App=FILE2

log4j.appender.FILE2=org.apache.log4j.FileAppender
log4j.appender.FILE2.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE2.layout.ConversionPattern=%-22d{dd/MMM/yyyy HH:mm:ss} - %m%n
log4j.appender.FILE2.file=application.log

要调用第二个记录器,我这样做:

 private static final Logger applogger = Logger.getLogger("App");

谁能指出我的错误在哪里。

提前致谢并致以最诚挚的问候。

最佳答案

试试这个:

log4j.category.APP=DEBUG, FILE2
log4j.appender.FILE2.threshold=DEBUG
log4j.appender.FILE2=org.apache.log4j.FileAppender
log4j.appender.FILE2.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE2.layout.ConversionPattern=%-22d{dd/MMM/yyyy HH:mm:ss} - %m%n
log4j.appender.FILE2.file=application.log

关于java - 使用 log4j 将类日志记录到多个日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4749015/

相关文章:

java - JFrame添加图片的问题

api - 有没有一种方法可以将具有特定_id的文档索引到Elasticsearch中?

java - SLF4J:无法加载类“org.slf4j.impl.StaticLoggerBinder post log4j Remediation

python - 如何通过套接字检索 python.logging 日志记录

java - 为什么response.getStatus()返回200 OK,即使实际响应不是

java - 如何从 Log4j 中过滤特定的异常?

java - Spring log4j 无法在 osx 上保存日志文件

java - 从java源代码中检测UML关系

java - 在 finally block 中抛出异常

java - 以编程方式使用单个 fragment 初始化 FragmentActivity