org.apache.log4j.Logger#getAppender ( )源码实例Demo

下面列出了org.apache.log4j.Logger#getAppender ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: davmail   文件: DavGatewayTray.java
/**
 * Open logging window.
 */
public static void showLogs() {
    Logger rootLogger = Logger.getRootLogger();
    LF5Appender lf5Appender = (LF5Appender) rootLogger.getAppender("LF5Appender");
    if (lf5Appender == null) {
        LogBrokerMonitor logBrokerMonitor = new LogBrokerMonitor(LogLevel.getLog4JLevels()) {
            @Override
            protected void closeAfterConfirm() {
                hide();
            }
        };
        lf5Appender = new LF5Appender(logBrokerMonitor);
        lf5Appender.setName("LF5Appender");
        rootLogger.addAppender(lf5Appender);
    }
    lf5Appender.getLogBrokerMonitor().show();
}
 
源代码2 项目: datacollector   文件: LogUtil.java
public static boolean registerLogger(String pipelineName, String rev, String suffix, String filename,
  Configuration configuration) {
  String loggerName = getLoggerName(pipelineName, rev, suffix);
  boolean registered;
  Logger logger = Logger.getLogger(loggerName);
  if (logger.getAppender(loggerName) != null) {
    LOG.debug("Logger '{}' already exists", loggerName);
    registered = false;
  }
  else {
    synchronized (logger) {
      if (logger.getAppender(loggerName) == null) {
        logger.setAdditivity(false);
        logger.addAppender(createRollingFileAppender(loggerName, filename, configuration));
        registered = true;
      } else {
        LOG.debug("Logger '{}' already exists", loggerName);
        registered = false;
      }
    }
  }
  return registered;
}
 
源代码3 项目: n4js   文件: N4jsUiLoggingInitializer.java
/**
 * Initializes the log4j logging with an additional appender which routes the logging to the Eclipse ErrorView.
 */
public static void init() {
	Logger rootLogger = Logger.getRootLogger();

	// # This appender will write to the Eclipse error log. It will ONLY log ERROR and FATAL messages.
	// log4j.appender.eclipse=org.eclipse.xtext.logging.EclipseLogAppender
	EclipseLogAppender eclipseAppender = new EclipseLogAppender();
	eclipseAppender.setName("eclipse");
	eclipseAppender.setThreshold(Level.ERROR);
	rootLogger.addAppender(eclipseAppender);

	// log4j.appender.eclipse.layout=org.apache.log4j.PatternLayout
	// log4j.appender.eclipse.layout.ConversionPattern=%c %x - %m%n
	eclipseAppender.setLayout(new PatternLayout("%c %x - %m%n"));

	// # EclipseLogAppender must not log to the 'eclipse' appender as that would cause a stack overflow!
	// log4j.additivity.org.eclipse.xtext.logging.EclipseLogAppender=false
	// log4j.logger.org.eclipse.xtext.logging.EclipseLogAppender=WARN, default
	Logger eclipseAppenderLogger = Logger.getLogger(EclipseLogAppender.class);
	eclipseAppenderLogger.setAdditivity(false);
	eclipseAppenderLogger.setLevel(Level.WARN);
	Appender defaultAppender = eclipseAppenderLogger.getAppender("default");
	if (eclipseAppenderLogger.getAllAppenders().hasMoreElements()) {
		eclipseAppenderLogger.removeAllAppenders();
	}
	if (defaultAppender != null) {
		eclipseAppenderLogger.addAppender(defaultAppender);
	}
}
 
源代码4 项目: ripme   文件: AbstractRipper.java
/**
 * Sets ripper's:
 *      Working directory
 *      Logger (for debugging)
 *      FileAppender
 *      Threadpool
 * @throws IOException 
 *      Always be prepared.
 */
public void setup() throws IOException {
    setWorkingDir(this.url);
    Logger rootLogger = Logger.getRootLogger();
    FileAppender fa = (FileAppender) rootLogger.getAppender("FILE");
    if (fa != null) {
        fa.setFile(this.workingDir + File.separator + "log.txt");
        fa.activateOptions();
    }

    this.threadPool = new DownloadThreadPool();
}
 
