1

これは明らかかもしれませんが、特定のファイルにログを記録するために使用する簡単な例を探していました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")
    }

}
4

2 に答える 2

4

それはあなたがあなたのプロジェクトに持っているロギングの実装に依存します。クラスパスに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");
于 2013-03-08T04:21:44.580 に答える
2

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
于 2013-03-08T01:21:39.990 に答える