Jboss 7,如何在standalone.xml中添加自定义日志级别

时间:2014-06-18 09:59:32

标签: java logging log4j jboss7.x

我的应用程序正在Jboss As 7 server中运行。我想将日志级别为me.test.ClassA的类(例如CDR)中的所有日志与特定日志文件(例如cdr.log)隔离开来。

我如何在jboss As 7中实现这一目标。我知道使用log4j.xml这是可能的。但是我想使用standalone.xml以便我可以在运行时更改日志级别。

提前致谢。

1 个答案:

答案 0 :(得分:0)

您无法根据自定义级别分隔日志消息。您可以使用已知级别和/或记录器名称。

假设在me.test.ClassA中,您通过Logger.getLogger(me.test.ClassA.class)获得了一个记录器,或者您最终获得了一个名为me.test.ClassA的记录器,您可以定义该记录器以写入特定的处理程序。 / p>

用于添加文件处理程序的CLI示例:

/subsystem=logging/file-handler=cdr:add(append=true,autoflush=true,file={"relative-to"=>"jboss.server.log.dir","path"=>"cdr.log"})

创建记录器

/subsystem=logging/logger=me.test.ClassA:add(level=INFO,handlers=["cdr"])

这会将所有日志消息从使用名称me.test.ClassA创建的记录器发送到文件cdr.log以及server.log文件和控制台。如果您不希望将消息发送到server.log和控制台,则在记录器的添加操作中添加属性use-parent-handlers=false