Redmineプラグイン開発 – プラグインでログを出したい

Logo   Redmine

Railsのバージョンによっていろんな情報があったので、Redmine-0.8.2でやったことをメモ。
プロダクションモードで動かしている場合は、「config/environments/production.rb」に以下を記述する。

config.logger = Logger.new(config.log_path)
config.logger.level = Logger::DEBUG

これでlog/production.logというのが出力される。Controllerからはlogger.debug(“fujifuji”)みたいにいきなりLoggerが使えるようになる。
production.logにはSQLとかのログもでてますので、デバッグには使えそうだ。
あと、ActionControllerやActiveRecordを継承していると、内部でloggerを持ってるからlogger.debugみたいに使えるけど、libに置いたクラスだとそれができない。
そいう言う場合は、

RAILS_DEFAULT_LOGGER.debug "count = #{count.to_s}"

みたいにしてデフォルトのLoggerを呼び出すこともできる。(loggerをlibにあるクラスで取得する by s21g :: satoko’s blog