Maison >Java >javaDidacticiel >Comment Springboot permet-il à logger.debug de générer des journaux ?

Comment Springboot permet-il à logger.debug de générer des journaux ?

WBOY
WBOYavant
2023-05-11 11:40:201335parcourir

Springboot permet à logger.debug de générer des journaux

Pour être honnête, je n'ai toujours eu qu'une compréhension superficielle des journaux, j'utiliserai logger.info et logger.error pour la sortie Aujourd'hui, lorsque j'écrivais le projet LemonRobot, j'ai décidé. pour saisir également les informations de débogage, puis contrôler les journaux de niveau de débogage en fonction du niveau de journalisation lors de la mise en ligne.

Mais après l'avoir exécuté, j'ai découvert que les journaux générés par le logger.debug par défaut n'étaient pas affichés sur la console. Après quelques recherches, cela était dû à un problème de configuration de connexion.

Créez un nouveau logback.xml dans le dossier sr/main/resources, puis copiez la configuration suivante dans le fichier :

logback.xml sera automatiquement chargé. Si le nom est différent, nous devons l'ajouter à l'application. .yml ou application. Configuration dans les propriétés :

#配置日志
logging:
#此处存放日志的路径
  path:
    config: classpath:config/logback-spring.xml
#指定不同目录下的日志的级别
  level:
    com.shimain.springboot.mapper: DEBUG
<?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>

Ce fichier de configuration permet d'afficher les journaux sur la console et les fichiers locaux en même temps, et les fichiers journaux sont compressés en fichiers zip.

Si le projet est en ligne à ce moment-là, il n'est pas nécessaire de disposer de journaux de débogage. Il vous suffit de modifier le niveau sous la balise racine en INFO.

Erreur de journal de niveau de débogage au démarrage de SpringBoot

La bibliothèque native Tomcat n'a pas pu être trouvée en utilisant les noms [tcnative-1, libtcnative-1]

Capture d'écran d'erreur

Comment Springboot permet-il à logger.debug de générer des journaux ?

Raison

tomcat n'a pas trouvé le lien dynamique JNI bibliothèque. Il existe cette dll sous Apache Tomcat, mais elle n'est pas trouvée sous Tomcat intégré à Springboot au démarrage.

En effet, afin d'améliorer les performances, le connecteur de Tomcat adopte la méthode de chargement des bibliothèques locales liées au système d'exploitation (et non multiplateforme), telles que les bibliothèques de liens dynamiques .dll dans les systèmes Windows.

Les deux fichiers de bibliothèque .dll introuvables dans l'exception ci-dessus se trouveront par défaut dans le répertoire bin de Tomcat. Cependant, étant donné que Tomcat de SpringBoot est intégré, il n'y a pas ces deux .dll.

Solution

Vous pouvez ignorer cette erreur, alors SpringBootdéfinissez le niveau de journalisation de cette erreur sur déboguer.

Si vous souffrez d'un trouble obsessionnel-compulsif, vous pouvez également le résoudre comme suit :

Mettez directement tcnative-1.dll et libtcnative-1.dll sous Tomcat sous C:WindowsSystem32, et redémarrez le projet.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer