Die Standardprotokonfiguration von Springboot
SpringBoot ist nicht mehr in der Box und bietet Ihnen standardmäßig das Protokollierungs -Framework mithilfe von Commons Logging . Die Standardkonfiguration bietet jedoch auch Unterstützung für gemeinsame Protokolle, wie z. Jeder Logger kann die Konsole oder Datei über die Konfiguration ausgeben, um Protokollinhalte auszugeben.
Konsolenausgabe
In WARN auf Protokollprotokolle INFO ERROR TRACE fünf Protokollpegel DEBUG Stufe. Zum Beispiel: Wenn die Ebene ERROR ist, werden die Informationen von WARN , INFO und DEBUG nicht ausgegeben. Im Springboot werden ERROR , WARN und INFO -Levels standardmäßig an der Konsole konfiguriert. Es gibt keinen FATAL Niveau im Logback, es wird als ERROR behandelt.
Wir können auf zwei Arten zum Debug -Level wechseln:
application.properties . Wenn diese Eigenschaft auf True gesetzt ist, gibt der Kernprotokoll (einschließlich eingebetteter Container, Winterschlaf und Spring) mehr Inhalte aus, aber die von Ihnen selbst angewendeten Protokolle werden nicht auf die Debug -Ebene ausgegeben.Farbenfrohe Ausgabe
Springboot unterstützt die Farbprotokollausgabe seit Version 1.4.0. Wenn Ihr Terminal ANSI unterstützt, wird das Leser -Farbausgang das Lokal lesbarer. Unterstützt durch Einstellen des Parameters von spring.output.ansi.enabled in application.properties .
NEVER : Deaktivieren Sie die ANSI-farbige Ausgabe (Standardelement)DETECT : Überprüft, ob das Terminal ANSI unterstützt. Wenn ja, verwenden Sie die Farbausgabe (empfohlenes Element)ALWAYS : Verwenden Sie immer ein ANSI-farbiges Format zum Ausgang. Wenn das Terminal es nicht unterstützt, gibt es viele Interferenzinformationen. Es wird nicht empfohlen, es zu verwenden.Dateiausgabe
Die Standardkonfiguration von Springboot wird nur in die Konsole ausgegeben und in Dateien nicht aufgezeichnet. In der Verwendung der Produktionsumgebung müssen wir jedoch normalerweise in Dateien aufzeichnen.
Um die Dateiausgabe zu erhöhen, müssen Sie logging.file oder logging.path in application.properties konfigurieren.
logging.file : Stellen Sie die Datei fest, die ein absoluter Pfad oder ein relativer Pfad sein kann. Zum Beispiel: logging.file = my.loglogging.path : Einstellen des Verzeichnisses, die Spring.log -Datei wird in diesem Verzeichnis erstellt und der Protokollinhalt wird geschrieben, z. B.: Protokollierung.Path =/var/logDie Protokolldatei wird bei einer Größe von 10 MB abgeschnitten, was zu neuen Protokolldateien führt. Die Standardstufen sind: Fehler, Warn, Info
Ebene der Ebene
Im Springboot müssen Sie nur die Ebene der Stufe des Abschlusses der Protokollierung in application.properties konfigurieren.
Konfigurationsformat: Protokollierung.level.*= Ebene
logging.level : protokollsteuerungspräfix, * ist der Paketame oder der Logger -NameLEVEL : Optionen Trace, Debugg, Info, Warn, Fehler, tödlich, ausZum Beispiel:
DEBUG -Ebene ausgegeben.WARN ausgegebenBenutzerdefinierte Protokollkonfiguration
Wenn Sie die Standardkonfiguration nicht verwenden möchten, fügen Sie einfach Ihre eigene Protokollkonfigurationsdatei hinzu. Da Protokollierungsdienste normalerweise vor dem Erstellen ApplicationContext initialisiert werden, müssen sie nicht über die Konfigurationsdatei von Spring gesteuert werden. Daher kann die Protokollsteuerung und -verwaltung immer noch durch Systemeigenschaften und herkömmliche Feder -Start -externe Konfigurationsdateien gut unterstützt werden.
Abhängig von verschiedenen Protokollierungssystemen können Sie den Namen der Konfigurationsdatei gemäß den folgenden Regeln organisieren und es können korrekt geladen werden:
Offizielle Empfehlungen für Springboot, um einen Dateinamen mit -spring als Protokollkonfiguration zu verwenden (z. B. verwenden logback -pring.xml anstelle von logback.xml)
Benutzerdefiniertes Ausgangsformat
Im Springboot können Sie das Ausgabebildy steuern, indem Sie die folgenden Parameter in application.properties konfigurieren:
logging.pattern.console : Definiert die Stilausgabe in der Konsole (JDK -Logger wird nicht unterstützt)logging.pattern.file : Definiert den Ausgangsstil in der Datei (JDK -Logger wird nicht unterstützt)Diese Formate können auch direkt in der Protokollkonfigurationsdatei als in der Anwendungskonfigurationsdatei definiert werden.
Gemeinsame Logback -Konfigurationsdateivorlagen
<? converterClass="org.springframework.boot.logging.logback.ColorConverter"/> <conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter"/> <conversionRule conversionWord="wEx" converterClass = "org.springframework.boot.logging.logback.uthededwhitespacethrowableProxyConverter"/> <!-Farbprotokollformat-> <Eigenschaft Name = "console_log_pattern" value = "$ {console_log_patter:-%clr (%d {{{{{{{{{{{{{{{{{{yyyyyyyyyyyyyyyyyyyyyyyyyie HH: mm: ss.sss}) {faint} %clr ($ {log_level_pattern:- %5p}) %clr ($ {pid:-}) {magenta} %clr (-) {faint} %clr ([ %15.15t]) {faint} %CLR ( %-40,40Logger {39}) {Cyan} %clr (::: {faint} %m %n $ {log_exception_conversion_Word:- %wex}} "/> <!-Konsolenausgabeeinstellungen-> <Appender Name" console "> <cododer. %-5level: Level displays 5 characters from the left %msg: log message, %n is a newline character --> <!--<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>--> <pattern>${CONSOLE_LOG_PATTERN}</pattern> <Scharset> utf8 </charset> </ccodierer> </appender> <!-täglich Protokolldateien generieren-> <Appender name = "file"> <rollingPolicy> <!-Dateiname Ausgabe nach Log-Datei-> <DilenamePatters> $ {log_home} /mixedsys. </rollingPolicy> <encoder> <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern> </encoder> </appender> <!-- Output level of log logger (package.class) --> <logger name = "org.springFramework.web.servlet.mvc.method.annotation.ExceptionHandRexceptionResolver" Level = "Debug"> <Appender-ref ref = "console" /> <Appender-ref = "Datei" /> < /> < /logger-comples. Hibernate SQL-> <!-<logger name = "org.hiNNATE.TYPE.Descriptor.sql.basicbinder" Level = "Trace" /> <logger name = "org.hibernate.type.descriptor.sql.basicextractor" debugg " /> <Logger name =" org.hibern " Level = "Debug" /> <logger name = "org.hibernate.engine.queryparameters" Level = "Debug" /> <logger name = "org.hiNNate.Engine.Query.hqlQueryPlan" Level = "Debugug" />-> <! <appender-ref ref="console" /> <appender-ref ref="file" /> </root> <!-- Log asynchronously to the database--> <!-- <appender name="DB"> Log asynchronously to database <connectionSource> Connection pool<dataSource> <driverClass>com.mysql.jdbc.Driver</driverClass> <URL> JDBC: MySQL: //127.0.0.1: 3306/DataBaseName </url> <Benutzer> root </user> <passelDas obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.