e6c660be993d077efd40c334bb3081499775686c
[jalview.git] / src / jalview / util / Log4j.java
1 package jalview.util;
2
3 import java.util.Map;
4
5 import org.apache.logging.log4j.Level;
6 import org.apache.logging.log4j.LogManager;
7 import org.apache.logging.log4j.Logger;
8 import org.apache.logging.log4j.core.Appender;
9 import org.apache.logging.log4j.core.LoggerContext;
10 import org.apache.logging.log4j.core.config.Configuration;
11 import org.apache.logging.log4j.core.config.LoggerConfig;
12
13 public class Log4j
14 {
15   public static void setLevel(Logger logger, Level level)
16   {
17     LoggerContext context = (LoggerContext) LogManager.getContext(false);
18     Configuration config = context.getConfiguration();
19     LoggerConfig loggerConfig = config.getLoggerConfig(logger.getName());
20     loggerConfig.setLevel(level);
21   }
22
23   public static void setRootLevel(Level level)
24   {
25     setLevel(LogManager.getRootLogger(), level);
26   }
27
28   public static void addAppender(Logger logger, Logger logger2,
29           String name2)
30   {
31     LoggerContext context = (LoggerContext) LogManager.getContext(false);
32     Configuration config = context.getConfiguration();
33     LoggerConfig logger2Config = config.getLoggerConfig(logger2.getName());
34     Map<String, Appender> logger2AppendersMap = logger2Config
35             .getAppenders();
36     Appender appender = logger2AppendersMap.get(name2);
37     addAppender(logger, appender);
38   }
39
40   public static void addAppender(Logger logger, Appender appender)
41   {
42     LoggerContext context = (LoggerContext) LogManager.getContext(false);
43     Configuration config = context.getConfiguration();
44     LoggerConfig loggerConfig = config.getLoggerConfig(logger.getName());
45     loggerConfig.addAppender(appender, null, null);
46   }
47
48   public static void addAppenderToRootLogger(Appender appender)
49   {
50     Log4j.addAppender(LogManager.getRootLogger(), appender);
51   }
52 }