Module: GraphQL::Tracing::ScoutTrace
- Includes:
- PlatformTrace
- Defined in:
- lib/graphql/tracing/scout_trace.rb
Overview
A tracer for sending GraphQL-Ruby times to Scout
Constant Summary
collapse
- INSTRUMENT_OPTS =
{ scope: true }
Instance Method Summary
collapse
#platform_authorized_lazy, #platform_execute_field_lazy, #platform_resolve_type_lazy
Instance Method Details
#initialize(set_transaction_name: false, **_rest) ⇒ Object
21
22
23
24
25
|
# File 'lib/graphql/tracing/scout_trace.rb', line 21
def initialize(set_transaction_name: false, **_rest)
self.class.include(ScoutApm::Tracer)
@set_transaction_name = set_transaction_name
super
end
|
61
62
63
|
# File 'lib/graphql/tracing/scout_trace.rb', line 61
def platform_authorized(platform_key, &block)
self.class.instrument("GraphQL", platform_key, INSTRUMENT_OPTS, &block)
end
|
71
72
73
|
# File 'lib/graphql/tracing/scout_trace.rb', line 71
def platform_authorized_key(type)
"#{type.graphql_name}.authorized"
end
|
57
58
59
|
# File 'lib/graphql/tracing/scout_trace.rb', line 57
def platform_execute_field(platform_key, &block)
self.class.instrument("GraphQL", platform_key, INSTRUMENT_OPTS, &block)
end
|
67
68
69
|
# File 'lib/graphql/tracing/scout_trace.rb', line 67
def platform_field_key(field)
field.path
end
|
75
76
77
|
# File 'lib/graphql/tracing/scout_trace.rb', line 75
def platform_resolve_type_key(type)
"#{type.graphql_name}.resolve_type"
end
|