1. jdkディレクトリのconfに入っているlogging.propertiesをプロジェクトにコピーする。 デフォルトだとHandlersがConsoleHandlerだけなので、FileHandlerを追加してファイルに出力するように設定する。
handlers= java.util.logging.ConsoleHandler,java.util.logging.FileHandler2. FileHandlerのformatterがXMLFormatterになっているので、SimpleFormatterを設定する。
java.util.logging.FileHandler.formatter = java.util.logging.SimpleFormatter3. ファイルの出力先がユーザのホームディレクトリ直下に出力するようになっているので適当に変更する。
java.util.logging.FileHandler.pattern = logtest.log4. コードを実装。(以下のサンプルは"logging.properties"がカレントディレクトリにある想定。)
import java.io.IOException;
import java.io.InputStream;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.logging.Level;
import java.util.logging.LogManager;
import java.util.logging.Logger;
public class Main {
static Logger myLogger = Logger.getLogger("MyLogger");
static {
try(InputStream is = Files.newInputStream(Paths.get("logging.properties"))){
LogManager.getLogManager().readConfiguration(is);
}catch(IOException e) {
System.err.println("Failed to read configration file");
System.exit(1);
}
}
public static void main(String args[]) {
myLogger.log(Level.INFO, "Info level log");
}
}
0 件のコメント:
コメントを投稿