【问题标题】:Log4j 1.x to Log4j 2.1.1 migration issueLog4j 1.x 到 Log4j 2.1.1 迁移问题
【发布时间】:2019-02-05 09:44:38
【问题描述】:

我正在尝试将代码迁移到版本 2。但是,在 log4j 2.1.1 中寻找 getCurrentLoggers 的替代方法时遇到了一些问题

导入 org.apache.logging.log4j.LogManager.getCurrentLoggers();不存在。

    private ArrayList<LoggerName> getLoggerList() {

    // Generate a list of all the loggers and levels
    ArrayList<String> al = new ArrayList<String>();
    HashMap<Object, Object> hm = new HashMap<Object, Object>();
    ArrayList<LoggerName> list = new ArrayList<LoggerName>();

    // Get RootLogger
    Logger rootLogger = LogManager.getRootLogger();
    String rootLoggerName = rootLogger.getName();
    al.add(rootLoggerName);
    hm.put(rootLoggerName, rootLogger);

    // All Other Loggers ISSUE HERE

    Enumeration e = LogManager.getCurrentLoggers();

    while (e.hasMoreElements()) {               
        Logger t1Logger = (Logger) e.nextElement();
        String loggerName = t1Logger.getName();
        al.add(loggerName);
        hm.put(loggerName, t1Logger);       
    }

    String[] alLoggerStr = ((String[]) al.toArray(new String[0]));
    Arrays.sort(alLoggerStr);
    for (int i=0; i < alLoggerStr.length; i++) { 
        Logger logger = (Logger) hm.get(alLoggerStr[i]);

        String name = logger.getName();
        String level = logger.getLevel().toString();
        String parent = GenFuncs.EMPTY_STRING;
        if (logger.getParent() != null) {
            parent = (logger.getParent().getName();
        }
        LoggerName logData = new LoggerNameImpl(name, parent, level);

        list.add(logData);
    }
    return list;
}

【问题讨论】:

    标签: log4j log4j2


    【解决方案1】:

    Stack Overflow找到答案

    File configFile = new File("c:\\my_path\\log4j2.xml");
    LoggerContext loggerContext = Configurator.initialize("my_config", null, configFile.toURI());
    Configuration configuration = loggerContext.getConfiguration();
    Collection<LoggerConfig> loggerConfigs = configuration.getLoggers().values();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-01-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-10
      • 2011-07-13
      • 1970-01-01
      相关资源
      最近更新 更多