我可以使用以下代码以编程方式在应用程序上设置日志记录级别,但是也可以在包级别(例如com.somepackage。*)上执行此操作,我希望该级别仅为ERROR而不是DEBUG或INFO上说的包装?
// Sets the logging level to INFO
LoggerContext loggerContext = (LoggerContext)LoggerFactory.getILoggerFactory();
Logger rootLogger = loggerContext.getLogger(Logger.ROOT_LOGGER_NAME);
rootLogger.setLevel(Level.INFO);
但是我似乎找不到找到在软件包级别设置它的方法...
最佳答案
您应该将包名称设置为logger-name
// Sets the package level to INFO
LoggerContext loggerContext = (LoggerContext)LoggerFactory.getILoggerFactory();
Logger rootLogger = loggerContext.getLogger("com.somepackage");
rootLogger.setLevel(Level.INFO);
您应该能够使包名称更优雅,但是基本上就是这样。
这遵循Logger上下文的树状层次结构:
Logger Context
关于java - sl4j和logback-是否可以以编程方式设置程序包的日志记录级别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21368757/