在运行应用程序时,我正在寻找一种关闭特定级别日志消息的方法。例如,如果将debug参数传递给我的应用程序,则应该显示带有Level.INFO的日志消息,否则不应该显示它们。但是,仍然应该显示具有SEVERE级别的日志消息。有没有一种不使用IF/ELSE语句的方法?谢谢
我使用的Java日志框架如下:
logger.log(Level.INFO, "The piece is in the pending queue");发布于 2014-12-05 12:31:26
由于有一个名为logger的Logger对象,可以使用下面的方法来设置特定对象的级别:
logger.setLevel(<level>)但是,如果项目中有多个记录器对象,并且希望为所有对象设置级别,则可以使用以下方法:
Handler[] handlers
= Logger.getLogger("").getHandlers();
for (int index = 0; index < handlers.length; index++) {
handlers[index].setLevel(<level>);
}就像希查莫夫所说的那样
发布于 2014-12-05 09:08:49
单击此处来查找配置日志。
发布于 2014-12-05 09:09:05
您可以通过java.util.logging.ConsoleHandler.level=<level>设置日志级别,其中level表示:
您需要像对待堆栈一样对待这些级别:定义您所处的位置,框架根据您选择的严重程度编写日志。例如,如果将级别设置为INFO,则将获得严重程度日志( SEVERE、WARNING和INFO )
https://stackoverflow.com/questions/27312133
复制相似问题