タイムスタンプを .pm2/logs のエラー ログに追加する方法はありますか?
コマンドはタイムスタンプ付きの集約ログを表示することに気付きましたpm2 logs
が、ログ ファイルを調べると、日付のないメッセージとスタック トレースしかありません。
pm2 logs -h
コマンド ライン ヘルプ ( )に従って、コマンドを実行pm2 logs --timestamp
すると、タイムスタンプがログに追加されます。ただし、古いログには影響しないようです。どうやら新しいログのみがタイムスタンプ付きで表示されます。
この問題を修正する--log-date-format="YYYY-MM-DD HH:mm Z"
には、パラメーターとして pm2 に渡します。例えば:
pm2 start bin/www --log-date-format="YYYY-MM-DD HH:mm Z"
便宜上、アプリを起動するために process.json が好きなので、process.json には次のものが含まれています。
{
"apps" : [
{
"name" : "app",
"script" : "bin/www",
"log_date_format" : "YYYY-MM-DD HH:mm Z"
}
]
}
次に、実行するだけでアプリを起動します。
pm2 start process.json
完了すると、実行するだけでタイムスタンプが表示されます: タイムスタンプを表示するpm2 logs
ために --timestamp を指定する必要がないことに注意してください。
app (out): 2016-08-04 13:46 +01:00: My log here
よく読んでください: http://pm2.keymetrics.io/docs/usage/log-management/
私は PM2 を使用していますが、ログはあまり気にしません。代わりに、ロギングに非常に柔軟な bunyan を使用します。--globalを指定して npm installすると、ライブ ログ ビューアーとしても使用できます。
ただし、これは console.log 出力にタイムスタンプを付けません。しかし、log.info()
または他の Bunyan ログ関数に変換すると、適切なログが得られます。
bunyan でライブ pm2 ログを表示するには、パイプするだけです:
pm2 logs | bunyan