Spring Boot Test – How to disable DEBUG and INFO logs
Run the Spring Boot integration test or unit test, many annoying DEBUG and INFO logs are displayed in the console.
P.S Tested with Spring Boot 2
Console
2019-03-04 13:15:25.151 INFO --- [ main] .b.t.c.SpringBootTestContextBootstrapper :
2019-03-04 13:15:25.157 INFO --- [ main] o.s.t.c.support.AbstractContextLoader :
2019-03-04 13:15:25.158 INFO --- [ main] t.c.s.AnnotationConfigContextLoaderUtils :
2019-03-04 13:15:25.298 INFO --- [ main] .b.t.c.SpringBootTestContextBootstrapper :
2019-03-04 13:15:25.401 INFO --- [ main] .b.t.c.SpringBootTestContextBootstrapper :
2019-03-04 13:15:25.430 INFO --- [ main] .b.t.c.SpringBootTestContextBootstrapper :
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.1.2.RELEASE)
2019-03-04 13:15:25.886 DEBUG 7484 --- [ main] o.s.boot.SpringApplication :
2019-03-04 13:15:25.903 DEBUG 7484 --- [ main] o.s.b.c.c.ConfigFileApplicationListener :
2019-03-04 13:15:25.904 DEBUG 7484 --- [ main] o.s.b.c.c.ConfigFileApplicationListener :
2019-03-04 13:15:25.904 DEBUG 7484 --- [ main] o.s.b.c.c.ConfigFileApplicationListener :
2019-03-04 13:15:25.905 DEBUG 7484 --- [ main] o.s.w.c.s.GenericWebApplicationContext :
2019-03-04 13:15:25.922 DEBUG 7484 --- [ main] o.s.b.f.s.DefaultListableBeanFactory :
2019-03-04 13:15:25.937 DEBUG 7484 --- [ main] o.s.b.f.s.DefaultListableBeanFactory :
2019-03-04 13:15:26.004 DEBUG 7484 --- [ main] o.s.c.a.ClassPathBeanDefinitionScanner :
Solution
To disable the logs, turn off the logging.level
in both application.properties
and logback-test.xml
1.1 Turn off the logging in application.properties
application.properties
logging.level.org.springframework=OFF
logging.level.root=OFF
The DEBUG or INFO logs below the Spring banner are off now.
Console
2019-03-04 13:15:25.151 INFO --- [ main] .b.t.c.SpringBootTestContextBootstrapper :
2019-03-04 13:15:25.157 INFO --- [ main] o.s.t.c.support.AbstractContextLoader :
2019-03-04 13:15:25.158 INFO --- [ main] t.c.s.AnnotationConfigContextLoaderUtils :
2019-03-04 13:15:25.298 INFO --- [ main] .b.t.c.SpringBootTestContextBootstrapper :
2019-03-04 13:15:25.401 INFO --- [ main] .b.t.c.SpringBootTestContextBootstrapper :
2019-03-04 13:15:25.430 INFO --- [ main] .b.t.c.SpringBootTestContextBootstrapper :
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.1.2.RELEASE)
1.2 Create a logback-test.xml
in src/test/resources
. Again, turn off the logging here.
logback-test.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<include resource="org/springframework/boot/logging/logback/base.xml" />
<logger name="org.springframework" level="OFF"/>
</configuration>
Good, just left the Spring banner.
Console
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.1.2.RELEASE)
1.3 Turn off the Spring banner.
application.properties
logging.level.org.springframework=OFF
logging.level.root=OFF
spring.main.banner-mode=off
Done, the console should be empty now.
logback-test.xml is enough.
does not work at all
Thanks man! It works
Not working for me. I’ve tried everything. I’ve copied the file verbatim, put it in the location indicated, and renamed it to logback-test.xml. No matter what I do I’m still getting logback output to my console. I want it gone!
1. Did you try turn off the logging.level in application.properties?
logging.level.org.springframework=OFF
logging.level.root=OFF
Mkyong you are the best, your tutorials are a lifesaver, could you please make a tutorial of Hibernate 5 ? Configuration and simple CRUD ? thank you very much
Sure
Your tutorials are the best ! My logs were flooded with apache/kafka debug logs. Just adding this line in my logback.xml helped me reduce lot of noise in the logs without doing any changes in applications.properties file:
<logger name=”org.apache” level=”INFO”/>
nice tnx
just by keeping logback-test.xml worked for me
Thanks a lot. Lost hair with this. Thanks for the fix.
Works fine!
Thanks . You are the rock! Only this solution woks out for me.
You are a legend.Really!
Brilliant. So many thanks.
I configure logging with properties file. Can we do the same with properties file? If yes, how?
file=application.properties
logging.level.org.springframework=OFF
logging.level.root=OFF
logging.level.=INFO
logging.file=/.log