unicorn で起動しているプロセスの情報を取得するスクリプトです。
unicorn は,Rackアプリケーション用のHTTPサーバです(unicorn.bogomips.org/)。
-
/proc ファイルシステムが利用できる
-
unicorn によってRackアプリケーションが動作している
-
netstatが利用できる
-
プロセスID (pid)
-
作業ディレクトリ (working_directory)
-
ポート (port)
-
ワーカー数 (worker)
-
“–config-file(-c)” オプションで指定した設定ファイルのパス (config_path)
-
“–path” オプションで指定したパス (path)
-
Rubyインタプリタのバージョン (ruby_version)
詳しくは、 doc/UnicornProcess.html をご覧ください。
require './unicorn_process.rb' process = UnicornProcess.new(17793) # PID 17793の情報を取得する puts process.working_directory #=> /home/typewriter/lib/app_manager puts process.port.inspect #=> [{:port=>49953, :type=>"tcp"}] puts process.worker #=> 1
require './unicorn_process.rb' processes = UnicornProcess.processes processes.each { |process| puts "PID: #{process.pid}" puts " directory: #{process.working_directory}" puts " port: #{process.port.inspect}" puts " worker: #{process.worker}" } PID: 17793 directory: /home/typewriter/lib/app_manager port: [{:port=>49953, :type=>"tcp"}] worker: 1 PID: 22904 directory: /home/typewriter/lib/sample_app port: [{:port=>49950, :type=>"tcp"}, {:port=>49959, :type=>"tcp"}] worker: 4
ライセンスは MIT License です。ライセンス文は LICENSE を参照してください。