繁体   English   中英

如何使用org.apache.commons.logging登录到文件?

[英]How to log to a file with org.apache.commons.logging?

这可能很明显,但是我一直在寻找一个使用org.apache.commons.logging登录到特定文件(例如/path/to/my-log.txt )的简单示例。

public class MyClass {

    static Log log = LogFactory.getLog(MyClass.class);

    public static void main(String[] args) {

        // What to do here to get log to output to a file???

        log.info("I want to appear in a specific log file")
    }

}

这取决于项目中的日志记录实现。 如果在类路径上没有log4j,则commons-logging默认为java.util.logging。 在这种情况下,您需要配置java.util.logging.FileHander。 您可以通过logging.properties文件或以编程方式进行操作

    Logger.getGlobal().addHandler(new FileHandler("log"));
    LogFactory.getLog(MyClass.class).info("/path/to/mylog.log");

Commons-Logging只是一个日志外观,您应该使用Log4j或JDK-Logging进行真正的日志记录任务,您可以设置日志文件。

http://logging.apache.org/log4j/1.2/http://logging.apache.org/log4j/2.x/

它的配置文件如下所示:

log4j.rootLogger=info, stdout, R
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p %d{yy-MM-dd HH:mm:ss} %c:%L - %m%n
log4j.appender.R.File=/path/to/mylog.log

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM