的standard Java logging定義了以下日誌級別:如何定義附加的Java日誌級別?
- 嚴重(最高)
- 警告
- INFO
- CONFIG
- FINE
- FINER
- FINEST
這與RFC 5424不兼容,因爲它缺少INFO和WARNING之間的NOTICE級別。 Java缺少一些額外的日誌級別(錯誤,危急,警報和緊急情況),但NOTICE是傷害我的一個。
有什麼辦法來擴展可能的日誌級別的列表,以添加缺少的通知級別?還是有必要重寫整個日誌?
的standard Java logging定義了以下日誌級別:如何定義附加的Java日誌級別?
這與RFC 5424不兼容,因爲它缺少INFO和WARNING之間的NOTICE級別。 Java缺少一些額外的日誌級別(錯誤,危急,警報和緊急情況),但NOTICE是傷害我的一個。
有什麼辦法來擴展可能的日誌級別的列表,以添加缺少的通知級別?還是有必要重寫整個日誌?
這應該工作
class Level2 extends Level {
public static final Level2 NOTICE = new Level2("NOTICE", 850);
private Level2(String name, int level) {
super(name, level);
}
}
您可以擴展Level class
並提供更多功能。
感謝葉夫根尼。這是完整的例子:
SyslogLevel
import java.util.logging.Level; public class SyslogLevel extends Level { public static SyslogLevel EMERG = new SyslogLevel("EMERG", 1100); public static SyslogLevel ALERT = new SyslogLevel("ALERT", 1000); public static SyslogLevel ERR = new SyslogLevel("ERR", 950); public static SyslogLevel WARNING = new SyslogLevel("WARNING", 900); public static SyslogLevel NOTICE = new SyslogLevel("NOTICE", 850); public static SyslogLevel INFO = new SyslogLevel("INFO", 800); public static SyslogLevel DEBUG = new SyslogLevel("DEBUG", 300); protected SyslogLevel (String name, int value, String resourceBundleName) { super (name, value, resourceBundleName); } protected SyslogLevel (String name, int value) { super (name, value); } }
記錄
import java.util.logging.Logger; import java.util.logging.Level; import java.util.logging.FileHandler; import java.util.logging.SimpleFormatter; public class logging { public static void main(String[] args) { Logger logger = Logger.getLogger ("MyLog"); FileHandler fh; try { fh = new FileHandler ("logging.log", true); logger.addHandler (fh); logger.setLevel (Level.ALL); fh.setFormatter (new SimpleFormatter()); logger.log (SyslogLevel.NOTICE, "Run!"); } catch (java.io.IOException e) { e.printStackTrace(); } } }
請注意,本例中忘記了「CRITICAL」級別。謝謝,但是非常有用! – Loek 2017-10-03 14:23:47
什麼是850? IBM代碼頁? ;-) – ceving 2013-02-28 10:36:37
這是從FINEST = 300到SEVERE = 1000的日誌級別。INFO = 800 WARNING = 900 – 2013-02-28 10:43:20
我的錯誤已修復 – 2013-02-28 11:18:11