Node.js スクリプトデーモンツール pm2

f:id:daihase:20190809120056p:plain

こんにちは、daihaseです。 最近忙しくてなかなかブログを更新出来ない日々が続いてます...

はい、今日は簡単にですが今自分のプロジェクトでも使ってて便利なデーモンツールpm2を紹介したいと思います。

[pm2] 

 

デーモンツールってそもそも何!?て方もいるかもしれませんが、簡単にいうとロギングやプロセス監視をしてくれるツールです。何時頃どこへアクセスがあったか、どのプロセスが起動してるか等々自動で監視してくれる便利なツールです。

このpm2はNode.js開発・運用には欠かせないデーモンツールで、他にはforeverなんかが有名です。(最近はpm2の方がメンテされてたり更新頻度も多いのでこっちのが個人的にオススメです)

 

インストール

※あらかじめサーバーにnpmがインストールされていることが前提です。 以下コマンドを打つだけでインストール完了です。

$ npm install pm2 -g

 

コマンド

色々あるのですが、最低限のものだけ紹介。 まず起動から。 Express(Node.jsのフレームワーク)ですと実行は npm start で行けますが、これをpm2により管理します。以下コマンドでExpressの起動スクリプト(.bin/www)を別の名前で登録します。

// Expree起動スクリプト
$ pm2 start bin/www               

// 自分でつけた任意の名前で起動したい場合はコチラ
$ pm2 start bin/www --name="好きな名前"

 

次にリストの表示。 以下コマンドを打つと現在実行中のリストが表示されます(画像は私が今開発中のプロジェクト)

$ pm2 list  // 実行中のスクリプトリストを表示

 

詳細なんかも以下のコマンドで確認出来たりもします。

$ pm2 show "自分で登録した名前"

 

次によく活用するログ。 イメージとしてはtail -f とかでログ監視するのと同じ感じです。

$ pm2 logs

 

最後に停止再起動を。

$ pm2 stop "自分でつけた名前"       // 停止

$ pm2 restart "自分でつけた名前"  // 再起動

 

最低限の紹介になりましたが、使ってみると非常に便利なのがわかるかと思います。まだまだ便利な機能はあり、CPUやメモリ使用量を確認したり複数プロセス管理をJSONファイルに設定することで、一度に全てのプロセスを起動したりなどなど...。

是非使ってみてください。

 

それでは良い開発ライフを〜