Class: PrometheusExporter::Client::RemoteMetric

Inherits:
Object
  • Object
show all
Defined in:
lib/prometheus_exporter/client.rb

Instance Method Summary collapse

Constructor Details

#initialize(name:, help:, type:, client:) ⇒ RemoteMetric

Returns a new instance of RemoteMetric.



10
11
12
13
14
15
# File 'lib/prometheus_exporter/client.rb', line 10

def initialize(name:, help:, type:, client:)
  @name = name
  @help = help
  @client = client
  @type = type
end

Instance Method Details

#decrement(keys = nil, value = 1) ⇒ Object



37
38
39
# File 'lib/prometheus_exporter/client.rb', line 37

def decrement(keys = nil, value = 1)
  @client.send_json(standard_values(value, keys, :decrement))
end

#increment(keys = nil, value = 1) ⇒ Object



33
34
35
# File 'lib/prometheus_exporter/client.rb', line 33

def increment(keys = nil, value = 1)
  @client.send_json(standard_values(value, keys, :increment))
end

#observe(value = 1, keys = nil) ⇒ Object



29
30
31
# File 'lib/prometheus_exporter/client.rb', line 29

def observe(value = 1, keys = nil)
  @client.send_json(standard_values(value, keys))
end

#standard_values(value, keys, prometheus_exporter_action = nil) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
# File 'lib/prometheus_exporter/client.rb', line 17

def standard_values(value, keys, prometheus_exporter_action = nil)
  values = {
    type: @type,
    help: @help,
    name: @name,
    keys: keys,
    value: value
  }
  values[:prometheus_exporter_action] = prometheus_exporter_action if prometheus_exporter_action
  values
end