web-dev-qa-db-fra.com

emplacement par défaut du journal Spring-Boot

Dans un spring-boot application Je peux spécifier un fichier journal personnalisé avec

Java -jar spring-boot-app.jar --logging.file=/home/ubuntu/spring-boot-app.log

Mais si je n'en spécifie pas un, où va-t-il?

Je ne l'ai trouvé dans aucun des dossiers suivants:

/tmp/
/var/log/
~/

J'ai pas j'ai spring-boot-starter-logging ou toute autre dépendance de journalisation.

J'espérais avoir quelque chose de similaire à catalina.out puisque la configuration par défaut exécute un Tomcat intégré:

INFO 10374 --- [main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8100 (http)
24
cahen

Spring Boot utilise Commons Logging pour toute la journalisation interne, mais laisse l'implémentation du journal sous-jacente ouverte.

Les configurations par défaut sont fournies pour Java Util Logging, Log4J, Log4J2 et Logback. Dans chaque cas, les enregistreurs sont préconfigurés pour utiliser la sortie de la console avec sortie de fichier en option également disponible.

À partir de documentation de journalisation Spring Boot .

La configuration de journal par défaut répercute les messages sur la console au fur et à mesure qu'ils sont écrits. Donc, jusqu'à ce que vous spécifiez explicitement un fichier comme vous l'avez décrit, il reste dans la console.

25
Laurentiu L.

Par défaut, Spring Boot ne génère aucun journal dans aucun fichier. Si vous souhaitez avoir des journaux écrits dans un fichier (en plus de la sortie de la console), vous devez utiliser soit logging.file ou logging.path propriétés (pas les deux).

Dans application.properties, définissez simplement:

logging.file=/home/ubuntu/spring-boot-app.log

Cela va créer un spring-boot-app.log fichier sous /home/ubuntu.

5
LeandroPL