2016-04-20 32 views
0

如何禁用urllib3重试警告消息?如何禁用urllib3重试警告消息?

[WARN]重试连接由 'NewConnectionError(' 断之后(重试(总= 9,连接=无,读=无, 重定向=无)):无法建立新的连接: [ Errno 111] Connection refused',)'

我在执行我的测试用例时收到了数千条警告消息,因为它在给定单元上有很多URI POST/PATCH操作。

由于这种影响,日志文件大小急剧增加。

有没有可能删除/禁用警告消息时NewConnectionError?

我试图禁用来自NewConnectionError的警告消息,它不工作。

from requests.packages.urllib3.exceptions import NewConnectionError 
requests.packages.urllib3.disable_warnings(NewConnectionError) 

回答

0

试试这个:

import logging 
logging.getLogger("urllib3").setLevel(logging.ERROR) 
+0

谢谢@保罗,不过我得到同样的警告消息 –

+0

作品的记录是从vendored包请求里面进口的,这样的路径不只是“urllib3”不幸。 – shazow

1

你看到的警告是NewConnectionError引起但它实际上并不是一个发出warning而是一个log.warn(...)。您可以提高urllib3日志级别以摆脱它。

因为您使用的urllib3是在请求内部进行销售的,并且记录器从包路径中获取其名称,所以它是“requests.packages.urllib3”而不仅仅是“urllib3”。该值在requests.packages.urllib3.__package__变量中很明显。

import logging 
import requests 
logging.getLogger(requests.packages.urllib3.__package__).setLevel(logging.ERROR) 
0

我可以能够与下面的代码片段上悬而未决

requests_log = logging.getLogger("requests") 
requests_log.setLevel(logging.ERROR) 
requests_log.propagate = True