Sha256: 3886b613c2f766886e702c9c25a22154de5e07fa5f6443582a7e0d01f726bf6a

Contents?: true

Size: 520 Bytes

Versions: 22

Compression:

Stored size: 520 Bytes

Contents

module PulseMeter
  module Sensor
    module Timelined
      # Average value over interval
      class Average < Timeline

        def aggregate_event(key, value)
          redis.hincrby(key, :count, 1)
          redis.hincrby(key, :sum, value)
        end

        def summarize(key)
          count = redis.hget(key, :count)
          sum = redis.hget(key, :sum)
          if count && !count.empty?
            sum.to_f / count.to_f
          else
            0
          end
        end

      end
    end
  end
end

Version data entries

22 entries across 22 versions & 2 rubygems

Version Path
pulse-meter-0.2.3 lib/pulse-meter/sensor/timelined/average.rb
pulse-meter-0.2.2 lib/pulse-meter/sensor/timelined/average.rb
pulse-meter-0.2.1 lib/pulse-meter/sensor/timelined/average.rb
pulse-meter-0.2.0 lib/pulse-meter/sensor/timelined/average.rb
pulse-meter-client-backport-0.1.4 lib/pulse-meter/sensor/timelined/average.rb
pulse-meter-0.1.11 lib/pulse-meter/sensor/timelined/average.rb
pulse-meter-client-backport-0.1.3 lib/pulse-meter/sensor/timelined/average.rb
pulse-meter-0.1.10 lib/pulse-meter/sensor/timelined/average.rb
pulse-meter-client-backport-0.1.2 lib/pulse-meter/sensor/timelined/average.rb
pulse-meter-0.1.9 lib/pulse-meter/sensor/timelined/average.rb
pulse-meter-client-backport-0.1.1 lib/pulse-meter/sensor/timelined/average.rb
pulse-meter-0.1.8 lib/pulse-meter/sensor/timelined/average.rb
pulse-meter-0.1.7 lib/pulse-meter/sensor/timelined/average.rb
pulse-meter-0.1.6 lib/pulse-meter/sensor/timelined/average.rb
pulse-meter-0.1.5 lib/pulse-meter/sensor/timelined/average.rb
pulse-meter-0.1.4 lib/pulse-meter/sensor/timelined/average.rb
pulse-meter-0.1.3 lib/pulse-meter/sensor/timelined/average.rb
pulse-meter-0.1.2 lib/pulse-meter/sensor/timelined/average.rb
pulse-meter-0.1.1 lib/pulse-meter/sensor/timelined/average.rb
pulse-meter-client-backport-0.1.0 lib/pulse-meter/sensor/timelined/average.rb