我希望Logger
能够实现自定义日志记录级别方法。例如,我想致电log.custom("custom level log")
。根据{{3}}它是可能的,但没有足够的提示给我。有人可以帮助我理解这个命令到底做了什么吗?
java -cp log4j-core-2.8.jar \
org.apache.logging.log4j.core.tools.Generate$ExtendedLogger \
com.mycomp.ExtLogger DIAG=350 NOTICE=450 VERBOSE=550 > com/mycomp/ExtLogger.java
此命令成功退出后,我应该采取哪些步骤?究竟应该交换什么?在哪里?
答案 0 :(得分:2)
该工具的作用是生成可包含在项目中的源代码。目的是使用生成的类而不是标准的Log4j2 Logger。
在运行该工具之前,您需要决定调整自定义级别的内容以及相对于现有级别的排名。手册页显示了一个包含内置级别的int值的表。自定义级别的int值可能介于这些值之间。
在引用的示例中,该工具将在ExtLogger
包中生成一个名为com.mycomp
的类,该类使用三个自定义级别(DIAG,NOTICE和VERBOSE)扩展标准Log4j2 Logger。 DIAG的int值为350,因此它位于WARN(300)和INFO(400)之间。
该工具将生成的源代码写入控制台。该示例显示了如何将该输出重定向到文件。然后,您可以在项目中包含此文件。