Sha256: c6840f989bfc10d7f45eed80b41c749eedfdc5e4a489430249b758b433f28ba5

Contents?: true

Size: 743 Bytes

Versions: 43

Compression:

Stored size: 743 Bytes

Contents

module ScoutRails::Instruments
  module Process
    class ProcessCpu
      def initialize(num_processors)
        @num_processors = num_processors || 1
      end

      def run
        res=nil
        now = Time.now
        t = ::Process.times
        if @last_run
          elapsed_time = now - @last_run
          if elapsed_time >= 1
            user_time_since_last_sample = t.utime - @last_utime
            system_time_since_last_sample = t.stime - @last_stime
            res = ((user_time_since_last_sample + system_time_since_last_sample)/(elapsed_time * @num_processors))*100
          end
        end
        @last_utime = t.utime
        @last_stime = t.stime
        @last_run = now
        return res
      end
    end
  end
end

Version data entries

43 entries across 43 versions & 2 rubygems

Version Path
scout_rails-1.1.5.pre6 lib/scout_rails/instruments/process/process_cpu.rb
scout_rails-1.1.5.pre5 lib/scout_rails/instruments/process/process_cpu.rb
scout_rails-1.1.5.pre4 lib/scout_rails/instruments/process/process_cpu.rb
scout_rails-1.1.5.pre3 lib/scout_rails/instruments/process/process_cpu.rb
scout_rails-1.1.5.pre lib/scout_rails/instruments/process/process_cpu.rb
scout_rails-1.1.4.pre lib/scout_rails/instruments/process/process_cpu.rb
scout_rails-1.1.3 lib/scout_rails/instruments/process/process_cpu.rb
scout_rails-1.1.2 lib/scout_rails/instruments/process/process_cpu.rb
scout_rails-1.1.1 lib/scout_rails/instruments/process/process_cpu.rb
scout_rails-1.1.1.pre lib/scout_rails/instruments/process/process_cpu.rb
scout_rails-1.1.0 lib/scout_rails/instruments/process/process_cpu.rb
scout_rails-1.0.9 lib/scout_rails/instruments/process/process_cpu.rb
scout_rails-1.0.8 lib/scout_rails/instruments/process/process_cpu.rb
scout_rails-1.0.8.pre.3 lib/scout_rails/instruments/process/process_cpu.rb
scout_rails-1.0.7 lib/scout_rails/instruments/process/process_cpu.rb
scout_rails-1.0.6 lib/scout_rails/instruments/process/process_cpu.rb
scout_rails-1.0.5 lib/scout_rails/instruments/process/process_cpu.rb
scout_rails-1.0.5.pre lib/scout_rails/instruments/process/process_cpu.rb
scout_rails-1.0.4 lib/scout_rails/instruments/process/process_cpu.rb
scout_rails-1.0.4.pre.2 lib/scout_rails/instruments/process/process_cpu.rb