
1. WHAT happened ?
There is no log printed in the console from deployed application in JBoss WildFly 8 which powered by log4j.
2. WHY it happened ?
Because JBoss WildFly 8 is using its own log configuration as below not your application ones.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<module name="org.jboss.as.logging" xmlns="urn:jboss:module:1.3"> | |
<properties> | |
<property name="jboss.api" value="private"> | |
</property> | |
</properties> | |
<resources> | |
<resource-root path="wildfly-logging-8.2.0.Final.jar"> | |
</resource-root></resources> | |
<dependencies> | |
<module name="javax.api"></module> | |
<module name="org.apache.log4j"></module> | |
<module name="org.jboss.as.controller"></module> | |
<module name="org.wildfly.security.manager"></module> | |
<module name="org.jboss.as.server"></module> | |
<module name="org.jboss.common-core"></module> | |
<module name="org.jboss.staxmapper"></module> | |
<module name="org.jboss.msc"></module> | |
<module name="org.jboss.logging"></module> | |
<module name="org.jboss.logmanager"></module> | |
<module name="org.jboss.modules"></module> | |
<module name="org.jboss.stdio"></module> | |
<module name="org.jboss.vfs"></module> | |
</dependencies> | |
</module> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<subsystem xmlns="urn:jboss:domain:logging:2.0"> | |
<console-handler name="CONSOLE"> | |
<level name="DEBUG"> | |
<formatter> | |
<named-formatter name="COLOR-PATTERN"> | |
</named-formatter></formatter> | |
</level></console-handler> | |
<periodic-rotating-file-handler autoflush="true" name="FILE"> | |
<formatter> | |
<named-formatter name="PATTERN"> | |
</named-formatter></formatter> | |
<file path="server.log" relative-to="jboss.server.log.dir"> | |
<suffix value=".yyyy-MM-dd"> | |
<append value="true"> | |
</append></suffix></file></periodic-rotating-file-handler> | |
<logger category="com.arjuna"> | |
<level name="WARN"> | |
</level></logger> | |
<logger category="org.apache.tomcat.util.modeler"> | |
<level name="WARN"> | |
</level></logger> | |
<logger category="org.jboss.as.config"> | |
<level name="DEBUG"> | |
</level></logger> | |
<logger category="sun.rmi"> | |
<level name="WARN"> | |
</level></logger> | |
<logger category="jacorb"> | |
<level name="WARN"> | |
</level></logger> | |
<logger category="jacorb.config"> | |
<level name="ERROR"> | |
</level></logger> | |
<root-logger> | |
<level name="INFO"> | |
<handlers> | |
<handler name="CONSOLE"> | |
<handler name="FILE"> | |
</handler></handler></handlers> | |
</level></root-logger> | |
<formatter name="PATTERN"> | |
<pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"> | |
</pattern-formatter></formatter> | |
<formatter name="COLOR-PATTERN"> | |
<pattern-formatter pattern="%K{level}%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"> | |
</pattern-formatter></formatter> | |
</subsystem> |
3. HOW to resolve it
Step 1 : let JBoss WildFly 8 to load log4j.xml or log4j.properties from deployed application not standalone.xml by adding : <use-deployment-logging-config value="false"/> as below :
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<subsystem xmlns="urn:jboss:domain:logging:2.0"> | |
<use-deployment-logging-config value="false"> | |
<console-handler name="CONSOLE"> | |
<level name="DEBUG"> | |
<formatter> | |
<named-formatter name="COLOR-PATTERN"> | |
</named-formatter></formatter> | |
</level></console-handler> | |
<periodic-rotating-file-handler autoflush="true" name="FILE"> | |
<formatter> | |
<named-formatter name="PATTERN"> | |
</named-formatter></formatter> | |
<file path="server.log" relative-to="jboss.server.log.dir"> | |
<suffix value=".yyyy-MM-dd"> | |
<append value="true"> | |
</append></suffix></file></periodic-rotating-file-handler> | |
<logger category="com.arjuna"> | |
<level name="WARN"> | |
</level></logger> | |
<logger category="org.apache.tomcat.util.modeler"> | |
<level name="WARN"> | |
</level></logger> | |
<logger category="org.jboss.as.config"> | |
<level name="DEBUG"> | |
</level></logger> | |
<logger category="sun.rmi"> | |
<level name="WARN"> | |
</level></logger> | |
<logger category="jacorb"> | |
<level name="WARN"> | |
</level></logger> | |
<logger category="jacorb.config"> | |
<level name="ERROR"> | |
</level></logger> | |
<root-logger> | |
<level name="INFO"> | |
<handlers> | |
<handler name="CONSOLE"> | |
<handler name="FILE"> | |
</handler></handler></handlers> | |
</level></root-logger> | |
<formatter name="PATTERN"> | |
<pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"> | |
</pattern-formatter></formatter> | |
<formatter name="COLOR-PATTERN"> | |
<pattern-formatter pattern="%K{level}%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"> | |
</pattern-formatter></formatter> | |
</use-deployment-logging-config></subsystem> |
Step 2 : use the logging function from deployed application not JBoss WildFly 8 by adding WEB-INF/classes/jboss-deployment-structure.xml
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<jboss-deployment-structure xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:jboss:deployment-structure:1.2"> | |
<deployment> | |
<module-alias name="test"> | |
<exclusions> | |
<module name="org.apache.log4j"> | |
</module></exclusions> | |
</module-alias></deployment> | |
</jboss-deployment-structure> |
You may refer to below for details on JBoss WildFly 8 logging configuration :
https://docs.jboss.org/author/display/WFLY8/Logging+Configuration#LoggingConfiguration-PerdeploymentLogging
Thanks for this. I was tearing my hair out because I desperately needed to see the log and no amount of messing with my wildfly config was helping. Well done!
ReplyDeleteThank you for the comment , glad it helps.
DeleteI'm new in wildfly... wich files are been modify in this example?
ReplyDelete1. ${JBOSS_HOME}\standalone\configuration\standalone.xml (if you are launching the server with standalone mode)
Delete2. ${project_location}\src\main\resources\jboss-deployment-structure.xml (if your project is maven powered)
Awersome !!
ReplyDeleteworked like a charm.
Kindly change your snippet as '/' is missing there (for above line only) and that might lead some naive user to some trouble.
Thanks :)