Class: OneApm::Collector::Samplers::MemorySampler
Instance Attribute Summary
#id
Class Method Summary
collapse
Instance Method Summary
collapse
enabled?, inherited, #initialize, name, named, sampler_classes
Class Method Details
44
45
46
47
48
49
50
|
# File 'lib/one_apm/collector/samplers/memory_sampler.rb', line 44
def self.platform
if RUBY_PLATFORM =~ /java/
%x[uname -s].downcase
else
RUBY_PLATFORM.downcase
end
end
|
40
41
42
|
# File 'lib/one_apm/collector/samplers/memory_sampler.rb', line 40
def self.supported_on_this_platform?
defined?(::JRuby) or platform =~ /linux|darwin|freebsd|solaris/
end
|
Instance Method Details
#get_sample ⇒ Object
27
28
29
30
31
32
33
34
35
36
37
38
|
# File 'lib/one_apm/collector/samplers/memory_sampler.rb', line 27
def get_sample
begin
m = @poller.memory
if m.nil?
OneApm::Manager.logger.warn "Unable to get the resident memory for process #{$$}. Disabling memory sampler."
end
return m
rescue => e
OneApm::Manager.logger.warn "Unable to get the resident memory for process #{$$}. Disabling memory sampler.", e
return nil
end
end
|
#poll ⇒ Object
20
21
22
23
24
25
|
# File 'lib/one_apm/collector/samplers/memory_sampler.rb', line 20
def poll
sample = get_sample
if sample
OneApm::Manager.record_metric("Memory/Used", sample)
end
end
|
#set_poller(poller) ⇒ Object
12
13
14
|
# File 'lib/one_apm/collector/samplers/memory_sampler.rb', line 12
def set_poller poller
@poller = poller
end
|