Sha256: efedd72d09dc04a2926cfc250317112ab8763f01d288e665d70d7392a7f91865
Contents?: true
Size: 1.83 KB
Versions: 2
Compression:
Stored size: 1.83 KB
Contents
# encoding: utf-8 TingYun::Support::LibraryDetection.defer do named :net_http depends_on do defined?(Net) && defined?(Net::HTTP) end executes do ::TingYun::Agent.logger.info 'Installing Net instrumentation' require 'ting_yun/agent/cross_app/cross_app_tracing' require 'ting_yun/http/net_http_request' require 'ting_yun/instrumentation/support/external_error' end executes do class Net::HTTP def request_with_tingyun_trace(request, *args, &block) tingyun_request = TingYun::Http::NetHttpRequest.new(self, request) TingYun::Agent::CrossAppTracing.tl_trace_http_request(tingyun_request) do TingYun::Agent.disable_all_tracing do request_without_tingyun_trace(request, *args, &block ) end end end alias :request_without_tingyun_trace :request alias :request :request_with_tingyun_trace class << self def get_response_with_tingyun(uri_or_host, path = nil, port = nil, &block) begin get_response_without_tingyun(uri_or_host, path = nil, port = nil, &block) rescue => e klass = "External/#{uri_or_host.to_s.gsub('/','%2F')}/net%2Fhttp" ::TingYun::Instrumentation::Support::ExternalError.handle_error(e,klass) end end alias get_response_without_tingyun get_response alias get_response get_response_with_tingyun def start_with_tingyun(address, *arg, &block) begin start_without_tingyun(address, *arg, &block) rescue => e klass = "External/#{address.to_s.gsub('/','%2F')}/net%2Fhttp" ::TingYun::Instrumentation::Support::ExternalError.handle_error(e,klass) end end alias :start_without_tingyun :start alias :start :start_with_tingyun end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
tingyun_rpm-1.0.7 | lib/ting_yun/instrumentation/net.rb |
tingyun_rpm-1.0.6 | lib/ting_yun/instrumentation/net.rb |