class Datadog::Profiling::Events::Stack

Describes a stack profiling event

Attributes

frames[R]
hash[R]
span_id[R]
thread_id[R]
total_frame_count[R]
trace_id[R]
trace_resource_container[R]

Public Class Methods

new( timestamp, frames, total_frame_count, thread_id, trace_id, span_id, trace_resource_container ) click to toggle source
Calls superclass method Datadog::Profiling::Event::new
# File lib/ddtrace/profiling/events/stack.rb, line 18
def initialize(
  timestamp,
  frames,
  total_frame_count,
  thread_id,
  trace_id,
  span_id,
  trace_resource_container
)
  super(timestamp)

  @frames = frames
  @total_frame_count = total_frame_count
  @thread_id = thread_id
  @trace_id = trace_id
  @span_id = span_id
  @trace_resource_container = trace_resource_container

  @hash = [
    thread_id,
    trace_id,
    span_id,
    # trace_resource_container is deliberately not included -- events that share the same (trace_id, span_id)
    # pair should also have the same trace_resource_container
    frames.collect(&:hash),
    total_frame_count
  ].hash
end