Railsのログメッセージにファイル名と行番号を追加するにはどうすればよいですか?私の現在のフォーマットは次のようなものです
[INFO : 12-09-27 10:12:30]
に変更したい
[INFO: 12-09-27 10:12:30 application_controller.rb:35]
またはこのようなもの。何か案は?
Railsのログメッセージにファイル名と行番号を追加するにはどうすればよいですか?私の現在のフォーマットは次のようなものです
[INFO : 12-09-27 10:12:30]
に変更したい
[INFO: 12-09-27 10:12:30 application_controller.rb:35]
またはこのようなもの。何か案は?
logger.rb
ディレクトリに初期化子を作成し、config/initializers
これを入れてみてください
class Logger::SimpleFormatter
def call(severity, time, progname, msg)
"[#{severity} #{time} #{caller(0).first.match(/.*:\d+/)[0]}] #{msg}\n"
end
end
Ruby1.9以降で動作するはずです
Rails 4の同様のソリューションを探している人がいる場合は、次のようになります。
class ActiveSupport::Logger::SimpleFormatter
def call(severity, time, progname, msg)
"[#{severity} #{time} #{caller(0).first.match(/.*:\d+/)[0]}] #{msg}\n"
end
end