diff options
author | Erik Johnston <erik@matrix.org> | 2015-06-15 13:05:11 +0100 |
---|---|---|
committer | Erik Johnston <erik@matrix.org> | 2015-06-15 13:14:12 +0100 |
commit | 83f119a84a592ccf0d2dc06e699bcf11eb4380b0 (patch) | |
tree | 09844b120e785a6779f795fbd9f71721f3ccde93 /synapse/http | |
parent | Merge pull request #183 from intelfx/install-python-schema-deltas (diff) | |
download | synapse-83f119a84a592ccf0d2dc06e699bcf11eb4380b0.tar.xz |
Log requests and responses sent via http.client
Diffstat (limited to 'synapse/http')
-rw-r--r-- | synapse/http/client.py | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/synapse/http/client.py b/synapse/http/client.py index e746f2416e..9091ae2d38 100644 --- a/synapse/http/client.py +++ b/synapse/http/client.py @@ -61,21 +61,31 @@ class SimpleHttpClient(object): self.agent = Agent(reactor, pool=pool) self.version_string = hs.version_string - def request(self, method, *args, **kwargs): + def request(self, method, uri, *args, **kwargs): # A small wrapper around self.agent.request() so we can easily attach # counters to it outgoing_requests_counter.inc(method) d = preserve_context_over_fn( self.agent.request, - method, *args, **kwargs + method, uri, *args, **kwargs ) + logger.info("Sending request %s %s", method, uri) + def _cb(response): incoming_responses_counter.inc(method, response.code) + logger.info( + "Received response to %s %s: %s", + method, uri, response.code + ) return response def _eb(failure): incoming_responses_counter.inc(method, "ERR") + logger.info( + "Error sending request to %s %s: %s %s", + method, uri, failure.type, failure.getErrorMessage() + ) return failure d.addCallbacks(_cb, _eb) @@ -84,7 +94,9 @@ class SimpleHttpClient(object): @defer.inlineCallbacks def post_urlencoded_get_json(self, uri, args={}): + # TODO: Do we ever want to log message contents? logger.debug("post_urlencoded_get_json args: %s", args) + query_bytes = urllib.urlencode(args, True) response = yield self.request( @@ -105,7 +117,7 @@ class SimpleHttpClient(object): def post_json_get_json(self, uri, post_json): json_str = encode_canonical_json(post_json) - logger.info("HTTP POST %s -> %s", json_str, uri) + logger.debug("HTTP POST %s -> %s", json_str, uri) response = yield self.request( "POST", |