class GraphQL::Tracing::PrometheusTracing::GraphQLCollector
Public Class Methods
new()
click to toggle source
# File lib/graphql/tracing/prometheus_tracing/graphql_collector.rb, line 6 def initialize @graphql_gauge = PrometheusExporter::Metric::Summary.new( 'graphql_duration_seconds', 'Time spent in GraphQL operations, in seconds' ) end
Public Instance Methods
collect(object)
click to toggle source
# File lib/graphql/tracing/prometheus_tracing/graphql_collector.rb, line 17 def collect(object) labels = { key: object['key'], platform_key: object['platform_key'] } @graphql_gauge.observe object['duration'], labels end
metrics()
click to toggle source
# File lib/graphql/tracing/prometheus_tracing/graphql_collector.rb, line 22 def metrics [@graphql_gauge] end
type()
click to toggle source
# File lib/graphql/tracing/prometheus_tracing/graphql_collector.rb, line 13 def type 'graphql' end