Heim > Java > javaLernprogramm > Wie ermöglicht Springboot, dass logger.debug Protokolle ausgibt?

Wie ermöglicht Springboot, dass logger.debug Protokolle ausgibt?

WBOY
Freigeben: 2023-05-11 11:40:20
nach vorne
1312 Leute haben es durchsucht

Springboot erlaubt logger.debug die Ausgabe von Protokollen

Um ehrlich zu sein, habe ich heute, als ich das LemonRobot-Projekt geschrieben habe, nur ein oberflächliches Verständnis von Protokollen gehabt um auch Debugging-Informationen einzugeben und dann die Debug-Level-Protokolle entsprechend der Protokollebene zu steuern, wenn Sie online gehen.

Aber nachdem ich es ausgeführt hatte, stellte ich fest, dass die vom Standardprotokoll logger.debug generierten Protokolle nicht an die Konsole ausgegeben wurden. Nach einiger Recherche lag dies an Problemen mit der Logback-Konfiguration.

Erstellen Sie eine neue logback.xml im Ordner sr/main/resources und kopieren Sie dann die folgende Konfiguration in die Datei:

logback.xml wird automatisch geladen. Wenn der Name anders ist, müssen wir ihn zur Anwendung hinzufügen .yml oder Anwendung. Konfiguration in Eigenschaften:

#配置日志
logging:
#此处存放日志的路径
  path:
    config: classpath:config/logback-spring.xml
#指定不同目录下的日志的级别
  level:
    com.shimain.springboot.mapper: DEBUG
Nach dem Login kopieren
<?xml version="1.0" encoding="UTF-8" ?>

<configuration scan="true" scanPeriod="3 seconds">
    <!--设置日志输出为控制台-->
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] [%logger{32}] %msg%n</pattern>
        </encoder>
    </appender>
    <!--设置日志输出为文件-->
    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <File>logFile.log</File>
        <rollingPolicy  class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <FileNamePattern>logFile.%d{yyyy-MM-dd_HH-mm}.log.zip</FileNamePattern>
        </rollingPolicy>
        <layout class="ch.qos.logback.classic.PatternLayout">
            <Pattern>%d{HH:mm:ss,SSS} [%thread] %-5level %logger{32} - %msg%n</Pattern>
        </layout>
    </appender>
    <root>
        <level value="DEBUG"/>
        <appender-ref ref="STDOUT"/>
        <appender-ref ref="FILE"/>
    </root>
</configuration>
Nach dem Login kopieren

Diese Konfigurationsdatei ermöglicht die gleichzeitige Ausgabe von Protokollen an die Konsole und lokale Dateien, und die Protokolldateien werden in ZIP-Dateien komprimiert.

Wenn das Projekt zu diesem Zeitpunkt online ist, sind keine Debug-Protokolle erforderlich. Sie müssen lediglich die Ebene unter dem Root-Tag in INFO ändern.

SpringBoot-Start-Debug-Level-Protokollfehler

Die native Tomcat-Bibliothek konnte mit den Namen [tcnative-1, libtcnative-1] nicht gefunden werden.

Fehler-Screenshot:

Wie ermöglicht Springboot, dass logger.debug Protokolle ausgibt?

Grund: Tomcat hat den dynamischen JNI-Link nicht gefunden Bibliothek. Es gibt diese DLL unter Apache Tomcat, sie wird jedoch beim Start nicht unter Tomcat gefunden, das in Springboot eingebettet ist.

Dies liegt daran, dass der Connector in Tomcat zur Verbesserung der Leistung die Methode des Ladens lokaler Bibliotheken übernimmt, die an das Betriebssystem gebunden sind (nicht plattformübergreifend), wie z. B. DLL-Dynamic-Link-Bibliotheken in Windows-Systemen.

Die beiden DLL-Bibliotheksdateien, die in der obigen Ausnahme nicht gefunden werden können, befinden sich standardmäßig im bin-Verzeichnis von Tomcat. Da Tomcat von SpringBoot jedoch eingebettet ist, gibt es diese beiden DLLs nicht.

Lösung

Sie können diesen Fehler ignorieren, also

SpringBoot

setzen Sie die Protokollebene dieses Fehlers auf Debuggen. Wenn Sie an einer Zwangsstörung leiden, können Sie diese auch wie folgt lösen:

Legen Sie tcnative-1.dll und libtcnative-1.dll direkt unter Tomcat unter C:WindowsSystem32 ab und starten Sie das Projekt neu.

Das obige ist der detaillierte Inhalt vonWie ermöglicht Springboot, dass logger.debug Protokolle ausgibt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:yisu.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage