mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Status in one line
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4299 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
parent
4a218de694
commit
de69de10de
1 changed files with 8 additions and 9 deletions
|
@ -5,7 +5,7 @@ if RUBY_PLATFORM =~ /mswin32/ then abort("Reaper is only for Unix") end
|
|||
OPTIONS = {
|
||||
:pid_path => File.expand_path(RAILS_ROOT + '/tmp/pids'),
|
||||
:pattern => "dispatch.*.pid",
|
||||
:ps => "ps -o user,start,etime,pcpu,vsz,majflt,command -p %s"
|
||||
:ps => "ps -o pid,state,user,start,time,pcpu,vsz,majflt,command -p %s"
|
||||
}
|
||||
|
||||
class Inspector
|
||||
|
@ -18,17 +18,16 @@ class Inspector
|
|||
end
|
||||
|
||||
def inspect
|
||||
for process in find_processes
|
||||
puts "#{File.basename(process[:pid_file])}:"
|
||||
puts(`#{OPTIONS[:ps] % process[:pid]}`)
|
||||
puts
|
||||
end
|
||||
header = `#{OPTIONS[:ps] % 0}`.split("\n")[0] + "\n"
|
||||
lines = pids.collect { |pid| `#{OPTIONS[:ps] % pid}`.split("\n")[1] }
|
||||
|
||||
puts(header + lines.join("\n"))
|
||||
end
|
||||
|
||||
private
|
||||
def find_processes
|
||||
pid_files.inject([]) do |pids, pid_file|
|
||||
pids << { :pid_file => pid_file, :pid => File.read(pid_file).to_i }
|
||||
def pids
|
||||
pid_files.collect do |pid_file|
|
||||
File.read(pid_file).to_i
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in a new issue