2016-04-20 34 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