Sha256: 48a7e3f3afd1076881316a92c591c0b0a59868298f8077412785069c1558a67d

Contents?: true

Size: 454 Bytes

Versions: 11

Compression:

Stored size: 454 Bytes

Contents

class Riemann::Babbler::Cpu < Riemann::Babbler

  def collect
    cpu = File.read('/proc/stat')
    cpu[/cpu\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)/]
    u2, n2, s2, i2 = [$1, $2, $3, $4].map { |e| e.to_i }

    if @old_cpu
      u1, n1, s1, i1 = @old_cpu
      used = (u2+n2+s2) - (u1+n1+s1)
      total = used + i2-i1
      fraction = used.to_f / total
    end

    @old_cpu = [u2, n2, s2, i2]
    {:service => plugin.service, :metric => fraction}
  end

end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
riemann-babbler-0.4.5 lib/riemann/babbler/plugins/cpu.rb
riemann-babbler-0.4.4 lib/riemann/babbler/plugins/cpu.rb
riemann-babbler-0.4.3 lib/riemann/babbler/plugins/cpu.rb
riemann-babbler-0.4.2 lib/riemann/babbler/plugins/cpu.rb
riemann-babbler-0.4.1 lib/riemann/babbler/plugins/cpu.rb
riemann-babbler-0.4.0 lib/riemann/babbler/plugins/cpu.rb
riemann-babbler-0.3.8 lib/riemann/babbler/plugins/cpu.rb
riemann-babbler-0.3.7 lib/riemann/babbler/plugins/cpu.rb
riemann-babbler-0.3.6 lib/riemann/babbler/plugins/cpu.rb
riemann-babbler-0.3.5 lib/riemann/babbler/plugins/cpu.rb
riemann-babbler-0.3.4 lib/riemann/babbler/plugins/cpu.rb