0
votes

I have a spring boot application and i generated the spring war. I deployed that in wildfly 16, but i found that logs are generating in the INFO mode only. The same war when i deploys in the Tomcat produces the log in DEBUG mode.

I am using log4j2 for the logging

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="DEBUG">
<Properties>
<Property name="basePath">F:/LOGS/</Property>
</Properties>
<CustomLevels>
<CustomLevel name="CDR" intLevel="1" />
</CustomLevels>
<Appenders>

<RollingFile name="NORMAL_LOG_FILE" fileName="${basePath}/appUMS.log"
filePattern="${basePath}/appUMS.log.%d{yyyy-MM-dd-HH}" >
<PatternLayout>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] %c{1} %L- %msg%n
</pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy interval="1"
modulate="true" />
</Policies>
<!-- <ThresholdFilter level="ERROR" onMatch="DENY" onMismatch="NEUTRAL"/> -->
</RollingFile>

<Console name="console" target="SYSTEM_OUT">
<PatternLayout
pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] %c{1} %L - %msg%n" />

</Console>

</Appenders>
<Loggers>
<Logger name="com.sixdee" level="debug" additivity="false">
<appender-ref ref="NORMAL_LOG_FILE" level="DEBUG" />
<AppenderRef ref="console" level="debug" />
<AppenderRef ref="ERR_LOG_FILE" level="error" />
</Logger>
    
<Root level="info" additivity="false">
<appender-ref ref="console" />
<AppenderRef ref="NORMAL_LOG_FILE" />
<AppenderRef ref="ERR_LOG_FILE"/>
</Root>
</Loggers>
</Configuration>

The same log4j2 is used in both tomcat and wildfly logs. Is there is any other configuration file available in Wildfly/JBoss for enabling DEBUG level??

2

2 Answers

0
votes

first make sure log4j.properties is in the right folder which is META-INF.

you also can run these commands to enable debug level logging:

{wildfly}/bin/jboss-cli.sh --connect

[standalone@localhost:9990 /] /subsystem=logging/console-handler=CONSOLE:write-attribute(name=level,value=DEBUG)

[standalone@localhost:9990 /] /subsystem=logging/root-logger=ROOT:write-attribute(name=level,value=DEBUG)
0
votes

Found what was the real problem, the wildfly subsytem logging was over riding the application's log4j2 xml. So we have to disable the wildfly subsytem logging.

<subsystem xmlns="urn:jboss:domain:logging:6.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">
            <formatter>
                <named-formatter name="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="io.jaegertracing.Configuration">
            <level name="WARN"/>
        </logger>
        <logger category="org.jboss.as.config">
            <level name="INFO"/>
        </logger>
        <logger category="sun.rmi">
            <level name="WARN"/>
        </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>

Comment or remove this section to get the logging of application's Log4j2 work properly.