我正在寻找一种方法来在运行应用程序时关闭特定级别的日志消息。例如,如果向我的应用程序传递debug
参数,则应该显示带有Level.INFO
的日志消息,否则应该不显示。但是,仍应显示SEVERE
级别的日志消息。有没有办法做到这一点,而不使用IF/ELSE
陈述?由于关闭Java日志框架中的日志消息
我使用的Java日志框架是这样的:
logger.log(Level.INFO, "The piece is in the pending queue");
我正在寻找一种方法来在运行应用程序时关闭特定级别的日志消息。例如,如果向我的应用程序传递debug
参数,则应该显示带有Level.INFO
的日志消息,否则应该不显示。但是,仍应显示SEVERE
级别的日志消息。有没有办法做到这一点,而不使用IF/ELSE
陈述?由于关闭Java日志框架中的日志消息
我使用的Java日志框架是这样的:
logger.log(Level.INFO, "The piece is in the pending queue");
至于有以下方法Logger
对象命名记录器可以用来设置特定对象的级别:
logger.setLevel(<level>)
但是,如果你在一个项目中的多个记录的对象,你要设置的级别为所有的人都可以使用以下方法:
Handler[] handlers
= Logger.getLogger("").getHandlers();
for (int index = 0; index < handlers.length; index++) {
handlers[index].setLevel(<level>);
}
在这些是个E水平作为Hichamov阐明
Click here找出配置日志。
您可以设置通过java.util.logging.ConsoleHandler.level=<level>
日志级别,其中一级代表:
您需要像堆栈一样对待级别:您可以定义站点的位置,并根据您选择的严重性写入日志。例如,如果您设置级别INFO
你会得到的日志严重性SEVERE
,WARNING
和INFO