ActiveRecord::Base::filter_attributes
Rails 6からActiveRecord::Base::filter_attributesが追加された Add the ability to filter out sensitive data in #inspect Rails.application.config.filter_parametersと似たような機能で、こちらはActiveRecordオブジェクトをinspectしたときの出力からフィルタしてくれる機能 例えば暗黙のinspect呼び出しで意図せず個人情報がログに出てしまうのを防いだり、rails consoleの作業ログをとるときに危ないものをいちいち手で消さなくてよくなるので便利
filter_attributesにはRails.application.config.filter_parametersの値が自動的に追加されるようになっているため基本的にはここに追加していけばOK
しかしinitializersの読み込み順の問題で自動追加されないことがあるので、そのときは手で追加するコードを書くとよい
code:ruby
# config/initializers/filter_parameter_logging.rb の末尾に
ActiveRecord::Base::filter_attributes += Rails.application.config.filter_parameters
initializersの読み込み順はrake initializersで確認できる
アプリ名::Application.load_config_initializersより先にActiveRecord::Railtie.active_record.set_filter_attributesが実行されているとNG