Advertisement
Guest User

Untitled

a guest
Jul 7th, 2020
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.16 KB | None | 0 0
  1. package de.blablubbabc.test2;
  2.  
  3. import java.util.logging.Level;
  4. import java.util.logging.Logger;
  5.  
  6. import org.apache.logging.log4j.LogManager;
  7. import org.bukkit.plugin.Plugin;
  8.  
  9. public class TestLogLevels {
  10.  
  11.     private static final Level[] LEVEL_VALUES = new Level[] {
  12.             Level.OFF, Level.SEVERE, Level.WARNING, Level.INFO,
  13.             Level.CONFIG, Level.FINE, Level.FINER, Level.FINEST, Level.ALL
  14.     };
  15.  
  16.     public static void onEnable(Plugin plugin) {
  17.         Logger pluginLogger = plugin.getLogger();
  18.         Logger rootLogger = Logger.getLogger("");
  19.         org.apache.logging.log4j.core.Logger log4jRootLogger = (org.apache.logging.log4j.core.Logger) LogManager.getRootLogger();
  20.         org.apache.logging.log4j.core.Logger pluginLog4jLogger = (org.apache.logging.log4j.core.Logger) LogManager.getLogger(pluginLogger.getName());
  21.  
  22.         // Default
  23.         printAllLoggers(pluginLogger);
  24.         printAllLog4jLoggers(pluginLog4jLogger);
  25.         logOnAllLevels(pluginLogger);
  26.  
  27.         // Plugin logger
  28.         System.out.println("Setting plugin logger level to: " + Level.ALL);
  29.         pluginLogger.setLevel(Level.ALL);
  30.         printAllLoggers(pluginLogger);
  31.         printAllLog4jLoggers(pluginLog4jLogger);
  32.         logOnAllLevels(pluginLogger);
  33.  
  34.         // Plugin log4j logger
  35.         System.out.println("Setting plugin log4j logger level to: " + Level.ALL);
  36.         pluginLog4jLogger.setLevel(org.apache.logging.log4j.Level.ALL);
  37.         printAllLoggers(pluginLogger);
  38.         printAllLog4jLoggers(pluginLog4jLogger);
  39.         logOnAllLevels(pluginLogger);
  40.  
  41.         // Root logger
  42.         System.out.println("Setting root logger level to: " + Level.ALL);
  43.         rootLogger.setLevel(Level.ALL);
  44.         printAllLoggers(pluginLogger);
  45.         printAllLog4jLoggers(pluginLog4jLogger);
  46.         logOnAllLevels(pluginLogger);
  47.  
  48.         // Log4j root logger
  49.         System.out.println("Setting log4j root logger level to: " + Level.ALL);
  50.         log4jRootLogger.setLevel(org.apache.logging.log4j.Level.ALL);
  51.         printAllLoggers(pluginLogger);
  52.         printAllLog4jLoggers(pluginLog4jLogger);
  53.         logOnAllLevels(pluginLogger);
  54.  
  55.         // All loggers
  56.         setAllLogLevels(pluginLogger, Level.ALL);
  57.         printAllLoggers(pluginLogger);
  58.         printAllLog4jLoggers(pluginLog4jLogger);
  59.         logOnAllLevels(pluginLogger);
  60.  
  61.         // All Log4j loggers
  62.         setAllLog4JLogLevels(pluginLog4jLogger, org.apache.logging.log4j.Level.ALL);
  63.         printAllLoggers(pluginLogger);
  64.         printAllLog4jLoggers(pluginLog4jLogger);
  65.         logOnAllLevels(pluginLogger);
  66.     }
  67.  
  68.     private static void printAllLoggers(Logger logger) {
  69.         System.out.println("------ Loggers overview");
  70.         Logger current = logger;
  71.         while (current != null) {
  72.             System.out.println("Logger '" + current.getName() + "' has level " + current.getLevel());
  73.             current = current.getParent();
  74.         }
  75.         System.out.println("------");
  76.     }
  77.  
  78.     private static void printAllLog4jLoggers(org.apache.logging.log4j.core.Logger logger) {
  79.         System.out.println("------ Log4j loggers overview");
  80.         org.apache.logging.log4j.core.Logger current = logger;
  81.         while (current != null) {
  82.             System.out.println("Log4j Logger '" + current.getName() + "' has level " + current.getLevel());
  83.             current = current.getParent();
  84.         }
  85.         System.out.println("------");
  86.     }
  87.  
  88.     private static void setAllLogLevels(Logger logger, Level level) {
  89.         System.out.println("------ Setting all logger levels");
  90.         Logger current = logger;
  91.         while (current != null) {
  92.             System.out.println("Setting level of Logger '" + current.getName() + "' to level " + level);
  93.             current.setLevel(level);
  94.             current = current.getParent();
  95.         }
  96.         System.out.println("------");
  97.     }
  98.  
  99.     private static void setAllLog4JLogLevels(org.apache.logging.log4j.core.Logger logger, org.apache.logging.log4j.Level level) {
  100.         System.out.println("------ Setting all log4j logger levels");
  101.         org.apache.logging.log4j.core.Logger current = logger;
  102.         while (current != null) {
  103.             System.out.println("Setting level of log4j Logger '" + current.getName() + "' to level " + level);
  104.             current.setLevel(level);
  105.             current = current.getParent();
  106.         }
  107.         System.out.println("------");
  108.     }
  109.  
  110.     private static void logOnAllLevels(Logger logger) {
  111.         System.out.println("------ Logging on all levels");
  112.         for (Level level : LEVEL_VALUES) {
  113.             logger.log(level, "A message with level " + level.getName());
  114.         }
  115.         System.out.println("------");
  116.     }
  117. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement