Class: BetterFx::Client

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

Instance Method Summary collapse

Constructor Details

#initializeClient

Returns a new instance of Client.



4
5
6
7
# File 'lib/better_fx/client.rb', line 4

def initialize
  # if BetterFx has not been configured then run the default configuration
  BetterFx.configure unless BetterFx.configured?
end

Instance Method Details

#gauge(gauge_name, value: nil, timestamp: nil, dimensions: []) ⇒ Object

Send a gauge measurement to SignalFx (if the current environment supports using SignalFx)



35
36
37
38
39
40
41
42
43
44
45
# File 'lib/better_fx/client.rb', line 35

def gauge(gauge_name, value: nil, timestamp: nil, dimensions: [])
  return unless configuration.supported_environments.include? configuration.current_environment
  timestamp ||= default_timestamp
  dimensions << { env: configuration.current_environment } if dimensions.empty?
  signalfx_client.bf_xmit(gauges: [
                            metric:     gauge_name.to_s,
                            value:      value,
                            timestamp:  timestamp.to_s,
                            dimensions: dimensions,
                          ])
end

#increment_counter(counter_name, value: 1, timestamp: nil, dimensions: []) ⇒ Object

Increment a SignalFx counter (if the current environment is a supports using SignalFx)



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

def increment_counter(counter_name, value: 1, timestamp: nil, dimensions: [])
  return unless configuration.supported_environments.include? configuration.current_environment
  timestamp ||= default_timestamp
  dimensions << { env: configuration.current_environment } if dimensions.empty?
  signalfx_client.bf_xmit(counters: [
                            metric:     counter_name.to_s,
                            value:      value,
                            timestamp:  timestamp.to_s,
                            dimensions: dimensions,
                          ])
end