Module: Prometheus::Client::UsesValueType

Included in:
Histogram::Value, Metric, Summary::Value
Defined in:
lib/prometheus/client/uses_value_type.rb

Overview

Module providing convenience methods for creating value_object

Instance Method Summary collapse

Instance Method Details

#value_classObject



7
8
9
# File 'lib/prometheus/client/uses_value_type.rb', line 7

def value_class
  Prometheus::Client.configuration.value_class
end

#value_object(type, metric_name, name, labels, *args) ⇒ Object



11
12
13
14
15
16
17
# File 'lib/prometheus/client/uses_value_type.rb', line 11

def value_object(type, metric_name, name, labels, *args)
  value_class.new(type, metric_name, name, labels, *args)
rescue StandardError => e
  Prometheus::Client.logger.info("error #{e} while creating instance of #{value_class} defaulting to SimpleValue")
  Prometheus::Client.logger.debug("error #{e} backtrace #{e.backtrace.join("\n")}")
  Prometheus::Client::SimpleValue.new(type, metric_name, name, labels)
end