Adder EnvoyLog#attach(String) method to log specific packages
This commit is contained in:
		@@ -68,7 +68,8 @@ public class Startup {
 | 
			
		||||
			System.exit(1);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		// Set new logger levels loaded from config
 | 
			
		||||
		// Setup logger for the envoy package
 | 
			
		||||
		EnvoyLog.attach("envoy");
 | 
			
		||||
		EnvoyLog.setFileLevelBarrier(config.getFileLevelBarrier());
 | 
			
		||||
		EnvoyLog.setConsoleLevelBarrier(config.getConsoleLevelBarrier());
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -19,17 +19,14 @@ import envoy.client.data.Config;
 | 
			
		||||
 */
 | 
			
		||||
public class EnvoyLog {
 | 
			
		||||
 | 
			
		||||
	private static Logger			root;
 | 
			
		||||
	private static FileHandler		fileHandler;
 | 
			
		||||
	private static StreamHandler	consoleHandler;
 | 
			
		||||
 | 
			
		||||
	static {
 | 
			
		||||
 | 
			
		||||
		// Remove default console handler
 | 
			
		||||
		LogManager.getLogManager().reset();
 | 
			
		||||
 | 
			
		||||
		// Get root logger
 | 
			
		||||
		root = Logger.getLogger("envoy");
 | 
			
		||||
 | 
			
		||||
		// Configure log file
 | 
			
		||||
		File logFile = new File(Config.getInstance().getHomeDirectory(),
 | 
			
		||||
				"log/envoy_user_" + new SimpleDateFormat("yyyy-MM-dd--hh-mm-mm").format(new Date()) + ".log");
 | 
			
		||||
@@ -43,20 +40,34 @@ public class EnvoyLog {
 | 
			
		||||
			fileHandler = new FileHandler(logFile.getAbsolutePath());
 | 
			
		||||
			fileHandler.setLevel(Config.getInstance().getFileLevelBarrier());
 | 
			
		||||
			fileHandler.setFormatter(formatter);
 | 
			
		||||
			root.addHandler(fileHandler);
 | 
			
		||||
		} catch (SecurityException | IOException e) {
 | 
			
		||||
			e.printStackTrace();
 | 
			
		||||
		}
 | 
			
		||||
		consoleHandler = new StreamHandler(System.out, formatter);
 | 
			
		||||
		consoleHandler.setLevel(Config.getInstance().getConsoleLevelBarrier());
 | 
			
		||||
		consoleHandler.setFormatter(formatter);
 | 
			
		||||
		root.addHandler(consoleHandler);
 | 
			
		||||
 | 
			
		||||
		root.setLevel(Level.ALL);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	private EnvoyLog() {}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Configures all loggers that are contained within the hierarchy of a specific
 | 
			
		||||
	 * path
 | 
			
		||||
	 * 
 | 
			
		||||
	 * @param path the path to the loggers to configure
 | 
			
		||||
	 */
 | 
			
		||||
	public static void attach(String path) {
 | 
			
		||||
		// Get root logger
 | 
			
		||||
		Logger logger = Logger.getLogger(path);
 | 
			
		||||
 | 
			
		||||
		// Add handlers
 | 
			
		||||
		if (fileHandler != null) logger.addHandler(fileHandler);
 | 
			
		||||
		logger.addHandler(consoleHandler);
 | 
			
		||||
 | 
			
		||||
		// Delegate logger level filtering to the handlers
 | 
			
		||||
		logger.setLevel(Level.ALL);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Creates a {@link Logger} with a specified name
 | 
			
		||||
	 *
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user