在SpringBoot中使用了HttpClient之后,会产生大量嘈杂且基本无效的日志信息,如下图:
找了很多文章,大部分用common-logging.propertites,log4j.propertites等方式进行配置,都不生效。
仅有该文章生效了 java – 禁用HttpClient日志记录
并说清楚了原因
更新log4j.properties以包括:
log4j.logger.httpclient.wire.header=WARN
log4j.logger.httpclient.wire.content=WARN
请注意,如果没有安装Log4j库,HttpClient(因此JWebUnit)将使用logback。在这种情况下,创建或编辑logback.xml包括:
<configuration>
<logger name="org.apache" level="WARN" />
<logger name="httpclient" level="WARN" />
</configuration>
使用log4j.properties中的程序包名称org.apache.commons.httpclient将日志级别设置为WARN,将无法按预期工作:
log4j.logger.org.apache.commons.httpclient=WARN
这是因为HttpClient(v3.1)的源使用以下日志名称:
public static Wire HEADER_WIRE = new Wire(LogFactory.getLog("httpclient.wire.header"));
public static Wire CONTENT_WIRE = new Wire(LogFactory.getLog("httpclient.wire.content"));