Class: Cabin::Metrics::Meter

Inherits:
Object
  • Object
show all
Defined in:
lib/cabin/metrics/meter.rb

Instance Method Summary collapse

Constructor Details

#initializeMeter

Returns a new instance of Meter.



9
10
11
12
# File 'lib/cabin/metrics/meter.rb', line 9

def initialize
  @value = 0
  @lock = Mutex.new
end

Instance Method Details

#markObject

Mark an event



15
16
17
18
19
20
# File 'lib/cabin/metrics/meter.rb', line 15

def mark
  @lock.synchronize do
    @value += 1
    # TODO(sissel): Keep some moving averages?
  end
end

#valueObject



24
25
26
# File 'lib/cabin/metrics/meter.rb', line 24

def value
  return @lock.synchronize { @value }
end