Method: GraphQL::Tracing::DataDogTrace#authorized_span

Defined in:
lib/graphql/tracing/data_dog_trace.rb

#authorized_span(span_key, object, type, query) ⇒ Object

[View source] [View on GitHub]

119
120
121
122
123
124
125
126
127
128
129
130
# File 'lib/graphql/tracing/data_dog_trace.rb', line 119

def authorized_span(span_key, object, type, query)
  platform_key = @platform_key_cache[DataDogTrace].platform_authorized_key_cache[type]
  @tracer.trace(platform_key, service: @service_name, type: 'custom') do |span|
    span.set_tag('component', 'graphql')
    span.set_tag('operation', span_key)

    if @has_prepare_span
      prepare_span(span_key, {object: object, type: type, query: query}, span)
    end
    yield
  end
end