@@ -15,15 +15,15 @@ def __init__(self, url, username, password):
15
15
self .username = username
16
16
self .password = password
17
17
18
- def log_curl_debug (self , method , path , headers = {}, data = None ):
19
- command = "curl --silent -X {method} -u '{username}':'{password}' -H {headers} {data} '{url}'" .format (
18
+ def log_curl_debug (self , method , path , headers = {}, data = None , level = logging . DEBUG ):
19
+ message = "curl --silent -X {method} -u '{username}':'{password}' -H {headers} {data} '{url}'" .format (
20
20
method = method ,
21
21
username = self .username ,
22
22
password = self .password ,
23
23
headers = ' -H ' .join (["'{0}: {1}'" .format (key , value ) for key , value in headers .items ()]),
24
24
data = '' if not data else "--data '{0}'" .format (json .dumps (data )),
25
25
url = '{0}{1}' .format (self .url , path ))
26
- log .debug ( command )
26
+ log .log ( level = level , msg = message )
27
27
28
28
def request (self , method = 'GET' , path = '/' , headers = {'Content-Type' : 'application/json' , 'Accept' : 'application/json' }, data = None ):
29
29
self .log_curl_debug (method , path , headers , data )
@@ -34,6 +34,9 @@ def request(self, method='GET', path='/', headers={'Content-Type': 'application/
34
34
data = json .dumps (data ),
35
35
auth = (self .username , self .password ),
36
36
timeout = 60 )
37
+ if response .status_code != 200 :
38
+ self .log_curl_debug (method , path , headers , data , level = logging .WARNING )
39
+ log .warning (response .json ())
37
40
response .raise_for_status ()
38
41
log .debug ('Received: {0}' .format (response .json ()))
39
42
return response
0 commit comments