public void setLoggerLevel(LoggerContext logContext, String loggerName, String newLevelStr) { Level newLevel = Level.getLevel(newLevelStr); Configuration configuration = logContext.getConfiguration(); LoggerConfig loggerConfig = configuration.getLoggerConfig(loggerName); if (loggerConfig.getName().equalsIgnoreCase(loggerName)) { LOG.info("Setting {} log level to: {}", loggerConfig, newLevel); loggerConfig.setLevel(newLevel); } else { // create a new config. Make it additive (true) s.t. inherit parents appenders LoggerConfig newLoggerConfig = new LoggerConfig(loggerName, newLevel, true); LOG.info("Adding config for: {} with level: {}", newLoggerConfig, newLevel); configuration.addLogger(loggerName, newLoggerConfig); } } }
@VisibleForTesting protected void setLoggerLevel(final String loggerName, final Level level) { final LoggerContext context = (LoggerContext) LogManager.getContext(false); final Configuration config = context.getConfiguration(); final LoggerConfig loggerConfig = config.getLoggerConfig(loggerName); if(loggerName.equals(loggerConfig.getName())) { loggerConfig.setLevel(level); } else { final LoggerConfig newLoggerConfig = new LoggerConfig(loggerName, level, loggerConfig.isAdditive()); newLoggerConfig.setLevel(level); config.addLogger(loggerName, newLoggerConfig); } context.updateLoggers(); }
conf.addLogger(loggerName, new LoggerConfig(loggerName, logLevel, true)); } else { if (LOG.isDebugEnabled()) {
@Override public void setLogLevel(String loggerName, LogLevel logLevel) { Level level = LEVELS.convertSystemToNative(logLevel); LoggerConfig loggerConfig = getLoggerConfig(loggerName); if (loggerConfig == null) { loggerConfig = new LoggerConfig(loggerName, level, true); getLoggerContext().getConfiguration().addLogger(loggerName, loggerConfig); } else { loggerConfig.setLevel(level); } getLoggerContext().updateLoggers(); }
specificConfig = new LoggerConfig(className, Log4j2LevelAdjuster.this.level, true); specificConfig.setParent(loggerConfig); config.addLogger(className, specificConfig); specificConfig = new LoggerConfig(category, Log4j2LevelAdjuster.this.level, true); specificConfig.setParent(loggerConfig); config.addLogger(category, specificConfig);
specificConfig = new LoggerConfig(className, Log4j2LevelAdjuster.this.level, true); specificConfig.setParent(loggerConfig); config.addLogger(className, specificConfig); specificConfig = new LoggerConfig(category, Log4j2LevelAdjuster.this.level, true); specificConfig.setParent(loggerConfig); config.addLogger(category, specificConfig);
public static void removeAppender(final Logger logger, final Appender appender) { final LoggerContext ctx = (LoggerContext) LogManager.getContext(false); final Configuration config = ctx.getConfiguration(); LoggerConfig loggerConfig = config.getLoggerConfig(logger.getName()); if (!logger.getName().equals(loggerConfig.getName())) { loggerConfig = new LoggerConfig(logger.getName(), logger.getLevel(), true); config.addLogger(logger.getName(), loggerConfig); } loggerConfig.removeAppender(appender.getName()); ctx.updateLoggers(); }
public static void addAppender(final Logger logger, final Appender appender) { final LoggerContext ctx = (LoggerContext) LogManager.getContext(false); final Configuration config = ctx.getConfiguration(); config.addAppender(appender); LoggerConfig loggerConfig = config.getLoggerConfig(logger.getName()); if (!logger.getName().equals(loggerConfig.getName())) { loggerConfig = new LoggerConfig(logger.getName(), logger.getLevel(), true); config.addLogger(logger.getName(), loggerConfig); } loggerConfig.addAppender(appender, null, null); ctx.updateLoggers(); }
public static void setLevel(Logger logger, Level level) { final LoggerContext ctx = (LoggerContext) LogManager.getContext(false); final Configuration config = ctx.getConfiguration(); LoggerConfig loggerConfig = config.getLoggerConfig(logger.getName()); LoggerConfig specificConfig = loggerConfig; // We need a specific configuration for this logger, // otherwise we would change the level of all other loggers // having the original configuration as parent as well if (!loggerConfig.getName().equals(logger.getName())) { specificConfig = new LoggerConfig(logger.getName(), level, true); specificConfig.setParent(loggerConfig); config.addLogger(logger.getName(), specificConfig); } specificConfig.setLevel(level); ctx.updateLoggers(); }
private static boolean setLevel(final String loggerName, final Level level, final Configuration config) { boolean set; LoggerConfig loggerConfig = config.getLoggerConfig(loggerName); if (!loggerName.equals(loggerConfig.getName())) { // TODO Should additivity be inherited? loggerConfig = new LoggerConfig(loggerName, level, true); config.addLogger(loggerName, loggerConfig); loggerConfig.setLevel(level); set = true; } else { set = setLevel(loggerConfig, level); } return set; }
private static boolean setLevel(final String loggerName, final Level level, final Configuration config) { boolean set; LoggerConfig loggerConfig = config.getLoggerConfig(loggerName); if (!loggerName.equals(loggerConfig.getName())) { // TODO Should additivity be inherited? loggerConfig = new LoggerConfig(loggerName, level, true); config.addLogger(loggerName, loggerConfig); loggerConfig.setLevel(level); set = true; } else { set = setLevel(loggerConfig, level); } return set; }
private static Map<String, Level> setLogLevels(Map<String, Level> logLevels) { LoggerContext ctx = LoggerContext.getContext(false); Configuration config = ctx.getConfiguration(); Map<String, Level> oldLevels = new HashMap<>(); logLevels.forEach((loggerName, level) -> { LoggerConfig logConfig = config.getLoggerConfig(loggerName); // what the initial logger level was. It will use the root value if logger is being defined for the first time oldLevels.put(loggerName, logConfig.getLevel()); if (loggerName.equals(logConfig.getName())) { logConfig.setLevel(level); } else { LoggerConfig loggerConfig = new LoggerConfig(loggerName, level, true); loggerConfig.setLevel(level); config.addLogger(loggerName, loggerConfig); } }); ctx.updateLoggers(); return oldLevels; }
import org.apache.logging.log4j.core.LoggerContext; import org.apache.logging.log4j.core.config.AbstractConfiguration; ... public static void changeLoggerLevel(final String module, final Level level) { String moduleRenamed = module.replaceAll("/", "."); LoggerContext ctx = (LoggerContext)LogManager.getContext(false); AbstractConfiguration configuration = (AbstractConfiguration) ctx .getConfiguration(); if (configuration.getLogger(moduleRenamed) != null) { LoggerConfig loggerConfig = configuration.getLoggerConfig(moduleRenamed); loggerConfig.setLevel(level); } else { LoggerConfig loggerConfig = new LoggerConfig(moduleRenamed, level, true); configuration.addLogger(moduleRenamed, loggerConfig); } ctx.updateLoggers(configuration); }
static void updateLogger(String file_name, String appender_name, String package_name){ LoggerContext context = (LoggerContext) LogManager.getContext(false); Configuration configuration = context.getConfiguration(); Layout<? extends Serializable> old_layout = configuration.getAppender(appender_name).getLayout(); //delete old appender/logger configuration.getAppender(appender_name).stop(); configuration.removeLogger(package_name); //create new appender/logger LoggerConfig loggerConfig = new LoggerConfig(package_name, Level.INFO, false); FileAppender appender = FileAppender.createAppender(file_name, "false", "false", appender_name, "true", "true", "true", "8192", old_layout, null, "false", "", configuration); appender.start(); loggerConfig.addAppender(appender, Level.INFO, null); configuration.addLogger(package_name, loggerConfig); context.updateLoggers(); }
@VisibleForTesting protected void setLoggerLevel(final String loggerName, final Level level) { final LoggerContext context = (LoggerContext) LogManager.getContext(false); final Configuration config = context.getConfiguration(); final LoggerConfig loggerConfig = config.getLoggerConfig(loggerName); if(loggerName.equals(loggerConfig.getName())) { loggerConfig.setLevel(level); } else { final LoggerConfig newLoggerConfig = new LoggerConfig(loggerName, level, loggerConfig.isAdditive()); newLoggerConfig.setLevel(level); config.addLogger(loggerName, newLoggerConfig); } context.updateLoggers(); }
public static void addAppender(final Logger logger, final Appender appender) { final LoggerContext ctx = (LoggerContext) LogManager.getContext(false); final Configuration config = ctx.getConfiguration(); config.addAppender(appender); LoggerConfig loggerConfig = config.getLoggerConfig(logger.getName()); if (!logger.getName().equals(loggerConfig.getName())) { loggerConfig = new LoggerConfig(logger.getName(), logger.getLevel(), true); config.addLogger(logger.getName(), loggerConfig); } loggerConfig.addAppender(appender, null, null); ctx.updateLoggers(); }
private static LoggerConfig getLoggerConfig() { LoggerContext loggerContext = (LoggerContext) LogManager.getContext(false); Configuration configuration = loggerContext.getConfiguration(); configuration.addLogger(LOGGER_NAME, new LoggerConfig()); return configuration.getLoggerConfig(LOGGER_NAME); } }
public static void removeAppender(final Logger logger, final Appender appender) { final LoggerContext ctx = (LoggerContext) LogManager.getContext(false); final Configuration config = ctx.getConfiguration(); LoggerConfig loggerConfig = config.getLoggerConfig(logger.getName()); if (!logger.getName().equals(loggerConfig.getName())) { loggerConfig = new LoggerConfig(logger.getName(), logger.getLevel(), true); config.addLogger(logger.getName(), loggerConfig); } loggerConfig.removeAppender(appender.getName()); ctx.updateLoggers(); }
public static void addAppender(final Logger logger, final Appender appender) { final LoggerContext ctx = (LoggerContext) LogManager.getContext(false); final Configuration config = ctx.getConfiguration(); config.addAppender(appender); LoggerConfig loggerConfig = config.getLoggerConfig(logger.getName()); if (!logger.getName().equals(loggerConfig.getName())) { loggerConfig = new LoggerConfig(logger.getName(), logger.getLevel(), true); config.addLogger(logger.getName(), loggerConfig); } loggerConfig.addAppender(appender, null, null); ctx.updateLoggers(); }
public static void removeAppender(final Logger logger, final Appender appender) { final LoggerContext ctx = (LoggerContext) LogManager.getContext(false); final Configuration config = ctx.getConfiguration(); LoggerConfig loggerConfig = config.getLoggerConfig(logger.getName()); if (!logger.getName().equals(loggerConfig.getName())) { loggerConfig = new LoggerConfig(logger.getName(), logger.getLevel(), true); config.addLogger(logger.getName(), loggerConfig); } loggerConfig.removeAppender(appender.getName()); ctx.updateLoggers(); }