Rails のデフォルトのロガーだとログレベルだとか日時が出力されないのでログとしてあまり意味がありません。
config/environment.rb
の一番最後に以下の記述を追加してください。
class Logger
class Formatter
def call(severity, time, progname, msg)
format = "[%s #%d] %5s -- %s: %sn"
format % ["#{time.strftime('%Y-%m-%d %H:%M:%S')}.#{'%06d' % time.usec.to_s}",
$$, severity, progname, msg2str(msg)]
end
end
end
Rails 3.0 系の場合
config/environments/development.rb
に以下の記述を含めます。
config.logger = Logger.new(paths.log.paths[0])
config.logger.formatter = Logger::Formatter.new
config.logger.datetime_format = "%Y-%m-%d %H:%M:%S"
config.logger.level = Logger::DEBUG
config.colorize_logging = false
Rails 3.1 系の場合
3.1 系の場合は上の書き方だと deprecation warning が発生します。
$ rails server => Booting WEBrick => Rails 3.1.0 application starting in development on http://0.0.0.0:3000 => Call with -d to detach => Ctrl-C to shutdown server DEPRECATION WARNING: Accessing paths using dot style as in `config.paths.app.controller` is deprecated. Please use `config.paths["app/controller"]` style instead. (called from exist? at /home/noguchi/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/1.9.1/logger.rb:541)
代わりに次の記述をしてください。
config.logger = Logger.new(config.paths["log"].first)
config.logger.formatter = Logger::Formatter.new
config.logger.datetime_format = "%Y-%m-%d %H:%M:%S"
config.logger.level = Logger::DEBUG
config.colorize_logging = false
結構しんどい。
参考
Rails3.1.0へのupgrade方法 – うんたらかんたら日記
投稿者紹介
-
私たちは、テクノロジに魅せられた個性あふれるメンバーによって構成された茨城県日立市に本社を構えるベンチャー企業です。
”テクノロジを通して「驚き」と「感動」を創造し、人々の「夢」と「笑顔」を支えます。” の経営理念をモットーに明るい未来を描き、ワクワクする企画提案を続けて参ります。
最近のエントリ
- レポート2019.10.28ユニキャストレストランを開催しました🍳
- レポート2019.08.29社内研修ワークショップ~マシュマロ・チャレンジ~
- レポート2019.08.06Computex/InnoVEX 出展者・通訳として参加してきました。
- レポート2018.06.12Computex 2018 レポート