Madogiwa Blog

主に技術系の学習メモに使っていきます。

Ruby on Rails: Rollbarに連携する時に属性値等々をマスキングするMEMO

エラー通知サービスにRollbarを使っているのですが、ActiveRecord::RecordInvalid等の例外が発生したりするとActiveRecordインスタンスの属性等が表示されてしまいものによっては連携したくない情報がRollbarに連携されてしまう可能性があります。

Rollarのコード上の設定をいじると、この辺をいい感じにマスキングできることを知ったのでメモ🗒

rollbar.com

Rollbar連携前にマスキングする方法

設定は簡単でinitializer等のRollbar.configureの中でconfig.scrub_fieldsconfig.scrub_headersにフィルタリングしたいkeyを設定してあげればフィルタリングして連携してくれます。 以下の例ではRailsfilter_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便利ですね✨