Sha256: df6ea67612f5087871b80223b91468f89694a05c4ad2788d6d13ca5fc22bcb09
Contents?: true
Size: 1.82 KB
Versions: 1
Compression:
Stored size: 1.82 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 , port , &block) rescue => e ::TingYun::Instrumentation::Support::ExternalError.handle_error(e, "External/#{uri_or_host.to_s.gsub('/','%2F')}/net%2Fhttp") raise e 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 ::TingYun::Instrumentation::Support::ExternalError.handle_error(e, "External/#{address.to_s.gsub('/','%2F')}/net%2Fhttp") raise e end end alias :start_without_tingyun :start alias :start :start_with_tingyun end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
tingyun_rpm-1.2.0 | lib/ting_yun/instrumentation/net.rb |