Set the log output file based on the given output dir.
(File outputDir)
| 73 | * Set the log output file based on the given output dir. |
| 74 | */ |
| 75 | public static void setOutput(File outputDir) { |
| 76 | Configuration config = ((LoggerContext) LogManager.getContext(false)) |
| 77 | .getConfiguration(); |
| 78 | // new a file appender |
| 79 | FileAppender fileAppender = FileAppender |
| 80 | .newBuilder() |
| 81 | .setName(FILE_APPENDER_NAME) |
| 82 | .setLayout(config.getAppender(CONSOLE_APPENDER_NAME).getLayout()) |
| 83 | .withFileName(new File(outputDir, LOG_FILE).getAbsolutePath()) |
| 84 | .withAppend(false) |
| 85 | .build(); |
| 86 | // add the appender to the configuration |
| 87 | config.addAppender(fileAppender); |
| 88 | // add the appender ref to the root logger |
| 89 | LoggerConfig rootLogger = config.getRootLogger(); |
| 90 | rootLogger.addAppender(fileAppender, rootLogger.getLevel(), rootLogger.getFilter()); |
| 91 | fileAppender.start(); |
| 92 | logger.info("Writing log to {}", fileAppender.getFileName()); |
| 93 | } |
| 94 | } |
no test coverage detected