Class: Net::HTTP
- Inherits:
-
Object
- Object
- Net::HTTP
- Defined in:
- lib/httplog/adapters/net_http.rb
Instance Method Summary collapse
- #connect ⇒ Object
- #orig_connect ⇒ Object
- #orig_request ⇒ Object
- #request(req, body = nil, &block) ⇒ Object
Instance Method Details
#connect ⇒ Object
33 34 35 36 37 |
# File 'lib/httplog/adapters/net_http.rb', line 33 def connect HttpLog.log_connection(@address, @port) if !started? && HttpLog.url_approved?("#{@address}:#{@port}") orig_connect end |
#orig_connect ⇒ Object
6 |
# File 'lib/httplog/adapters/net_http.rb', line 6 alias orig_connect connect |
#orig_request ⇒ Object
5 |
# File 'lib/httplog/adapters/net_http.rb', line 5 alias orig_request request |
#request(req, body = nil, &block) ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/httplog/adapters/net_http.rb', line 8 def request(req, body = nil, &block) url = "http://#{@address}:#{@port}#{req.path}" bm = Benchmark.realtime do @response = orig_request(req, body, &block) end if HttpLog.url_approved?(url) && started? HttpLog.call( method: req.method, url: url, request_body: req.body.nil? || req.body.empty? ? body : req.body, request_headers: req.each_header.collect, response_code: @response.code, response_body: @response.body, response_headers: @response.each_header.collect, benchmark: bm, encoding: @response['Content-Encoding'], content_type: @response['Content-Type'] ) end @response end |