Class: Deimos::Metrics::Provider

Inherits:
Object
  • Object
show all
Defined in:
lib/deimos/metrics/provider.rb,
sig/defs.rbs

Overview

Base class for all metrics providers.

Direct Known Subclasses

Datadog, Mock

Instance Method Summary collapse

Instance Method Details

#gauge(_metric_name, _count, _options = {}) ⇒ void

This method returns an undefined value.

Send an counter increment metric

@param metric_name — The name of the counter metric

@param count

@param options — Any additional options, e.g. :tags

Parameters:

  • metric_name (String)
  • count (Integer)
  • options (::Hash[untyped, untyped])


20
21
22
# File 'lib/deimos/metrics/provider.rb', line 20

def gauge(_metric_name, _count, _options={})
  raise MissingImplementationError
end

#histogram(_metric_name, _count, _options = {}) ⇒ void

This method returns an undefined value.

Send an counter increment metric

@param metric_name — The name of the counter metric

@param count

@param options — Any additional options, e.g. :tags

Parameters:

  • metric_name (String)
  • count (Integer)
  • options (::Hash[untyped, untyped])


29
30
31
# File 'lib/deimos/metrics/provider.rb', line 29

def histogram(_metric_name, _count, _options={})
  raise MissingImplementationError
end

#increment(_metric_name, _options = {}) ⇒ void

This method returns an undefined value.

Send an counter increment metric

@param metric_name — The name of the counter metric

@param options — Any additional options, e.g. :tags

Parameters:

  • metric_name (String)
  • options (::Hash[untyped, untyped])


11
12
13
# File 'lib/deimos/metrics/provider.rb', line 11

def increment(_metric_name, _options={})
  raise MissingImplementationError
end

#time(_metric_name, _options = {}) ⇒ void

This method returns an undefined value.

Time a yielded block, and send a timer metric

@param metric_name — The name of the metric

@param options — Any additional options, e.g. :tags

Parameters:

  • metric_name (String)
  • options (::Hash[untyped, untyped])


37
38
39
# File 'lib/deimos/metrics/provider.rb', line 37

def time(_metric_name, _options={})
  raise MissingImplementationError
end