Questa è una domanda molto semplice, ma non riesco a trovare informazioni; (Forse la mia conoscenza dei framework Java è gravemente carente)
Come posso impostare il livello di log con application.properties? E la posizione del file di log, ecc?
Aggiornamento: A partire da Spring Boot v1.2.0.RELEASE, le impostazioni in application.properties
o application.yml
si applicano. Vedere la sezione Log Levels della guida di riferimento.
logging.level.org.springframework.web: DEBUG
logging.level.org.hibernate: ERROR
Per le versioni precedenti di Spring Boot non è possibile. Devi semplicemente usare la normale configurazione per il tuo framework di log (log4j, logback) per questo. Aggiungi il file di configurazione appropriato (log4j.xml
o logback.xml
) alla directory src/main/resources
e configura a tuo piacimento.
Puoi abilitare il debug dei log specificando --debug
quando avvii l'applicazione dalla riga di comando.
Spring Boot fornisce anche un bel punto di partenza per logback per configurare alcuni default, colorazione ecc. il file base.xml che puoi semplicemente includere nel tuo file logback.xml. (Questo è anche raccomandato dal logback.xml predefinito in Spring Boot.
<include resource="org/springframework/boot/logging/logback/base.xml"/>
Potete farlo usando il vostro application.properties.
logging.level.=ERROR
-> Imposta il livello di log di root su error
...
logging.level.=DEBUG
-> Imposta il livello di log di root su DEBUG
logging.file=${java.io.tmpdir}/myapp.log
-> Imposta il percorso assoluto del file di log su TMPDIR/myapp.log
e non è un'opzione per la creazione di un file di log;
Un sano set di default di application.properties riguardante il logging usando i profili sarebbe
application.properties:
spring.application.name=<your app name here>
logging.level.=ERROR
logging.file=${java.io.tmpdir}/${spring.application.name}.log
application-dev.properties:
logging.level.=DEBUG
logging.file=
Quando sviluppate all'interno del vostro IDE preferito aggiungete semplicemente un -Dspring.profiles.active=dev
come argomento VM alla configurazione di run/debug della vostra applicazione.
Questo ti darà solo la registrazione degli errori in produzione e la registrazione del debug durante lo sviluppo SENZA scrivere l'output in un file di log. Questo migliorerà le prestazioni durante lo sviluppo ( e farà risparmiare alle unità SSD alcune ore di funzionamento ;) ).