如何通过http

时间:2015-10-07 09:38:25

标签: java logging log4j

当我记录包含它们的Http POST消息时,我想隐藏log4j日志中的用户名和密码。我在此示例中删除了真实的用户名和密码:

2015-10-07 11:19:41  DEBUG wire:72 - http-outgoing-3 >> "POST /login?IDToken1=<Username in plain text is seen here>&IDToken2=<Password in plain text is seen here> HTTP/1.1[\r][\n]"

我有一个log4j.properties文件,其rootlogger设置为DEBUG。 我尝试使用以下行仅记录INFO级别:

log4j.logger.org.apache.http.headers=INFO
log4j.logger.org.apache.http.client=INFO
log4j.logger.org.apache.http.wire=INFO

但它们都不起作用。我试过这个并且它有效:

log4j.logger.org.apache.http=INFO

唯一的问题是DEBUG级别的所有http登录也被隐藏。我真的只想隐藏用户名和密码,如果可能的话。 要么是微调,要么微调粒度,以便我可以隐藏上面例子中的消息。

这可能吗?

1 个答案:

答案 0 :(得分:0)

这是log4j conf。我正在使用:

# (org.apache.commons.httpclient.Wire)
log4j.logger.httpclient.wire.header = INFO
log4j.logger.httpclient.wire.content = INFO
log4j.logger.org.apache.commons.httpclient = INFO