Class: NewRelic::Agent::Samplers::MemorySampler::ProcStatus
- Defined in:
- lib/new_relic/agent/samplers/memory_sampler.rb
Overview
ProcStatus
A class that samples memory by reading the file /proc/$$/status, which is specific to linux
Instance Method Summary collapse
-
#get_memory ⇒ Object
Returns the amount of resident memory this process is using in MB.
- #proc_status_file ⇒ Object
- #to_s ⇒ Object
Methods inherited from Base
Instance Method Details
#get_memory ⇒ Object
Returns the amount of resident memory this process is using in MB
124 125 126 127 128 129 130 |
# File 'lib/new_relic/agent/samplers/memory_sampler.rb', line 124 def get_memory proc_status = File.open(proc_status_file, "r") {|f| f.read_nonblock(4096).strip } if proc_status =~ /RSS:\s*(\d+) kB/i return $1.to_f / 1024.0 end raise "Unable to find RSS in #{proc_status_file}" end |
#proc_status_file ⇒ Object
132 133 134 |
# File 'lib/new_relic/agent/samplers/memory_sampler.rb', line 132 def proc_status_file "/proc/#{$$}/status" end |
#to_s ⇒ Object
136 137 138 |
# File 'lib/new_relic/agent/samplers/memory_sampler.rb', line 136 def to_s "proc status file sampler: #{proc_status_file}" end |