module Net::LDAP::Instrumentation

Attributes

instrumentation_service[R]

Private Instance Methods

instrument(event, payload = {}) { |payload| ... } click to toggle source

Internal: Instrument a block with the defined instrumentation service.

Yields the event payload if a block is given.

Skips instrumentation if no service is set.

Returns the return value of the block.

# File lib/net/ldap/instrumentation.rb, line 12
def instrument(event, payload = {})
  payload = (payload || {}).dup
  if instrumentation_service
    instrumentation_service.instrument(event, payload) do |payload|
      payload[:result] = yield(payload) if block_given?
    end
  else
    yield(payload) if block_given?
  end
end