私は Rails 2.3.13 を使用してenvironments/production.rb
います。
config.log_level = :info
RAILS_DEFAULT_LOGGER = SyslogLogger.new('mysite-platform-production')
それでも私log/production.log
は空です。なぜでしょうか?
私は Rails 2.3.13 を使用してenvironments/production.rb
います。
config.log_level = :info
RAILS_DEFAULT_LOGGER = SyslogLogger.new('mysite-platform-production')
それでも私log/production.log
は空です。なぜでしょうか?
をインスタンス化しているSyslogLogger
ため、ログはログ ファイルではなく syslog (ほとんどの場合、Unix システムでは/var/log/syslogのファイルとして利用可能) に記録されます。ロガーに渡すパラメーター ( mysite-platform-production ) は、syslog で使用される識別子であり、ファイル名ではありません。
ログ ディレクトリ内のファイルにログを記録する場合は、ロガーを次のように設定する必要があります。
RAILS_DEFAULT_LOGGER = Logger.new('log/production.log')
しかし、実際には明示的に行う必要はありませんが、デフォルトではRailsによって行われると確信しているため、コードに設定しないことをお勧めします.log / production.logにログインRAILS_DEFAULT_LOGGER
するロガーを取得する必要があります.暗黙のうちに...
ロガーの設定方法を考えると、production.logではなく'mysite-platform-production'という名前のファイルが見つかり、プロジェクトのルートディレクトリにあります。'log / mysite-platform-production.log'で見つけたい場合は、次のことを行う必要があります。
RAILS_DEFAULT_LOGGER = SyslogLogger.new('log/mysite-platform-production.log')