66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
|
# File 'lib/binnacle/http_logging/adapters/httpclient.rb', line 66
def do_get_block(req, proxy, conn, &block)
url = req..request_uri
log_enabled = Binnacle::HttpLogger.allow?(url)
return orig_do_get_block(req, proxy, conn, &block) unless log_enabled
uri = URI(url)
url_without_query = "#{uri.scheme}://#{uri.host}:#{uri.port}#{uri.path}"
retryable_response = nil
bm = Benchmark.realtime do
begin
orig_do_get_block(req, proxy, conn, &block)
rescue RetryableResponse => e
retryable_response = e
end
end
res = conn.pop
= res.
Binnacle::HttpLogger.signal(url_without_query, req..request_method, uri.host, uri.port, uri.path, uri.query, res.status_code, bm, , res.body, ['Content-Encoding'], ['Content-Type'])
conn.push(res)
raise retryable_response if retryable_response != nil
end
|