Log4j 重复日志-Wildfly 9
我有两个web应用程序,都在我自己的web服务器上正常运行,但当我在另一个服务器上发布此应用程序时,此服务器会打印两次相同的日志,但在我的服务器上,应用程序会打印所有内容。 我为我的应用程序创建了一个特定的日志记录程序,类别为bo.com.tucomilona,因此复制的日志仅用于此类别,其他日志在server.log中打印正常 standalone.xml的配置为Log4j 重复日志-Wildfly 9,log4j,wildfly-9,Log4j,Wildfly 9,我有两个web应用程序,都在我自己的web服务器上正常运行,但当我在另一个服务器上发布此应用程序时,此服务器会打印两次相同的日志,但在我的服务器上,应用程序会打印所有内容。 我为我的应用程序创建了一个特定的日志记录程序,类别为bo.com.tucomilona,因此复制的日志仅用于此类别,其他日志在server.log中打印正常 standalone.xml的配置为 <subsystem xmlns="urn:jboss:domain:logging:3.0"> &l
<subsystem xmlns="urn:jboss:domain:logging:3.0">
<console-handler name="CONSOLE">
<level name="DEBUG"/>
<formatter>
<named-formatter name="COLOR-PATTERN"/>
</formatter>
</console-handler>
<periodic-rotating-file-handler name="FILE" autoflush="true">
<level name="DEBUG"/>
<formatter>
<named-formatter name="COLOR-PATTERN"/>
</formatter>
<file relative-to="jboss.server.log.dir" path="server.log"/>
<suffix value=".yyyy-MM-dd"/>
<append value="true"/>
</periodic-rotating-file-handler>
<logger category="com.arjuna">
<level name="WARN"/>
</logger>
<logger category="org.apache.tomcat.util.modeler">
<level name="WARN"/>
</logger>
<logger category="org.jboss.as.config">
<level name="INFO"/>
</logger>
<logger category="sun.rmi">
<level name="WARN"/>
</logger>
<logger category="jacorb">
<level name="WARN"/>
</logger>
<logger category="jacorb.config">
<level name="ERROR"/>
</logger>
<logger category="bo.com.tucomilona">
<level name="DEBUG"/>
<handlers>
<handler name="FILE"/>
</handlers>
</logger>
<root-logger>
<level name="INFO"/>
<handlers>
<handler name="CONSOLE" />
<handler name="FILE"/>
</handlers>
</root-logger>
<formatter name="PATTERN">
<pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n"/>
</formatter>
<formatter name="COLOR-PATTERN">
<pattern-formatter pattern="%K{level}%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n"/>
</formatter>
</subsystem>
如您所见,命名空间bo.com.tucomilona中的日志是重复的,但其他日志不是。如果您只想让这些日志转到
文件处理程序,则需要将使用父处理程序设置为false
。在CLI中,该命令如下所示:
/subsystem=logging/logger=bo.com.tucomilona:write-attribute(name=use-parent-handlers, value=false)
如果希望这些日志消息同时进入文件
和控制台
处理程序,则可以从记录器中删除文件
处理程序
/subsystem=logging/logger=bo.com.tucomilona:remove-handler(name=FILE)
/subsystem=logging/logger=bo.com.tucomilona:remove-handler(name=FILE)