源代码5 项目: ripme   文件: AbstractRipper.java
/**
 * Notifies observers and updates state if all files have been ripped.
 */
void checkIfComplete() {
    if (observer == null) {
        LOGGER.debug("observer is null");
        return;
    }

    if (!completed) {
        completed = true;
        LOGGER.info("   Rip completed!");

        RipStatusComplete rsc = new RipStatusComplete(workingDir, getCount());
        RipStatusMessage msg = new RipStatusMessage(STATUS.RIP_COMPLETE, rsc);
        observer.update(this, msg);

        Logger rootLogger = Logger.getRootLogger();
        FileAppender fa = (FileAppender) rootLogger.getAppender("FILE");
        if (fa != null) {
            LOGGER.debug("Changing log file back to 'ripme.log'");
            fa.setFile("ripme.log");
            fa.activateOptions();
        }
        if (Utils.getConfigBoolean("urls_only.save", false)) {
            String urlFile = this.workingDir + File.separator + "urls.txt";
            try {
                Desktop.getDesktop().open(new File(urlFile));
            } catch (IOException e) {
                LOGGER.warn("Error while opening " + urlFile, e);
            }
        }
    }
}
 
源代码6 项目: development   文件: LoggerFactory.java
private static void changeFileAppenderIfNew(Logger logger,
        String fileAppenderName, RollingFileAppender newFileAppender) {
    Appender existingFileAppender = logger.getAppender(fileAppenderName);
    if (existingFileAppender == null) {
        logger.removeAppender(consoleAppender);
        logger.addAppender(newFileAppender);
    } else if (existingFileAppender != newFileAppender) {
        logger.removeAppender(existingFileAppender);
        logger.addAppender(newFileAppender);
    }
    return;
}
 
源代码7 项目: attic-apex-core   文件: LoggerUtilTest.java
private static void testAndRemoveAppender(Logger logger, String name)
{
  Appender appender = logger.getAppender(name);
  assertNotNull(appender);
  assertTrue(LoggerUtil.getAppendersNames(logger).contains(name));
  LoggerUtil.removeAppender(logger, name);
  assertNull(logger.getAppender(name));
}
 
源代码8 项目: datacollector   文件: LogUtil.java
public static void resetRollingFileAppender(String pipeline, String rev, String suffix) {
  String loggerName = getLoggerName(pipeline, rev, suffix);
  Logger logger =Logger.getLogger(loggerName);
  Appender logAppender = logger.getAppender(loggerName);
  if (logAppender != null) {
    logAppender.close();
  }
  logger.removeAppender(loggerName);
}
 
源代码9 项目: rya   文件: DemoDriver.java
private static void setupLogging() {
    // Turn off all the loggers and customize how they write to the console.
    final Logger rootLogger = LogManager.getRootLogger();
    rootLogger.setLevel(Level.OFF);
    final ConsoleAppender ca = (ConsoleAppender) rootLogger.getAppender("stdout");
    ca.setLayout(new PatternLayout("%-5p - %m%n"));


    // Turn the loggers used by the demo back on.
    log.setLevel(Level.INFO);
}
 
源代码10 项目: rya   文件: DemoUtilities.java
/**
 * Sets up log4j logging to fit the demo's needs.
 * @param loggingDetail the {@link LoggingDetail} to use.
 */
public static void setupLogging(final LoggingDetail loggingDetail) {
    // Turn off all the loggers and customize how they write to the console.
    final Logger rootLogger = LogManager.getRootLogger();
    rootLogger.setLevel(Level.OFF);
    final ConsoleAppender ca = (ConsoleAppender) rootLogger.getAppender("stdout");
    ca.setLayout(loggingDetail.getPatternLayout());

    // Turn the loggers used by the demo back on.
    //log.setLevel(Level.INFO);
    rootLogger.setLevel(Level.INFO);
}
 
