en Lopes
en Lopes

Reputation: 2153

logback - Debug Level does not work

I have a JAVA EE application that uses logback (intended as a successor to the popular log4j project)

Here the logback.xml file

<?xml version="1.0" encoding="UTF-8"?>
<configuration>

    <!-- trace, debug, info, warn, error, fatal -->
    <timestamp key="myTimestamp" datePattern="yyyy-MM-dd'_'HH-mm-ss.SSS"/>  


    <contextListener class="ch.qos.logback.classic.jul.LevelChangePropagator">
        <resetJUL>true</resetJUL>
    </contextListener>

    <!-- To enable JMX Management -->
    <jmxConfigurator/>

    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{"yyyy-MM-dd HH:mm"}  [%thread] %-5level %logger{35} - %msg%n</pattern>
        </encoder>
    </appender>

    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>telefonica.log</file> 

        <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
            <fileNamePattern>telefonica.%i.log.zip</fileNamePattern>             
            <minIndex>1</minIndex>
            <maxIndex>3</maxIndex>
        </rollingPolicy>

        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
            <maxFileSize>5MB</maxFileSize>
        </triggeringPolicy>
        <encoder>
            <pattern>%d{"yyyy-MM-dd HH:mm"} [%thread] %-5level %logger{35} - %msg%n</pattern>
        </encoder>
    </appender>



    <logger name="com.telefonica”                      level="debug" />
    <logger name="org.springframework"             level="debug" />
    <logger name="org.springframework.web"         level="debug" />
    <logger name="org.springframework.security"    level="debug" />

    <root level="debug">
        <appender-ref ref="CONSOLE" />
        <appender-ref ref="FILE" />
    </root>
</configuration>

In 1 of the class inside the package com.telefonica I have this code

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public static final Logger log = LoggerFactory.getLogger(TS.class);

log.debug ("logging to WS " + WS_VERSION);

and I don't see anything in the console, but I see it when I put log.info ("logging to WS " + WS_VERSION);

Upvotes: 0

Views: 8746

Answers (3)

hello_earth
hello_earth

Reputation: 1562

Just adding something that worked for me for a similar scenario.

I chanced to have both logback.xml and application.properties in my classpath for a Spring Boot application. In my application.properties I had

logging.level.root=INFO

which effectively narrowed down anything that got handled by Logback, so settings in logback.xml seemed to have no effect as far as the log levels lower than INFO were concertned.

Upvotes: 0

Vishnu T S
Vishnu T S

Reputation: 3954

Change your logger level to level="DEBUG" from INFO

<logger name="org.springframework" level="DEBUG"/>

Upvotes: 0

Aarish Ramesh
Aarish Ramesh

Reputation: 7043

Try adding appender to your logger like below

<logger name="org.springframework" additivity="false">
<level value="DEBUG" />
<appender-ref ref="STDOUT" />
</logger>

PLease refer this question and solution

Spring : Logging not working with log4j or logback

Upvotes: 2

Related Questions