Method: NewRelic::Agent::Threading::BacktraceService#buffer_backtrace_for_thread

Defined in:
lib/new_relic/agent/threading/backtrace_service.rb

#buffer_backtrace_for_thread(thread, timestamp, backtrace, bucket) ⇒ Object

This method is expected to be called with @lock held.



209
210
211
212
213
214
215
216
217
218
# File 'lib/new_relic/agent/threading/backtrace_service.rb', line 209

def buffer_backtrace_for_thread(thread, timestamp, backtrace, bucket)
  if should_buffer?(bucket)
    @buffer[thread] ||= []
    if @buffer[thread].length < MAX_BUFFER_LENGTH
      @buffer[thread] << [timestamp, backtrace]
    else
      NewRelic::Agent.increment_metric('Supportability/ThreadProfiler/DroppedBacktraces')
    end
  end
end