如何在 java 中更改第 3 方库的日志级别

how to change log levels of 3rd party library in java

控制台日志中充斥着来自第 3 部分库的日志。例如,我的项目使用 kafka 和 zooker keeper 客户端库,因为它们的日志太多

  1. 2018-05-08 10:30:38.250 信息 2968 --- [0:0:0:0:1:2181)] org.apache.zookeeper.ClientCnxn : 打开套接字连接 到服务器 0:0:0:0:0:0:0:1/0:0:0:0:0:0:0:1:2181。不会尝试 使用 SASL 进行身份验证(未知错误)

  2. 2018-05-08 10:30:38.309 INFO 2968 --- [主] o.a.k.clients.producer.ProducerConfig:生产者配置值:

    我的项目中有一个 log4j2.xml 文件。在 xml 文件中更改根日志级别只会更改我的项目生成的自定义日志的日志级别。 有没有办法停止或更改这些库的日志

切换到 Logback 并更改泛洪记录器的日志记录级别。通常,它以其 class 引用命名。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
 <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <encoder>
        <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
    </encoder>
 </appender>
 <logger name="flooding logger" level="ERROR" additivity="false">
    <appender-ref ref="STDOUT"/>
 </logger>
 <root level="INFO">
    <appender-ref ref="STDOUT"/>
 </root>
</configuration>