1. ホーム
  2. sql

[解決済み】コンソールでRailsのSQLロギングを無効にする

2022-04-01 23:59:56

質問

コンソールでコマンドを実行しているときに、SQLクエリのロギングを無効にする方法はありますか?理想を言えば、無効にして、コンソールのコマンドで再度有効にできれば最高なのですが。

私は何かをデバッグしようとしていて、"puts"を使って関連するデータを出力しています。しかし、SQLクエリ出力はそれを読みづらくしています。


編集する logger を nil に設定すると、私のコード以外が logger.warn を呼び出そうとしたときにエラーが発生することがあったので、別の解決策を見つけました。

ロガーに設定する代わりに nil に設定すると、ロガーのレベルを 1 .

ActiveRecord::Base.logger.level = 1 # or Logger::INFO

解決方法は?

オフにするには

old_logger = ActiveRecord::Base.logger
ActiveRecord::Base.logger = nil

元に戻すには

ActiveRecord::Base.logger = old_logger