class AppDynamics::BackgroundMetrics::Memory

Public Class Methods

available?() click to toggle source
# File lib/app_dynamics/background_metrics.rb, line 62
def self.available?
  File.exists?(status_file)
end
status_file() click to toggle source
# File lib/app_dynamics/background_metrics.rb, line 58
def self.status_file
  @status_file ||= "/proc/#{Process.pid}/status"
end

Public Instance Methods

instrument!(state, counters, gauges) click to toggle source
# File lib/app_dynamics/background_metrics.rb, line 66
def instrument!(state, counters, gauges)
  gauges[:'Proc.RSS'] = File.open(self.class.status_file, "r") do |file|
    if file.read_nonblock(4096) =~ /RSS:\s*(\d+) kB/i
      $1.to_f / 1024
    end
  end
end