Railsでアプリログのフォーマットを変更する方法です。
以下の2ファイルを追加・修正します。
(追加)app/lib/local_dev_log_formatter.rb
1 2 3 4 5 6 7 class LocalDevLogFormatter < ActiveSupport::Logger::SimpleFormatter def call (severity, timestamp, progname, msg) formatted_severity = sprintf("%-5s" , "#{severity} " ) formatted_time = timestamp.strftime("%Y-%m-%d %H:%M:%S." ) << timestamp.usec.to_s[0 ..2 ].rjust(3 ) "[#{formatted_severity} #{formatted_time} ##{Process.pid} ] #{msg} \n" end end
(修正)config/environments/development.rb
1 2 3 4 5 6 7 8 9 Hoge::Application.configure do config.log_formatter = LocalDevLogFormatter.new logger = ActiveSupport::Logger.new("log/#{Rails.env} .log" , 5 , 100 * 1024 * 1024 ) logger.formatter = config.log_formatter config.logger = ActiveSupport::TaggedLogging.new(logger) end
app/lib配下に配置することとconfig.loggerの方にも設定が必要なところが分からなくてハマりました。。