エラー通知サービスにRollbarを使っているのですが、ActiveRecord::RecordInvalid等の例外が発生したりするとActiveRecordのインスタンスの属性等が表示されてしまいものによっては連携したくない情報がRollbarに連携されてしまう可能性があります。
Rollarのコード上の設定をいじると、この辺をいい感じにマスキングできることを知ったのでメモ🗒
Rollbar連携前にマスキングする方法
設定は簡単でinitializer等のRollbar.configure
の中でconfig.scrub_fields
やconfig.scrub_headers
にフィルタリングしたいkeyを設定してあげればフィルタリングして連携してくれます。
以下の例ではRailsのfilter_parameters
と同様のマスキングを行うようにしています。
Rollbar.configure do |config| # NOTE: 秘密にした方が良い情報はマスキングする # https://docs.rollbar.com/docs/ruby#scrubbing-items config.scrub_fields |= Rails.application.config.filter_parameters end
一応デフォルトでも一定フィルタリングしてくれるようです。
By default, the notifier will "scrub" the following fields from payloads before sending to Rollbar :passwd :password :password_confirmation :secret :confirm_password :secret_token https://docs.rollbar.com/docs/ruby#scrubbing-items
※コードを見る限り正規表現でマッチすればフィルタリングしてくれるっぽい
Rollbar便利ですね✨