3 import org.apache.logging.log4j.Logger;
4 import org.apache.logging.log4j.core.Appender;
6 import jalview.util.Log4j;
7 import jalview.util.Platform;
9 public class JLoggerLog4j extends JLogger implements JLoggerI
11 private Logger logger = null;
13 public static JLoggerLog4j getLogger(Class c)
18 public static JLoggerLog4j getLogger(Class c, LogLevel loglevel)
20 return getLogger(c.getCanonicalName(), loglevel);
23 public static JLoggerLog4j getLogger(String name)
25 return getLogger(name, LogLevel.INFO);
28 public static JLoggerLog4j getLogger(String name, LogLevel loglevel)
30 return registryContainsKey(name) ? (JLoggerLog4j) registryGet(name)
31 : new JLoggerLog4j(name, loglevel);
34 private JLoggerLog4j(String name, LogLevel level)
43 protected void loggerSetup()
46 this.logger = Log4j.isInit() ? Log4j.getLogger(this.name, this.level)
51 public boolean loggerExists()
53 return logger != null;
57 protected void loggerSetLevel(JLoggerI.LogLevel level)
61 Log4j.setLevel(logger, level);
66 protected void loggerLogMessage(LogLevel level, String message,
76 logger.fatal(message, t);
79 logger.error(message, t);
82 logger.warn(message, t);
85 logger.info(message, t);
88 logger.debug(message, t);
91 logger.trace(message, t);
94 logger.trace(message, t);
103 logger.fatal(message);
106 logger.error(message);
109 logger.warn(message);
112 logger.info(message);
115 logger.debug(message);
118 logger.trace(message);
121 logger.trace(message);
127 private Logger getLoggerObject()
132 public synchronized static void addAppender(JLoggerLog4j level,
135 if (!Platform.isJS())
136 Log4j.addAppender(level.getLoggerObject(), appender);
139 public synchronized static void addAppender(JLoggerLog4j l1,
140 JLoggerLog4j l2, String name)
142 if (!Platform.isJS())
143 Log4j.addAppender(l1.getLoggerObject(), l2.getLoggerObject(), name);