高木のブログ

【Rails】Rails 7.1 に上げたら、log/production.log にログ出力されなくなった

2024/10/08

Rails 7.1 に上げたら、log/production.log にログ出力されなくなった

原因

どういうことだ??と思ったら、本番環境でのログ出力先のデフォルトが標準出力に変更されたみたい

Log to stdout in production by default by dhh · Pull Request #47138 · rails/rails
コンテナでの利用を想定した場合、ファイルに出力は必要ないだろうということで、デフォルトで標準出力するようにしたっぽい

アップグレード作業中の bin/rails app:update で上書きされて、目視チェックで通り抜けた模様(気をつけよう

対応

config/environments/production.rb の該当部分を元に戻して対応した

-  # Log to STDOUT by default
-  config.logger = ActiveSupport::Logger.new(STDOUT)
-    .tap  { |logger| logger.formatter = ::Logger::Formatter.new }
-    .then { |logger| ActiveSupport::TaggedLogging.new(logger) }
+  # Use default logging formatter so that PID and timestamp are not suppressed.
+  config.log_formatter = ::Logger::Formatter.new

参考


SNS でシェアする


ytkg

Written by ytkg, Twitter, GitHub