源代码11 项目: rya   文件: InferenceExamples.java
public static void setupLogging() {
    final Logger rootLogger = LogManager.getRootLogger();
    final ConsoleAppender ca = (ConsoleAppender) rootLogger.getAppender("stdout");
    ca.setLayout(new PatternLayout("%d{MMM dd yyyy HH:mm:ss} %5p [%t] (%F:%L) - %m%n"));
    rootLogger.setLevel(Level.INFO);
    // Filter out noisy messages from the following classes.
    Logger.getLogger(ClientCnxn.class).setLevel(Level.OFF);
    Logger.getLogger(EmbeddedMongoFactory.class).setLevel(Level.OFF);
}
 
源代码12 项目: rya   文件: RyaClientExample.java
private static void setupLogging() {
    // Turn off all the loggers and customize how they write to the console.
    final Logger rootLogger = LogManager.getRootLogger();
    rootLogger.setLevel(Level.OFF);
    final ConsoleAppender ca = (ConsoleAppender) rootLogger.getAppender("stdout");
    ca.setLayout(new PatternLayout("%-5p - %m%n"));


    // Turn the logger used by the demo back on.
    log.setLevel(Level.INFO);
    Logger.getLogger(ClientCnxn.class).setLevel(Level.ERROR);
}
 
源代码13 项目: rya   文件: ProspectorExample.java
private static void setupLogging() {
    // Turn off all the loggers and customize how they write to the console.
    final Logger rootLogger = LogManager.getRootLogger();
    rootLogger.setLevel(Level.OFF);
    final ConsoleAppender ca = (ConsoleAppender) rootLogger.getAppender("stdout");
    ca.setLayout(new PatternLayout("%-5p - %m%n"));

    // Turn the logger used by the demo back on.
    log.setLevel(Level.INFO);
}
 
源代码14 项目: rya   文件: MongoRyaDirectExample.java
public static void setupLogging() {
    final Logger rootLogger = LogManager.getRootLogger();
    rootLogger.setLevel(Level.OFF);
    final ConsoleAppender ca = (ConsoleAppender) rootLogger.getAppender("stdout");
    ca.setLayout(new PatternLayout("%d{MMM dd yyyy HH:mm:ss} %5p [%t] (%F:%L) - %m%n"));
    rootLogger.setLevel(Level.INFO);
    // Filter out noisy messages from the following classes.
    Logger.getLogger(ClientCnxn.class).setLevel(Level.OFF);
    Logger.getLogger(EmbeddedMongoFactory.class).setLevel(Level.OFF);
}
 
@Test
public void testShardSyncerMessage() throws ClassNotFoundException {
    Logger log = Logger.getRootLogger();
    Appender a = log.getAppender("CONSOLE");
    Filter f = a.getFilter();
    assertEquals(null, f.getNext());
    assertEquals(StringMatchFilter.class, f.getClass());
    assertEquals(Filter.NEUTRAL, a.getFilter().decide(new LoggingEvent(Logger.class.toString(), log, Level.ERROR, "TestMessage", null)));
    assertEquals(Filter.DENY, a.getFilter().decide(new LoggingEvent(Logger.class.toString(), log, Level.ERROR, SHARD_SYNC_MESSAGE, null)));
    assertEquals(Filter.DENY,
        a.getFilter().decide(new LoggingEvent(Logger.class.toString(), log, Level.ERROR, "Shard shard-1234-5432-1234 " + SHARD_SYNC_MESSAGE, null)));
}
 
源代码16 项目: wings   文件: PropertiesHelper.java
private static void addFileAppender(Logger logger, String id) {
	if (logger.getAppender(id) != null)
		return;

	String filename = getProposedLogFileName(id);
	try {
		FileAppender fileappender = new FileAppender(new SimpleLayout(), filename);
		fileappender.setAppend(false);
		fileappender.setName(id);
		logger.addAppender(fileappender);
	} catch (Exception e) {
		e.printStackTrace();
	}
}
 
