Sha256: 6d8757210f5a26e89a5a36492437bfb87ce1a9e53a316847b9daeaa25e2cd2e9
Contents?: true
Size: 953 Bytes
Versions: 2
Compression:
Stored size: 953 Bytes
Contents
require "net/https" require "multi_json" module CFoundry module TraceHelpers def request_trace(request) return nil unless request info = ["REQUEST: #{request.method} #{request.path}"] info << "REQUEST_HEADERS:" info << header_trace(request) info << "REQUEST_BODY: #{request.body}" if request.body info.join("\n") end def response_trace(response) return nil unless response info = ["RESPONSE: [#{response.code}]"] info << "RESPONSE_HEADERS:" info << header_trace(response) info << "RESPONSE_BODY:" begin parsed_body = MultiJson.load(response.body) info << MultiJson.dump(parsed_body, :pretty => true) rescue info << "#{response.body}" end info.join("\n") end private def header_trace(headers) headers.to_hash.sort.map do |key, value| " #{key} : #{value.join(", ")}" end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
cfoundry-0.4.21 | lib/cfoundry/trace_helpers.rb |
cfoundry-0.4.19 | lib/cfoundry/trace_helpers.rb |