この記事はアピリッツの技術ブログ「DoRuby」から移行した記事です。情報が古い可能性がありますのでご注意ください。
今回は、Passengerに標準でインストールされるステータス確認ツールの紹介をしたいと思います。
Passengeerのステータス確認ツールは2種類あります。今回はその1つについて説明したいと思います。
passenger-status
passengerのプロセスの情報が見れます。passenger-statusで実行できます。出力は以下のようになります。
----------- General information -----------
max = 6 count = 5 active = 0 inactive = 5
----------- Domains -----------
/var/rails/hoge:
PID: 4599 Sessions: 0 Processed: 13 Uptime: 1m 35s
PID: 4594 Sessions: 0 Processed: 7 Uptime: 1m 36s
PID: 4592 Sessions: 0 Processed: 1 Uptime: 1m 36s
PID: 4589 Sessions: 0 Processed: 9 Uptime: 1m 38s
/var/rails/huga:
PID: 18348 Sessions: 0 Processed: 24 Uptime: 2m 54s
General informationの項目の説明は以下になります。max
passengerが起動できるプロセスの最大値。ApacheだとPassengerMaxPoolSize、Nginxだとpassenger_max_pool_size の値になります.count
現在起動しているプロセスの数active
リクエストを処理中のプロセス数。この値はcount以下になりますinactive
アイドル状態(リクエストを処理していない)のプロセス数。count – activeの値と等しくなります
Domainsは、VirtualHostが複数あれば、VirtualHostごとでプロセス情報の一覧を表示します。
項目の説明は以下になります。Sessions
処理待ちのクライアント数
Processed
リクエストを処理した数Uptime
プロセスの生存期間
なお。設定ファイルでPassengerTempDir(Apacheの場合のみ)を指定している場合は、実行時に
ERROR: Phusion Passenger doesn't seem to be running.
というエラーになってしまいます。その場合、
$ export PASSENGER_TEMP_DIR(かPASSENGER_TMPDIR)=[PassengerTempDirの値]
$ passenger-status
か、または
$ PASSENGER_TMPDIR(かPASSENGER_TMPDIR)=[PassengerTempDirの値] passenger-status
とすれば実行できます。
passengerの動作が怪しい時に確認するのに使ってもらえればと思います。
次回はもう1つのツールについて説明したいと思います。それでは。