源代码17 项目: hadoop   文件: HttpRequestLog.java
public static RequestLog getRequestLog(String name) {

    String lookup = serverToComponent.get(name);
    if (lookup != null) {
      name = lookup;
    }
    String loggerName = "http.requests." + name;
    String appenderName = name + "requestlog";
    Log logger = LogFactory.getLog(loggerName);

    boolean isLog4JLogger;;
    try {
      isLog4JLogger = logger instanceof Log4JLogger;
    } catch (NoClassDefFoundError err) {
      // In some dependent projects, log4j may not even be on the classpath at
      // runtime, in which case the above instanceof check will throw
      // NoClassDefFoundError.
      LOG.debug("Could not load Log4JLogger class", err);
      isLog4JLogger = false;
    }
    if (isLog4JLogger) {
      Log4JLogger httpLog4JLog = (Log4JLogger)logger;
      Logger httpLogger = httpLog4JLog.getLogger();
      Appender appender = null;

      try {
        appender = httpLogger.getAppender(appenderName);
      } catch (LogConfigurationException e) {
        LOG.warn("Http request log for " + loggerName
            + " could not be created");
        throw e;
      }

      if (appender == null) {
        LOG.info("Http request log for " + loggerName
            + " is not defined");
        return null;
      }

      if (appender instanceof HttpRequestLogAppender) {
        HttpRequestLogAppender requestLogAppender
          = (HttpRequestLogAppender)appender;
        NCSARequestLog requestLog = new NCSARequestLog();
        requestLog.setFilename(requestLogAppender.getFilename());
        requestLog.setRetainDays(requestLogAppender.getRetainDays());
        return requestLog;
      }
      else {
        LOG.warn("Jetty request log for " + loggerName
            + " was of the wrong class");
        return null;
      }
    }
    else {
      LOG.warn("Jetty request log can only be enabled using Log4j");
      return null;
    }
  }
 
源代码18 项目: big-c   文件: HttpRequestLog.java
public static RequestLog getRequestLog(String name) {

    String lookup = serverToComponent.get(name);
    if (lookup != null) {
      name = lookup;
    }
    String loggerName = "http.requests." + name;
    String appenderName = name + "requestlog";
    Log logger = LogFactory.getLog(loggerName);

    boolean isLog4JLogger;;
    try {
      isLog4JLogger = logger instanceof Log4JLogger;
    } catch (NoClassDefFoundError err) {
      // In some dependent projects, log4j may not even be on the classpath at
      // runtime, in which case the above instanceof check will throw
      // NoClassDefFoundError.
      LOG.debug("Could not load Log4JLogger class", err);
      isLog4JLogger = false;
    }
    if (isLog4JLogger) {
      Log4JLogger httpLog4JLog = (Log4JLogger)logger;
      Logger httpLogger = httpLog4JLog.getLogger();
      Appender appender = null;

      try {
        appender = httpLogger.getAppender(appenderName);
      } catch (LogConfigurationException e) {
        LOG.warn("Http request log for " + loggerName
            + " could not be created");
        throw e;
      }

      if (appender == null) {
        LOG.info("Http request log for " + loggerName
            + " is not defined");
        return null;
      }

      if (appender instanceof HttpRequestLogAppender) {
        HttpRequestLogAppender requestLogAppender
          = (HttpRequestLogAppender)appender;
        NCSARequestLog requestLog = new NCSARequestLog();
        requestLog.setFilename(requestLogAppender.getFilename());
        requestLog.setRetainDays(requestLogAppender.getRetainDays());
        return requestLog;
      }
      else {
        LOG.warn("Jetty request log for " + loggerName
            + " was of the wrong class");
        return null;
      }
    }
    else {
      LOG.warn("Jetty request log can only be enabled using Log4j");
      return null;
    }
  }
 
源代码19 项目: spork   文件: Util.java
public static void removeLogAppender(Class clazz, String appenderName) {
    Logger logger = Logger.getLogger(clazz);
    Appender appender = logger.getAppender(appenderName);
    appender.close();
    logger.removeAppender(appenderName);
}