La configuration de logback pour supprimer l'enregistrement à partir de toutes les classes à l'intérieur d'un package
J'ai parfaitement de travail logback.xml pour la console, qui enregistre tous le niveau de débogage consolidés.
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<property name="CONSOLE_LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} %5p ${PID:- } [%t] --- %-40.40logger{39} : %m%n%wex"/>
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>DEBUG</level>
</filter>
<encoder>
<pattern>${CONSOLE_LOG_PATTERN}</pattern>
</encoder>
</appender>
<root level="DEBUG">
<appender-ref ref="CONSOLE"/>
</root>
</configuration>
</xml>
Maintenant, je voudrais le modifier pour supprime la journalisation de tous les enregistreurs à partir d'un certain paquet.
Par exemple, disons que je voudrais supprimer toutes les informations de niveau de journaux à partir de classes qui appartient à org.apache.zookeeper
L'une des solutions que j'ai trouvé a été par la création d'un filtre personnalisé, semblable à la façon dont il est indiqué ici - logback: Deux appenders, plusieurs enregistreurs de frappe, les différents niveaux . Mais ai-je vraiment besoin d'écrire du java pour qui?
Comparing this problem to log4j, this can be easily accomplished by following -
log4j.logger.org.apache.zookeeper=WARN, CONSOLE
Merci d'avance!.
Vous devez vous connecter pour publier un commentaire.
Si vous avez seulement un appender (contrairement à votre lien qui avait besoin d'un filtre personnalisé), ou à tous vos appenders sont les mêmes, cela devrait fonctionner:
Je ne pense pas que le
ThresholdFilter
dans votre original était rien ajouter BTW, et le XML n'est pas valide (il n'y a pas<xml/>
tag).Aussi, si vous êtes à l'aide de Spring Boot, le appender modèle est très similaire à la valeur par défaut, de sorte que vous pouvez probablement le faire:
org.apache.zookeeper
dans la configuration, autres que la création d'une coutumeFilter
level="OFF"
devrait le faire. Mieux encore, vous pouvez le faire dans votreapplication.properties
aveclogging.level.org.apache.zookeeper=OFF
(leapplication.properties
bits n'est pas disponible lorsque j'ai écrit l'original de la réplique)<logger name="org.apache.zookeeper" level="WARN"/>
ligne m'a aidé.