アプリケーションを再起動せずに、実行中のRails3.2.xアプリケーションのログレベルを変更したいと思います。私の意図は、通常のログレベルに戻す前に、これを使用して短時間のデバッグと情報収集を行うことです。
また、昇順のレベルはデバッグ、情報、警告、エラー、および致命的であり、本番サーバーは情報以上をログに記録し、開発ログはデバッグ以上をログに記録することも理解しています。
走れば
Rails.logger.level=:debug #or :info, :warn, :error, :fatal
これにより、ログレベルがすぐに変更されますか?
もしそうなら、ログレベルを調整するためにRakeタスクを書くことによってこれを行うことができますか、それともルートを追加することによってこれをサポートする必要がありますか?たとえば、config/routes.rbでは次のようになります。
match "/set_logging_level/:level/:secret" => "logcontroller#setlevel"
次に、ログコントローラでレベルを設定します。(:levelはログレベルであり、クライアントとサーバー間で共有される:secretは、ランダムなユーザーがログレベルを微調整するのを防ぐためのものです)
raketaskと/set_logging_levelのどちらがより適切ですか?