Method: OneApm::Collector::Commands::XraySessionCollection#remove_session_by_id

Defined in:
lib/one_apm/collector/commands/xray_session_collection.rb

#remove_session_by_id(id) ⇒ Object



133
134
135
136
137
138
139
140
141
142
143
144
145
# File 'lib/one_apm/collector/commands/xray_session_collection.rb', line 133

def remove_session_by_id(id)
  session = @sessions_lock.synchronize { @sessions.delete(id) }

  if session
    OneApm::Manager.logger.debug("Removing X-Ray session #{session.inspect}")
    OneApm::Manager.increment_metric("Supportability/XraySessions/Stops")

    if session.run_profiler?
      @backtrace_service.unsubscribe(session.key_transaction_name)
    end
    session.deactivate
  end
end