class Net::HTTP
Public Instance Methods
connect()
click to toggle source
# File lib/influxdb/rails/httplog/adapters/net_http.rb, line 47 def connect HttpLog.log_connection(@address, @port) if !started? && HttpLog.url_approved?("#{@address}:#{@port}") orig_connect end
Also aliased as: orig_connect
request(req, body = nil, &block)
click to toggle source
# File lib/influxdb/rails/httplog/adapters/net_http.rb, line 8 def request(req, body = nil, &block) url = "http://#{@address}:#{@port}#{req.path}" #req['al-source'] = req['X-Request-Id'] if req['X-Request-Id'] req['Al-Request-Client-Id'] = SecureRandom.uuid req['al-source'] = Thread.current["al_request_id"] if Thread.current["al_request_id"] timestamp = nil bm = Benchmark.realtime do timestamp= Time.now.to_i @response = orig_request(req, body, &block) end c = InfluxDB::Rails.configuration is_influxdb = (c.influxdb_hosts.include? @address ) && (@port == c.influxdb_port) if !is_influxdb && (HttpLog.url_approved?(url) && started?) HttpLog.save_in_db( method: req.method, url: url, timestamp: timestamp, 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
Also aliased as: orig_request