Rails 7.1: Take care of the new production log default to standard out

Updated . Posted . Visible to the public. Repeats.

Starting with Rails 7.1 the production logger is set to standard out Show archive.org snapshot . For applications running with opscomplete Show archive.org snapshot ensure to keep logging to a file as before (e.g. when running bin/rails app:update).

It should be enough to change these lines in the config/environments/production.rb back to the implementation in Rails <7.1:

-  # 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
Last edit
Source code in this card is licensed under the MIT License.
Posted by Emanuel to makandra dev (2024-04-15 06:04)