Class: PgEventstore::Web::Metrics::MetricFamily

Inherits:
Object
  • Object
show all
Defined in:
lib/pg_eventstore/web/metrics/metric_family.rb,
sig/pg_eventstore/web/metrics/metric_family.rbs

Overview

A collection of samples of a single Prometheus metric.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name:, type:, help:) ⇒ MetricFamily

Returns a new instance of MetricFamily.

Parameters:

  • name (String)
  • type (String)
  • help (String)
  • name: (String)
  • type: (String)
  • help: (String)


24
25
26
27
28
29
# File 'lib/pg_eventstore/web/metrics/metric_family.rb', line 24

def initialize(name:, type:, help:)
  @name = name
  @type = type
  @help = help
  @samples = []
end

Instance Attribute Details

#helpString

Returns the value of attribute help.

Returns:

  • (String)


16
17
18
# File 'lib/pg_eventstore/web/metrics/metric_family.rb', line 16

def help
  @help
end

#nameString

Returns the value of attribute name.

Returns:

  • (String)


10
11
12
# File 'lib/pg_eventstore/web/metrics/metric_family.rb', line 10

def name
  @name
end

#samplesArray[Hash[Symbol, untyped]]

Returns the value of attribute samples.

Returns:

  • (Array[Hash[Symbol, untyped]])


19
20
21
# File 'lib/pg_eventstore/web/metrics/metric_family.rb', line 19

def samples
  @samples
end

#typeString

Returns the value of attribute type.

Returns:

  • (String)


13
14
15
# File 'lib/pg_eventstore/web/metrics/metric_family.rb', line 13

def type
  @type
end

Instance Method Details

#add_sample(labels:, value:) ⇒ void

This method returns an undefined value.

Parameters:

  • labels (Hash<Symbol => String>)
  • value (Integer, Float)
  • labels: (Hash[Symbol, untyped])
  • value: (Integer, Float)


34
35
36
# File 'lib/pg_eventstore/web/metrics/metric_family.rb', line 34

def add_sample(labels:, value:)
  @samples.push({ labels:, value: })
end