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)
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.
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
.