【发布时间】:2017-07-05 11:13:36
【问题描述】:
我想为我的 log4j.xml 文件添加自定义日志记录级别安全性,此日志级别应高于调试级别且低于级别跟踪。如何在 log4j.xml 文件中配置自定义日志记录级别以及何时使用调试级别在 log4j.xml 文件的根元素中,不应在日志文件中打印日志级别安全性,而如果我在 log4j.xml 文件的根元素中使用自定义级别安全性,则应打印所有级别的安全性但不跟踪。
【问题讨论】:
我想为我的 log4j.xml 文件添加自定义日志记录级别安全性,此日志级别应高于调试级别且低于级别跟踪。如何在 log4j.xml 文件中配置自定义日志记录级别以及何时使用调试级别在 log4j.xml 文件的根元素中,不应在日志文件中打印日志级别安全性,而如果我在 log4j.xml 文件的根元素中使用自定义级别安全性,则应打印所有级别的安全性但不跟踪。
【问题讨论】:
Log4J 2 支持自定义日志级别。可以在代码或配置中定义自定义日志级别。
要在配置(log4j.xml)中创建自定义日志级别,请使用以下示例 sn-p,
<CustomLevels>
<CustomLevel name="CUSTOM" intLevel="350" />
</CustomLevels>
intLevel 参数(上例中为 350)确定自定义级别相对于 Log4J 2 内置的标准级别的位置。
在你的情况下, 由于您需要高于 DEBUG 且低于 TRACE 的日志级别,请在 log4j.xml 中使用以下代码 sn-p
<CustomLevels>
<CustomLevel name="CUSTOM" intLevel="550" />
</CustomLevels>
由于 DEBUG 的 intLevel 为 500,TRACE 为 600(根据 Log4J 2),我们将自定义日志级别的 intLevel 设置为 550。
更多信息,请参考以下链接,
https://logging.apache.org/log4j/2.x/manual/customloglevels.html
【讨论】: