diff options
-rw-r--r-- | lib/gitlab/metrics/samplers/unicorn_sampler.rb | 2 | ||||
-rw-r--r-- | lib/gitlab/metrics/system.rb | 7 |
2 files changed, 5 insertions, 4 deletions
diff --git a/lib/gitlab/metrics/samplers/unicorn_sampler.rb b/lib/gitlab/metrics/samplers/unicorn_sampler.rb index 1b6c52ac0bf..a149dbf20f3 100644 --- a/lib/gitlab/metrics/samplers/unicorn_sampler.rb +++ b/lib/gitlab/metrics/samplers/unicorn_sampler.rb @@ -58,7 +58,7 @@ module Gitlab end def unicorn_workers_count - Sys::ProcTable.ps.select {|p| p.cmdline.match(/unicorn_rails worker.+ #{Rails.root.to_s}/)}.count + Sys::ProcTable.ps(smaps: false).select {|p| p.cmdline.match(/unicorn_rails worker.+ #{Rails.root.to_s}/)}.count end end end diff --git a/lib/gitlab/metrics/system.rb b/lib/gitlab/metrics/system.rb index ce0bb82d138..ca4192d2bd3 100644 --- a/lib/gitlab/metrics/system.rb +++ b/lib/gitlab/metrics/system.rb @@ -33,10 +33,11 @@ module Gitlab end def self.process_start_time - start_time_in_jiffies = Sys::ProcTable.ps(pid: Process.pid).starttime - return 0 unless start_time_in_jiffies + stat_string = File.read('/proc/self/stat') + match = stat_string.scan(/\S*/).reject { |match| match.empty? } + return 0 unless match && match[21] - start_time_in_jiffies / 100 + match[21].to_i / 100 end else def self.memory_usage |