module ILove::Tracing

Constants

VERSION

Public Class Methods

configuration() click to toggle source
# File lib/ilove/tracing.rb, line 86
def self.configuration
  @cfg
end
configure() { |cfg| ... } click to toggle source
# File lib/ilove/tracing.rb, line 90
def self.configure(&_block)
  @cfg = Configuration.new
  yield @cfg
  setup @cfg
end
setup(cfg) click to toggle source
# File lib/ilove/tracing.rb, line 96
def self.setup(cfg)
  return unless cfg.enabled?

  require_relative 'tracing/client'

  ILove::Tracing::Client.setup cfg

  if cfg.trace_incoming_requests?
    require_relative 'tracing/incoming_requests'

    ILove::Tracing::IncomingRequests.setup cfg
  end

  if cfg.trace_outgoing_requests?
    require_relative 'tracing/outgoing_requests'

    ILove::Tracing::OutgoingRequests.setup cfg
  end

  if cfg.trace_twirp_requests?
    require_relative 'tracing/twirp'

    ILove::Tracing::Twirp.setup cfg
  end

  if cfg.trace_sql?
    require_relative 'tracing/sql'

    ILove::Tracing::Sql.setup cfg
  end

  if cfg.pass_request_id?
    require_relative 'tracing/request_id'

    ILove::Tracing::RequestId.setup cfg
  end

  if cfg.pass_request_id? || cfg.trace_outgoing_requests?
    ILove::Tracing::FaradayMiddleware.setup cfg
  end
end