@SuppressWarnings("unchecked") public Log4jLoggerAdapter() { try { org.apache.log4j.Logger logger = LogManager.getRootLogger(); if (logger != null) { Enumeration<Appender> appenders = logger.getAllAppenders(); if (appenders != null) { while (appenders.hasMoreElements()) { Appender appender = appenders.nextElement(); if (appender instanceof FileAppender) { FileAppender fileAppender = (FileAppender)appender; String filename = fileAppender.getFile(); file = new File(filename); break; } } } } } catch (Throwable t) { } }
@SuppressWarnings("unchecked") public LogPageHandler() { try { org.apache.log4j.Logger logger = LogManager.getRootLogger(); if (logger != null) { Enumeration<Appender> appenders = logger.getAllAppenders(); if (appenders != null) { while (appenders.hasMoreElements()) { Appender appender = appenders.nextElement(); if (appender instanceof FileAppender) { FileAppender fileAppender = (FileAppender)appender; String filename = fileAppender.getFile(); file = new File(filename); break; } } } } } catch (Throwable t) { } }
private void setupLogging() { LogManager.getLogManager().reset(); Logger.getRootLogger().getLoggerRepository().resetConfiguration(); final Logger rootLogger = Logger.getRootLogger(); final PatternLayout layout = new PatternLayout("%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n"); final Level level = endPointHealthConfiguration.logLevel(); final ConsoleAppender consoleAppender = new ConsoleAppender(layout, ConsoleAppender.SYSTEM_ERR); consoleAppender.setThreshold(level); consoleAppender.activateOptions(); final FileAppender fileAppender = new FileAppender(); fileAppender.setFile(endPointHealthConfiguration.logFile().getAbsolutePath()); fileAppender.setLayout(layout); fileAppender.setThreshold(level); fileAppender.setAppend(true); fileAppender.setErrorHandler(new FallbackAppenderErrorHandler(rootLogger, fileAppender, consoleAppender)); rootLogger.addAppender(fileAppender); fileAppender.activateOptions(); }
public Notifier(int port) throws Exception { this.port = port; Properties properties = new Properties(); logger.addAppender(new FileAppender(new SimpleLayout(), "notifieroutputlog_" + port + ".txt")); properties.setProperty("javax.sip.STACK_NAME", "notifier" + port); // You need 16 for logging traces. 32 for debug + traces. // Your code will limp at 32 but it is best for debugging. properties.setProperty("gov.nist.javax.sip.TRACE_LEVEL", "32"); properties.setProperty("gov.nist.javax.sip.DEBUG_LOG", "notifierdebug_" + port + ".txt"); properties.setProperty("gov.nist.javax.sip.SERVER_LOG", "notifierlog_" + port + ".txt"); if(System.getProperty("enableNIO") != null && System.getProperty("enableNIO").equalsIgnoreCase("true")) { logger.info("\nNIO Enabled\n"); properties.setProperty("gov.nist.javax.sip.MESSAGE_PROCESSOR_FACTORY", NioMessageProcessorFactory.class.getName()); } // Create SipStack object sipStack = sipFactory.createSipStack(properties); logger.info("sipStack = " + sipStack); this.createProvider( ); this.udpProvider.addSipListener(this); }
private static void setUpExperimentalLogger(File pathF) throws IOException { Logger.getRootLogger().removeAllAppenders(); log.removeAllAppenders(); PropertyConfigurator.configure("resource/log4jproperties.txt"); FileAppender resultAppender = new FileAppender( new PatternLayout("%m"), new File(pathF, "result.txt").toString(), false); LevelRangeFilter infoFilter = new LevelRangeFilter(); infoFilter.setLevelMin(Level.INFO); infoFilter.setLevelMax(Level.FATAL); infoFilter.setAcceptOnMatch(true); resultAppender.addFilter(infoFilter); log.addAppender(resultAppender); Logger.getLogger(iBench.class).addAppender(resultAppender); }
private static void setUpConfigLogger(File pathF, String configName) throws IOException { Logger.getRootLogger().removeAllAppenders(); String nameSuffix = configName.replace(".txt", ""); PropertyConfigurator.configure("resource/log4jproperties.txt"); FileAppender logFileAppender = new FileAppender( new PatternLayout("%-4r [%t] %-5p %c %x - %m%n"), new File(pathF, "log_" + nameSuffix + ".txt").toString(), false); Logger.getRootLogger().addAppender(logFileAppender); if (opt.logToConsole) Logger.getRootLogger().addAppender(new ConsoleAppender( new PatternLayout("%-4r [%t] %-5p %c %x - %m%n"))); }
public LogUtil(LogConfig config, Object obj){ this.logConfig = config; if(LogConfig.logType == 0){ report = new ExtentReports(config.getExtentLogPath(),false); File configFile = new File(System.getProperty("user.dir") + "\\configs\\extent-config.xml"); if(configFile.exists()) { report.loadConfig(configFile); } testLog = report.startTest(String.valueOf(obj)); }else{ logger = Logger.getLogger(String.valueOf(obj)); Layout layout = new PatternLayout("%d{yyyy-MM-dd HH:mm:ss} [%p] %c:%L �� %m%n"); try { Appender appender = new FileAppender(layout, config.getLog4jPath()); logger.addAppender(appender); } catch (IOException e) { e.printStackTrace(); } } }
/** * 设置日志配置 * @param level * @param fileName * @param append * @return this */ public SpiderApp setLogerConfig(int level,String fileName,boolean append,String configFilename){ logMap.put("level", level); logMap.put("fileName", fileName); logMap.put("append",append); logMap.put("configFilename",configFilename); logger = Logger.getLogger(SpiderApp.class); Level logLevel = getLogLevel(level); try { FileAppender appender = new FileAppender(new SimpleLayout(), fileName,append); if(null == configFilename){ BasicConfigurator.configure(); }else{ PropertyConfigurator.configure(configFilename); } logger.addAppender(appender); logger.setLevel(logLevel); } catch (IOException e) { e.printStackTrace(System.err); } return this; }
private void reopenLogs(int counter) { Logger root = Logger.getRootLogger(); @SuppressWarnings("unchecked") Enumeration<Appender> rootAppenders = root.getAllAppenders(); FileAppender logOutput = (FileAppender) rootAppenders.nextElement(); // assume there's only the one, and that it's a file appender logOutput.setFile("log/broker" + counter + ".trace"); logOutput.activateOptions(); Logger state = Logger.getLogger("State"); @SuppressWarnings("unchecked") Enumeration<Appender> stateAppenders = state.getAllAppenders(); FileAppender stateOutput = (FileAppender) stateAppenders.nextElement(); // assume there's only the one, and that it's a file appender stateOutput.setFile("log/broker" + counter + ".state"); stateOutput.activateOptions(); }
public static void addAppender() { FileAppender fa = new FileAppender(); fa.setName("FileLogger"); String logFile = getConfHome() + System.getProperty("file.separator") + "zoofx.log"; fa.setFile(logFile); Enumeration<Appender> allAppenders = Logger.getRootLogger().getAllAppenders(); if(allAppenders.hasMoreElements()){ Appender appender = allAppenders.nextElement(); if(appender instanceof ConsoleAppender){ ConsoleAppender ca = (ConsoleAppender)appender; fa.setLayout(ca.getLayout()); fa.setThreshold(ca.getThreshold()); } fa.setAppend(true); } fa.activateOptions(); Logger.getRootLogger().addAppender(fa); }
public static Logger getLogger(final Class<?> cl, final String initFile, final String property) { Properties properties; Logger c = null; try { ManagerIni mi = initFile != null ? ManagerIni.createManagerIniFile(initFile) : ManagerIni.createManagerIniParameter(); properties = mi.getSession("FreedomLogger"); c = Logger.getLogger(cl.getCanonicalName(), myFactory); Layout layout = new PatternLayout(LAYOUT_DEFAULT); c.addAppender(new FileAppender(layout, properties.get(property).toString(), true)); } catch (Exception e) { e.printStackTrace(); } return c; }
@Before public void setUp() throws Exception { try { Files.delete(Paths.get(FILEPATH)); } catch (Exception e) { // TODO: handle exception } FileAppender fa = new FileAppender(); fa.setName("FileLogger"); fa.setFile(FILEPATH); fa.setLayout(new PatternLayout("%d %-5p [%c{1}] %m%n")); fa.setThreshold(Level.DEBUG); fa.setAppend(true); fa.activateOptions(); //add appender to any Logger (here is root) Logger.getRootLogger().addAppender(fa); }
/** * Initializes logging to a file. * @param loggerNames the names of the loggers (usually names of packages * or classes or ancestors of packages or classes). Can't be null. * @param argMap command line arguments. */ public static synchronized void initFileLogging(String[] loggerNames, ArgumentMap argMap, String filename) throws IOException { Level level = DEFAULT_FILE_LOGGING_LEVEL; if (argMap.isSet(Argument.LOG_QUIET_SHORT) || argMap.isSet(Argument.LOG_QUIET)) level = Level.ERROR; if (argMap.isSet(Argument.LOG_VERBOSE_SHORT) || argMap.isSet(Argument.LOG_VERBOSE)) level = Level.INFO; if (argMap.isSet(Argument.LOG_DEBUG_SHORT) || argMap.isSet(Argument.DEBUG)) level = Level.DEBUG; FileAppender fileAppender = new FileAppender(new PatternLayout(), filename); boolean append = true; Writer fileWriter = new FileWriter(filename, append); for (String loggerName : loggerNames) Log4jInit.setLevel(loggerName, level, fileWriter); }
/** * Setup the Log4J logger for this action thread. * @return String path to log file * @throws IOException If there's something wrong with the FileAppender. */ private void setupLog4jForAction() throws IOException { String loggerName = "Action_" + this.id; org.apache.log4j.Logger log4jLogger = org.apache.log4j.Logger.getLogger("Action_" + this.id); String logRoot = System.getProperty("LOG_ROOT"); if(logRoot == null) { logRoot = "."; } String logFilePath = logRoot + "/charles-rest/ActionsLogs/" + this.id + ".log"; File logFile = new File(logFilePath); logFile.getParentFile().mkdirs(); logFile.createNewFile();//you have to create the file yourself since FileAppender acts funny under linux if the file doesn't already exist. FileAppender fa = new FileAppender(new PatternLayout("%d %p - %m%n"), logFilePath); fa.setName(this.id + "_appender"); fa.setThreshold(Level.DEBUG); log4jLogger.addAppender(fa); log4jLogger.setLevel(Level.DEBUG); this.logger = LoggerFactory.getLogger(loggerName); }
/** * Sets up audit logging to log to a file named based on the current time (in * ms). * * The logger is configured to effectively ignore the log level. * * @throws IOException * if the audit log file could not be opened for writing. */ public static void configureAuditLogging() throws IOException { PatternLayout layout = new PatternLayout(AUDIT_LOG_FORMAT); // This assumes that no other daemon will be started within 1 millisecond. String filename = String.format(AUDIT_LOG_FILENAME_FORMAT, System.currentTimeMillis(), new Random().nextInt(Integer.MAX_VALUE)); FileAppender fileAppender = new FileAppender(layout, filename); Logger auditLogger = Logger.getLogger(Logging.AUDIT_LOGGER_NAME); auditLogger.addAppender(fileAppender); auditLogger.setLevel(Level.ALL); /* * We don't want audit messages to be appended to the main appender, which * is intended for potentially user-facing messages. */ auditLogger.setAdditivity(false); }
private static void initializeLogger() throws IOException { String logConfigFileName = ApplicationArguments.getInstance().getLoggingConfigFileName(); if (logConfigFileName != null) { PropertyConfigurator.configure(logConfigFileName); } else { ApplicationFiles appFiles = new ApplicationFiles(); String logMessagePattern = "%-4r [%t] %-5p %c %x - %m%n"; Layout layout = new PatternLayout(logMessagePattern); File logsDir = new File(appFiles.getUserSettingsDirectory(), "logs"); File updateLogFile = new File(logsDir, "updater.log"); FileAppender appender = new FileAppender(layout, updateLogFile.getAbsolutePath()); LoggerController.registerLoggerFactory(new SquirrelLoggerFactory(appender, false)); } }
public void locationInfo() throws Exception { XMLLayout xmlLayout = new XMLLayout(); xmlLayout.setLocationInfo(true); root.addAppender(new FileAppender(xmlLayout, TEMP, false)); common(); Transformer.transform( TEMP, FILTERED, new Filter[] { new LineNumberFilter(), new XMLTimestampFilter(), new XMLLineAttributeFilter(), new JunitTestRunnerFilter(), new SunReflectFilter() }); assertTrue(Compare.compare(FILTERED, "witness/xmlLayout.2")); }
public void testNull() throws Exception { XMLLayout xmlLayout = new XMLLayout(); root.addAppender(new FileAppender(xmlLayout, TEMP, false)); String oldThreadName = Thread.currentThread().getName(); Thread.currentThread().setName("main"); logger.debug("hi"); logger.debug(null); Exception e = new Exception((String) null); logger.debug("hi", e); Thread.currentThread().setName(oldThreadName); Transformer.transform( TEMP, FILTERED, new Filter[] { new LineNumberFilter(), new XMLTimestampFilter(), new JunitTestRunnerFilter(), new SunReflectFilter()}); assertTrue(Compare.compare(FILTERED, "witness/xmlLayout.null")); }
/** * Tests the format of the MDC portion of the layout to ensure * the key-value pairs we put in turn up in the output file. * @throws Exception */ public void testMDC() throws Exception { XMLLayout xmlLayout = new XMLLayout(); xmlLayout.setProperties(true); root.addAppender(new FileAppender(xmlLayout, TEMP, false)); Hashtable context = MDC.getContext(); if (context != null) { context.clear(); } MDC.put("key1", "val1"); MDC.put("key2", "val2"); logger.debug("Hello"); Transformer.transform( TEMP, FILTERED, new Filter[] { new LineNumberFilter(), new JunitTestRunnerFilter(), new XMLTimestampFilter()}); assertTrue(Compare.compare(FILTERED, "witness/xmlLayout.mdc.1")); }
public void testMDCEscaped() throws Exception { XMLLayout xmlLayout = new XMLLayout(); xmlLayout.setProperties(true); root.addAppender(new FileAppender(xmlLayout, TEMP, false)); Hashtable context = MDC.getContext(); if (context != null) { context.clear(); } MDC.put("blahAttribute", "<blah value='blah'>"); MDC.put("<blahKey value='blah'/>", "blahValue"); logger.debug("Hello"); Transformer.transform( TEMP, FILTERED, new Filter[] { new LineNumberFilter(), new JunitTestRunnerFilter(), new XMLTimestampFilter() }); assertTrue(Compare.compare(FILTERED, "witness/xmlLayout.mdc.2")); }