java - 无法关闭 HttpClient Wire 调试日志消息

标签 java logging log4j apache-httpclient-4.x

我一直在尝试将 Wire 设置为不将 DEBUG 发送到控制台,但无论我做什么,它都不会监听。

我已正确初始化 log4j:我没有收到任何附加程序消息,log4j 遵循我的类和控制台级别。

在 log4j.properties 中,我有各种可预见的方式来编写连线:

    log4j.logger.org.httpclient=ERROR
    log4j.logger.org.apache=ERROR
    log4j.logger.org.apache.http=ERROR
    log4j.logger.org.apache.http.wire=ERROR
    log4j.logger.org.apache.http.wire.headers=ERROR
    log4j.logger.httpclient.wire=ERROR
    log4j.logger.httpclient.headers=ERROR
    log4j.logger.httpclient.content=ERROR
    log4j.logger.org.apache.hc.client5.http.wire=ERROR
    log4j.logger.httpclient=ERROR
    wire=ERROR
    http=ERROR

然后我想为什么不在调用后打印所有记录器呢? 所以我就这么做了。我得到了上面提到的所有内容以及我当前类(class)的精美打印输出。迭代 LogManager.getCurrentLoggers()

不会打印任何其他内容

我想我此时已经阅读了 Google 上的所有结果。任何指导将不胜感激。

关于项目:项目是一个maven项目-pom.xml包含资源文件夹。为了完成这项工作,我实际上创建了一个 ControlLogging 类,并首先调用 PropertyConfiguratior.configure("log4j.properties") 。我将此函数称为 @Before 测试运行,并在进行 API 调用的静态类中。在任何时候进行打印都不会泄露有线记录器。

最佳答案

因此,最终对我的项目起作用的是为 sl4j/logback 创建配置 - 我无法使其适用于 log4j 等。

所以在main/java/resources/logback.xml

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

     <logger name="org.apache" level="ERROR"/>
     <logger name="httpclient" level="ERROR"/>

     <root level="DEBUG">
          <appender-ref ref="STDOUT" />
     </root>
</configuration>

在 Maven 中,我只是包含了 slf4j 的依赖项

 <dependency>
     <groupId>org.slf4j</groupId>
     <artifactId>slf4j-api</artifactId>
 </dependency>
 <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>jcl-over-slf4j</artifactId>
 </dependency>

现在一切正常。

关于java - 无法关闭 HttpClient Wire 调试日志消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50936465/

相关文章:

java - 为什么 tomcat 无法启动无法启动 apache tomcat web 服务器 tomcat.service : Control process exited, code=exited status=203

Java 调试消息/日志,指示输入了哪个类或方法

java - Log4j2自定义日志级别过滤到不同的文件

java - 为 Log4j 1.2 注册自定义 LoggerFactory 的正确方法?

jakarta-ee - 具有多个 WebLogic 实例的 log4j

Java 减少堆栈大小以节省内存

java - 使用新方法访问 ArrayList 时出现编译时错误

java - 是否可以向 API Explorer 中的 Cloud Endpoint Java 字段添加描述?

git log <filename> 不显示提交,但 git log 显示编辑文件的提交

android - 亚行 logcat Cordova 安卓 4