Advertisement
fkitspvpand

LoggerApi - Spigot

Aug 13th, 2019
166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.10 KB | None | 0 0
  1. package gmail.fopypvp174.cmantibot.logger;
  2.  
  3. import org.apache.logging.log4j.Level;
  4. import org.apache.logging.log4j.LogManager;
  5. import org.apache.logging.log4j.Marker;
  6. import org.apache.logging.log4j.core.LogEvent;
  7. import org.apache.logging.log4j.core.Logger;
  8. import org.apache.logging.log4j.core.filter.AbstractFilter;
  9. import org.apache.logging.log4j.message.Message;
  10.  
  11. public final class LoggerApi extends AbstractFilter {
  12.    
  13.     //Method for register this LoggerApi in your server
  14.     //Use this method in your method onEnable() of main class
  15.     public void registerFilter() {
  16.         Logger logger = (Logger) LogManager.getRootLogger();
  17.         logger.addFilter(this);
  18.     }
  19.  
  20.     @Override
  21.     public Result filter(LogEvent event) {
  22.         return event == null ? Result.NEUTRAL : isLoggable(event.getMessage().getFormattedMessage());
  23.     }
  24.  
  25.     @Override
  26.     public Result filter(Logger logger, Level level, Marker marker, Message msg, Throwable t) {
  27.         return isLoggable(msg.getFormattedMessage());
  28.     }
  29.  
  30.     @Override
  31.     public Result filter(Logger logger, Level level, Marker marker, String msg, Object... params) {
  32.         return isLoggable(msg);
  33.     }
  34.  
  35.     @Override
  36.     public Result filter(Logger logger, Level level, Marker marker, Object msg, Throwable t) {
  37.         return msg == null ? Result.NEUTRAL : isLoggable(msg.toString());
  38.     }
  39.  
  40.     private Result isLoggable(String msg) {
  41.         if (msg != null) {
  42.             if (msg.contains("com.mojang.authlib.GameProfile@")) {
  43.                 return Result.DENY;
  44.             } else if (msg.contains("lost connection: Disconnected")) {
  45.                 return Result.DENY;
  46.             } else if (msg.contains("left the game.")) {
  47.                 return Result.DENY;
  48.             } else if (msg.contains("logged in with entity id")) {
  49.                 return Result.DENY;
  50.             } else if (msg.contains("lost connection: Timed out")) {
  51.                 return Result.DENY;
  52.             } else if (msg.contains("UUID of player")) {
  53.                 return Result.DENY;
  54.             }
  55.         }
  56.         return Result.NEUTRAL;
  57.     }
  58.  
  59. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement