Skip to content

Commit 8c31dba

Browse files
committed
Merge pull request #93 from jkeyes/request-logging
Adding basic request logging.
2 parents 949056d + 07433f8 commit 8c31dba

File tree

1 file changed

+20
-0
lines changed

1 file changed

+20
-0
lines changed

intercom/request.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,11 @@
55

66
import certifi
77
import json
8+
import logging
89
import requests
910

11+
logger = logging.getLogger('intercom.request')
12+
1013

1114
class Request(object):
1215

@@ -29,10 +32,27 @@ def send_request_to_path(cls, method, url, auth, params=None):
2932
elif method == 'GET':
3033
req_params['params'] = params
3134
req_params['headers'] = headers
35+
36+
# request logging
37+
if logger.isEnabledFor(logging.DEBUG):
38+
logger.debug("Sending %s request to: %s", method, url)
39+
logger.debug(" headers: %s", headers)
40+
if method == 'GET':
41+
logger.debug(" params: %s", req_params['params'])
42+
else:
43+
logger.debug(" params: %s", req_params['data'])
44+
3245
resp = requests.request(
3346
method, url, timeout=cls.timeout,
3447
auth=auth, verify=certifi.where(), **req_params)
3548

49+
# response logging
50+
if logger.isEnabledFor(logging.DEBUG):
51+
logger.debug("Response received from %s", url)
52+
logger.debug(" encoding=%s status:%s",
53+
resp.encoding, resp.status_code)
54+
logger.debug(" content:\n%s", resp.content)
55+
3656
cls.raise_errors_on_failure(resp)
3757
cls.set_rate_limit_details(resp)
3858

0 commit comments

Comments
 (0)