2017-05-09 2 views
3

Meine Spring-Boot-Batch App läuft gut und es scheint, dass die Protokollierung wie erwartet funktioniert. Ich verwende Logback und habe eine logback-spring.xml-Datei, die gerade gelesen wird und scheinbar alles richtig eingerichtet hat. Allerdings bekommt jedes Mal, wenn ich das Programm führen Sie die folgenden:Spring - Schlüssel konnte nicht gefunden werden 'Schlüssel konnte nicht gefunden werden' logging.exception-conversion-word '

13:12:32.538 [main] DEBUG org.springframework.core.env.PropertySourcesPropertyResolver - Could not find key 'logging.exception-conversion-word' in any property source 
13:12:32.553 [main] DEBUG org.springframework.core.env.PropertySourcesPropertyResolver - Could not find key 'logging.pattern.console' in any property source 
13:12:32.553 [main] DEBUG org.springframework.core.env.PropertySourcesPropertyResolver - Could not find key 'logging.pattern.file' in any property source 
13:12:32.553 [main] DEBUG org.springframework.core.env.PropertySourcesPropertyResolver - Could not find key 'logging.pattern.level' in any property source 
2017-05-09 13:12:32,804 1187 DEBUG o.s.c.e.PropertySourcesPropertyResolver - Could not find key 'logging.register-shutdown-hook' in any property source 

Ich habe nicht die Eigenschaften in meinen Dateien, so ist es richtig, in dieser Aussage, aber was kann ich nicht über die Google Suche finden ist: Was ist Suche nach diesen Eigenschaften? Da ich diese Eigenschaften anscheinend nicht brauche, wie verhindere ich, dass sie nach ihnen sucht? Wenn ich sie hinzufügen muss, was sind die möglichen Werte und wie werden sie verwendet?

Keine meiner anderen Spring-Boot-Batch-Anwendungen haben diese Eigenschaften, noch werfen sie diesen Fehler auf.

Antwort

1

Es scheint, dass die Federanwendung diese Eigenschaften von nirgendwo bekommt.
Sie können sie auf zwei Arten eingestellt

  • erstellen Datei mit Namen application.properties und legen dort die Eigenschaften,
    Beispiel:logging.pattern.console=example

  • Die zweite Möglichkeit besteht darin, sie zur Laufzeit zu senden, wenn Sie laufen Ihre .jar,
    Beispiel:java -jar example.jar --logging.pattern.console=example.

Lesen Sie mehr über Immobilien in Spring, application.properties und Externalized Configuration

+1

Danke, aber keine meiner anderen Spring-Apps haben diese Eigenschaften und keine von ihnen werfen diese Nachricht. Als ich die Eigenschaft hinzugefügt habe, erhalte ich immer noch die Nachricht, dass sie sich nur in "gefunden" anstatt in "nicht gefunden" ändert. Was verursacht diese an erster Stelle? – VydorScope

+0

Ich hatte ein ähnliches Problem, wo es nach "local.server.port" und alle Groß-/Kleinschreibung und Perioden/Unterstreichungspermutationen davon sah, was zu einem großen Debug-Dump am Ende eines Batch-Laufs. Wenn Sie einfach 'local.server.port =' in meiner Datei "application.properties" setzen, wird der Protokollmüll reduziert. – bdetweiler

1

über diese Zeit kam für etwas anderes suchen, aber auf den Punkt gebracht - keine Sorge über sie. Dies ist eine automatische Konfiguration, die nach diesen Eigenschaften sucht, und wenn sie nicht gefunden wird, ist nichts schaden.

Dies sind nützliche Eigenschaften, wenn Sie nicht Ihre eigene logback-spring.xml verwenden möchten, was die Konfiguration ein wenig vereinfacht. Ihre logback-spring.xml überschreibt diese Eigenschaften trotzdem.

2

Wenn Sie möchten, dass sie einfach nicht mehr drucken, können Sie debug=false zu Ihrer Datei application.properties hinzufügen.

Seltsamerweise reicht das Hinzufügen von debug=true nicht aus, um sie zurückzubringen.

Verwandte Themen