Class: TsdMetrics::CounterSample

Inherits:
Object
  • Object
show all
Defined in:
lib/tsd_metrics/counter_sample.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(metricStatusSupplier) ⇒ CounterSample

Returns a new instance of CounterSample.



18
19
20
21
# File 'lib/tsd_metrics/counter_sample.rb', line 18

def initialize(metricStatusSupplier)
  @metricStatusSupplier = metricStatusSupplier
  @value = 0
end

Instance Attribute Details

#valueObject (readonly)

Returns the value of attribute value.



17
18
19
# File 'lib/tsd_metrics/counter_sample.rb', line 17

def value
  @value
end

Instance Method Details

#decrement(magnitude = 1) ⇒ Object



29
30
31
# File 'lib/tsd_metrics/counter_sample.rb', line 29

def decrement(magnitude = 1)
  increment(-1*magnitude)
end

#increment(magnitude = 1) ⇒ Object



22
23
24
25
26
27
28
# File 'lib/tsd_metrics/counter_sample.rb', line 22

def increment(magnitude = 1)
  if @metricStatusSupplier.metricIsClosed
    TsdMetrics.errorLogger.warn("Increment or decrement called on Counter after metric has been closed")
    return
  end
  @value += magnitude
end

#sampleRepresentationObject



32
33
34
35
# File 'lib/tsd_metrics/counter_sample.rb', line 32

def sampleRepresentation
  # Always unitless
  {value: @value}
end