Mercurial Hosting > nabble
view src/nabble/utils/Log4j.java @ 0:7ecd1a4ef557
add content
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Thu, 21 Mar 2019 19:15:52 -0600 |
parents | |
children |
line wrap: on
line source
package nabble.utils; import java.io.IOException; import fschmidt.util.log4j.MultiAppender; import org.apache.log4j.Appender; import org.apache.log4j.LogManager; import org.apache.log4j.Logger; import org.apache.log4j.PatternLayout; import org.apache.log4j.ConsoleAppender; import org.apache.log4j.FileAppender; import org.apache.log4j.Level; import org.apache.log4j.RollingFileAppender; public final class Log4j { private static final PatternLayout LAYOUT = new PatternLayout("%d | %-5p | %c - %m%n"); public static void initForConsole() { Logger.getRootLogger().setLevel(Level.INFO); PatternLayout layout = new PatternLayout("%d{HH:mm:ss} %-5p %c - %m%n"); ConsoleAppender appender = new ConsoleAppender(layout,"System.err"); Logger.getRootLogger().addAppender(appender); } public static void initForFile(Level level, String fileName) throws IOException { Logger.getRootLogger().setLevel(level); PatternLayout layout = new PatternLayout("%d | %-5p | %c - %m%n"); FileAppender appender = new FileAppender(layout,fileName); Logger.getRootLogger().addAppender(appender); } public static void initBasicFiles(String infoFile, String warnFile, String errorFile, String maxFileSize) throws IOException { LogManager.getLoggerRepository().setThreshold(Level.INFO); RollingFileAppender infoAppender = new RollingFileAppender(LAYOUT, infoFile); infoAppender.setMaxFileSize(maxFileSize); infoAppender.setThreshold(Level.INFO); RollingFileAppender warnAppender = new RollingFileAppender(LAYOUT, warnFile); warnAppender.setMaxFileSize(maxFileSize); warnAppender.setThreshold(Level.WARN); RollingFileAppender errorAppender = new RollingFileAppender(LAYOUT, errorFile); errorAppender.setMaxFileSize(maxFileSize); errorAppender.setThreshold(Level.ERROR); MultiAppender appender = new MultiAppender(new Appender[] { infoAppender, warnAppender, errorAppender }); Logger.getRootLogger().addAppender(appender); } public static void initForClass(String className, String fileName, String maxFileSize) throws IOException { Logger logger = Logger.getLogger(className); RollingFileAppender appender = new RollingFileAppender(LAYOUT, fileName); appender.setMaxFileSize(maxFileSize); logger.addAppender(appender); } private Log4j() {} // never }