Spring Boot: Hoe kan ik het logging niveau instellen met application.properties?
Dit is een zeer eenvoudige vraag, maar ik kan geen informatie vinden.
(Misschien schiet mijn kennis over Java frameworks ernstig tekort)
Hoe kan ik het logging niveau instellen met application.properties?
En logging bestand locatie, etc?
266
3
Update: Vanaf Spring Boot v1.2.0.RELEASE zijn de instellingen in
application.properties
ofapplication.yml
wel van toepassing. Zie de Log Levels sectie van de referentiegids.Voor eerdere versies van Spring Boot kan dat niet. Daar moet je gewoon de normale configuratie voor je logging framework (log4j, logback) voor gebruiken. Voeg het juiste config bestand (
log4j.xml
oflogback.xml
) toe aan desrc/main/resources
directory en configureer naar wens.Je kunt debug logging aanzetten door
--debug
te specificeren wanneer je de applicatie start vanaf de command-line.Spring Boot biedt ook een mooi startpunt voor logback om wat defaults te configureren, kleuren etc. het base.xml bestand dat je simpelweg kunt opnemen in je logback.xml bestand. (Dit wordt ook aanbevolen van de standaard logback.xml in Spring Boot.
Je kunt dat doen met je application.properties.
logging.level.=ERROR
-> Stelt het root logging level in op error...
logging.level.=DEBUG
-> Stelt het root-logging-niveau in op DEBUGlogging.file=${java.io.tmpdir}/myapp.log
-> Stelt het absolute logbestandspad in op TMPDIR/myapp.logEen verstandige standaard set van application.properties met betrekking tot loggen met profielen zou zijn: application.properties:
application-dev.properties:
Wanneer je in je favoriete IDE ontwikkelt, voeg je gewoon een
-Dspring.profiles.active=dev
als VM argument toe aan de run/debug configuratie van je app.Dit geeft je alleen error logging in productie en debug logging tijdens ontwikkeling ZONDER de uitvoer naar een logbestand te schrijven. Dit zal de prestaties tijdens ontwikkeling verbeteren ( en SSD schijven enkele uren werk besparen ;) ).
Ik zorg ervoor dat de tip van Dave Syer wat liefde krijgt, omdat het toevoegen van
debug=true
aan application.properties inderdaad debug logging mogelijk maakt.