如何更改log4j SyslogAppender的级别转换?

时间:2011-06-21 17:35:24

标签: java log4j syslog

默认情况下,log4j中的FATAL级别将映射到Syslog中的紧急情况。由于我们公司的IT系统日志使用要求,我需要使用FATAL来映射到系统日志警报。

有谁知道一个简单的方法来实现这个目标?

1 个答案:

答案 0 :(得分:1)

有关如何通过覆盖SyslogAppender类中的append方法来执行此操作的指导here。 afai可以看到log4j中的映射是硬编码的。

  

如果你使用logger.fatal(),那么   标准log4j syslog appender会   以最高的方式记录此消息   syslog严重性,级别为0,   “EMERG”。这个级别通常是   保留用于最紧急的操作   系统相关的消息和大多数   Unix系统将打印消息   每个记录的终端会话   在用户中。对于大多数应用程序,这   可能不是你想要的。如果   应用程序遇到致命错误,   它应该将消息记录为较低的   等级“关键”,等级2.你   可以通过实施一个   覆盖“追加”的appender   方法