node.js pm2を使ってプロセスを監視する

node.js pm2を使ってプロセスを監視する

pm2を使うとプロセスの監視を行うまでの手順を記述してます。

環境

  • OS  CentOS Linux release 8.0.1905 (Core)
  • node V12.18.0
  • npm 6.14.4
  • pm2 4.4.0

pm2インストール

npmを使ってインストールします。

sudo npm install -g pm2

PATHを確認してみます。

which pm2

<出力結果>
/usr/bin/pm2

pm2で監視

expressで作成した「app.js」 と、hello worldを出力するだけの「hello.js」を監視してみます。

expressのapp.jsがあるフォルダに移動して、監視を開始するために、下記のコマンドを実行します。

pm2 start app.js

同様にhello.jsがあるディレクトリに移動して登録します。

pm2 start hello.js

※hello.jsの内容は下記となります。

var http = require('http')
var os = require('os')

http.createServer(function (req, res) {
    res.writeHead(200, {'Content-Type': 'text/plain'})
    res.end(`Hello World\n`)
}).listen(8989)

下記のコマンドを実行すると、監視しているnode.jsの状態が一覧で確認できます。

pm2 monit

pm2コマンド

特定の監視対象を停止する場合

pm2 stop app.js

特定の監視対象を削除する場合

pm2 delete app.js

pm2自体を停止する場合

pm2 kill