module Datadog::Contrib::MongoDB::Instrumentation::Client::InstanceMethods

Instance methods for Mongo::Client

Public Instance Methods

datadog_pin() click to toggle source
# File lib/ddtrace/contrib/mongodb/instrumentation.rb, line 21
def datadog_pin
  # safe-navigation to avoid crashes during each query
  return unless respond_to? :cluster
  return unless cluster.respond_to? :addresses
  return unless cluster.addresses.respond_to? :first
  Datadog::Pin.get_from(cluster.addresses.first)
end
datadog_pin=(pin) click to toggle source
# File lib/ddtrace/contrib/mongodb/instrumentation.rb, line 29
def datadog_pin=(pin)
  # safe-navigation to avoid crashes during each query
  return unless respond_to? :cluster
  return unless cluster.respond_to? :addresses
  return unless cluster.addresses.respond_to? :each
  # attach the PIN to all cluster addresses. One of them is used
  # when executing a Command and it is attached to the Monitoring
  # Event instance.
  cluster.addresses.each { |x| pin.onto(x) }
end