簡體   English   中英

為什么 Java 記錄 API 不顯示 FINE 消息?

[英]Why is Java Logging API not displaying FINE messages?

我想知道為什么 Java 日志記錄 API 沒有顯示更精細、更精細的消息。

我們來看下面的代碼:

logger.setLevel(Level.ALL);
logger.info("Level:" + logger.getLevel());
logger.severe("Some Fatal message%n");
logger.warning("Some WARN message%n");
logger.info("Some INFO message%n");
logger.fine("Some DEBUG message%n");
logger.finer("Some DEBUG message%n");
logger.finest("Some TRACE message%n");

我希望這會顯示每條日志消息,因為我在第一行中指定了 LogLevel.ALL。

但是它省略了好消息,這就是我所看到的:

22-08-28 16:37:25.997 信息 [全球] 級別:全部
22-08-28 16:37:26.025 嚴重 [全球] 一些致命消息
22-08-28 16:37:26.025 警告 [全局] 一些警告消息
22-08-28 16:37:26.026 INFO [global] 一些 INFO 消息

鑒於我已將級別設置為 ALL,為什么它會跳過精細、精細和精細?

您需要在Handlers上另外設置級別。 在您的情況下,處理程序是獲取實際日志事件然后將它們推送到標准輸出的東西。

logger.setLevel(Level.ALL);
for (Handler handler : logger.getParent().getHandlers()) {
    handler.setLevel(Level.ALL);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM