Ich versuche, Log4j zu verwenden, um in eine lokale Protokolldatei in meinem Dateisystem zu schreiben.
Tatsächlich wurde die genaue Eigenschaftendatei aus einem anderen Projekt verwendet und der Name des obersten Verzeichnisses wurde so geändert, dass es mit dem Namen meiner App übereinstimmt. Das andere Projekt schreibt in die Datei "logs.log", aber es werden keine Inhalte gedruckt. Beide Projekte verwenden die gleiche Version von log4j.
pom.xml
%Vor%Auf meinem Unix-basierten macOS habe ich in / var / log / gecodiert und folgendes gemacht:
%Vor%Habe in myapp das folgende Setup überall:
%Vor%myapp / src / main / resources / log4j.properties:
%Vor%Verstehe nicht warum in:
%Vor%Es ist keine logs.log-Datei vorhanden!
Ich verwende dies in einem Spring Boot 1.5.4.RELEASE, das ich mit folgendem Befehl erstellt habe:
%Vor%Und dann laufen mit entweder:
%Vor%oder
%Vor%Würde mich freuen, wenn jemand mir eine bessere Eigenschaftendatei zur Verfügung stellen könnte oder sehen könnte, was ich falsch mache?
Danke, dass Sie sich die Zeit genommen haben, dies zu lesen.
@Veeram hat Recht - die Logs werden von logback gedruckt, was mitkommt Frühlingsstiefel. Sie müssen es durch Log4j ersetzen. Jetzt ist es jedoch keine Option:
Von Spring Boot 1.4.0 Versionshinweise :
Die Log4j 1-Unterstützung wurde nach der Apache EOL-Ankündigung entfernt.
Ich schlage daher vor, dass Sie ein Upgrade auf Log4j 2 in Betracht ziehen.
P.S. Ich denke, Sie können immer noch Log4j 1.2 verwenden, aber in diesem Fall müssen Sie definieren und angeben, welche Abhängigkeiten vom Modul spring-boot-starter-logging ausgeschlossen werden sollen welches stattdessen hinzugefügt werden sollte. Ich habe ein Demo-Projekt eingerichtet, um Ihr Problem zu reproduzieren und hier ist die Liste der Abhängigkeiten in build.gradle (Ich benutze Gradle, aber ich denke, Sie bekommen einen Punkt):
%Vor%Wie @mxf sagt, ist Logback jetzt das Standard-Logging-Subsystem in Spring Boot.
Obwohl Sie andere Logger konfigurieren können, würde ich empfehlen, bei Logback zu bleiben, da es sich wirklich um eine Welt handelt, in der die Protokollierung von Fehlern nicht möglich ist.
Tags und Links java logging spring-boot log4j