【发布时间】:2016-08-02 21:20:26
【问题描述】:
我只想将INFO 日志写入logfile,下面是我的log4j 配置
log4j.properties 文件是:
log4j.rootLogger = INFO, FILE,
log4j.appender.FILE=org.apache.log4j.RollingFileAppender
log4j.appender.FILE.File=logs.out
log4j.appender.FILE.ImmediateFlush=true
log4j.appender.FILE.Threshold=INFO
log4j.appender.FILE.Append=true
log4j.appender.FILE.MaxFileSize=100KB
log4j.appender.FILE.MaxBackupIndex=2
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern=%d{dd MMM yyyy HH:mm:ss} %5p - %m%n
Java 文件是:
import org.apache.log4j.Logger;
public class Log4jDemo {
private static Logger log=Logger.getLogger(Logger.class.getName());
public static void main(String[] args) {
log.info("info");
log.error("error");
log.fatal("fatal");
log.warn("warn");
}
}
logs.out 文件是:
12 Apr 2016 15:38:35 INFO - info
12 Apr 2016 15:38:35 ERROR - error
12 Apr 2016 15:38:35 FATAL - fatal
12 Apr 2016 15:38:35 WARN - warn
这里我在logs.out 文件中获取日志是INFO, ERROR, FATAL, WARN 但我只想将INFO 日志写入logs.out 文件?
任何人请建议,如何实现这个目标?
我的问题很独特,与 log4j 日志记录层次顺序 log4j logging hierarchy order
无关这显示了log4j框架的默认配置,但我想实现自定义的,请你帮我解决这个问题。
【问题讨论】:
-
所以您不想看到 ERROR、FATAL 或 WARN 以及它们发生的时间?
-
@javadev 这不是我的方案,为了显示 INFO 及更高版本,我只想要 INFO 日志
-
但是你为什么要隐藏错误?程序崩溃并有错误日志是好事。
-
@Tunaki 有一次我在一家公司工作,那里的开发人员将 any 日志显示为错误。事情并不总是按预期使用......所以这是我所看到的想要这个的原因之一。不过,OP 可能有完全不同的原因。