Class: Deimos::Metrics::Provider

Inherits:
Object
  • Object
show all
Defined in:
lib/deimos/metrics/provider.rb

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

Parameters:

  • metric_name (String)

    The name of the counter metric

  • count (Integer)
  • options (Hash) (defaults to: {})

    Any additional options, e.g. :tags

Raises:



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

Parameters:

  • metric_name (String)

    The name of the counter metric

  • count (Integer)
  • options (Hash) (defaults to: {})

    Any additional options, e.g. :tags

Raises:



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

Parameters:

  • metric_name (String)

    The name of the counter metric

  • options (Hash) (defaults to: {})

    Any additional options, e.g. :tags

Raises:



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

Parameters:

  • metric_name (String)

    The name of the metric

  • options (Hash) (defaults to: {})

    Any additional options, e.g. :tags

Raises:



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

def time(metric_name, options={})
  raise MissingImplementationError
end