Posted at

アプリケーションのログは標準出力に出すのがいい

More than 1 year has passed since last update.


参考

Twelve-Factor App


概要

自分は今までアプリケーションのログを「/var/log/app/access.log」などにファイルを指定して出力していたが、Twelve-Factor Appによるとアプリ側でそれを制御するべきでは無いと書かれている。

アプリログは全部標準出力に出しておけば、開発時はコンソール見ながらデバッグできるし、dockerで動かしている場合はdocker logsでログが確認できる。

本番環境へデプロイする場合は以下のようにdaemon起動時にloggerで出力しrsyslogやfluentdで所定のサーバーやストレージにログを転送してあげればよい。

daemon $MyAPP | /usr/bin/logger -p local0.info &