Module: GraphQL::Tracing::AppsignalTrace
- Includes:
- PlatformTrace
- Defined in:
- lib/graphql/tracing/appsignal_trace.rb
Overview
Instrumentation for reporting GraphQL-Ruby times to Appsignal.
Instance Method Summary
collapse
#platform_authorized_lazy, #platform_execute_field_lazy, #platform_resolve_type_lazy
Instance Method Details
#initialize(set_action_name: false, **rest) ⇒ Object
19
20
21
22
|
# File 'lib/graphql/tracing/appsignal_trace.rb', line 19
def initialize(set_action_name: false, **rest)
@set_action_name = set_action_name
super
end
|
64
65
66
67
68
|
# File 'lib/graphql/tracing/appsignal_trace.rb', line 64
def platform_authorized(platform_key)
Appsignal.instrument(platform_key) do
yield
end
end
|
80
81
82
|
# File 'lib/graphql/tracing/appsignal_trace.rb', line 80
def platform_authorized_key(type)
"#{type.graphql_name}.authorized.graphql"
end
|
rubocop:enable Development/NoEvalCop
58
59
60
61
62
|
# File 'lib/graphql/tracing/appsignal_trace.rb', line 58
def platform_execute_field(platform_key)
Appsignal.instrument(platform_key) do
yield
end
end
|
76
77
78
|
# File 'lib/graphql/tracing/appsignal_trace.rb', line 76
def platform_field_key(field)
"#{field.owner.graphql_name}.#{field.graphql_name}.graphql"
end
|
70
71
72
73
74
|
# File 'lib/graphql/tracing/appsignal_trace.rb', line 70
def platform_resolve_type(platform_key)
Appsignal.instrument(platform_key) do
yield
end
end
|
84
85
86
|
# File 'lib/graphql/tracing/appsignal_trace.rb', line 84
def platform_resolve_type_key(type)
"#{type.graphql_name}.resolve_type.graphql"
end
|