Airbrake.add_filter
というAPIでAirbrake.notify
をフックし、Airbrake::Notice#ignore!
を実行することで通知を無効にすることができる。
例えば、Railsなどでボットからのリクエストは通知から除外したいとき
/config/initializers/airbrake.rbなど
crawler_uas = %w(
Baiduspider
Bingbot
Googlebot
Yahoo!\ Slurp
)
Airbrake.add_filter do |notice|
if crawler_uas.any? { |crawler| notice[:context][:userAgent] =~ /#{crawler}/i }
notice.ignore!
end
end
Rackの場合はnotice[:environment]
からリファラやHTTPヘッダの情報もとれるので、より複雑な条件を書くことも可能です。
参考) https://github.com/airbrake/airbrake-ruby#airbrakeadd_filter