From addec4b72dad4c901ba8792a03e8b328d01c9a69 Mon Sep 17 00:00:00 2001 From: Molly Struve Date: Fri, 6 Dec 2019 10:59:27 -0600 Subject: [PATCH] Group all BANNED errors in Honeybadger (#5027) [deploy] --- config/initializers/honeybadger.rb | 8 +++++--- spec/initializers/honeybadger_spec.rb | 10 ++++++++++ 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/config/initializers/honeybadger.rb b/config/initializers/honeybadger.rb index af849881b..b09c73108 100644 --- a/config/initializers/honeybadger.rb +++ b/config/initializers/honeybadger.rb @@ -8,8 +8,10 @@ Honeybadger.configure do |config| config.request.filter_keys += %w[authorization] config.before_notify do |notice| - if notice.error_message&.include?("SIGTERM") && notice.component&.include?("fetch_all_rss") - notice.fingerprint = notice.error_message - end + notice.fingerprint = if notice.error_message&.include?("SIGTERM") && notice.component&.include?("fetch_all_rss") + notice.error_message + elsif notice.error_message&.include?("BANNED") + "banned" + end end end diff --git a/spec/initializers/honeybadger_spec.rb b/spec/initializers/honeybadger_spec.rb index dea493314..d4553d1be 100644 --- a/spec/initializers/honeybadger_spec.rb +++ b/spec/initializers/honeybadger_spec.rb @@ -10,4 +10,14 @@ describe Honeybadger do expect(notice.fingerprint).to eq(notice.error_message) end end + + context "when BANNED error is raised" do + it "sets fingerprint to banned" do + notice = Honeybadger::Notice.new( + described_class.config, error_message: "RuntimeError: BANNED" + ) + described_class.config.before_notify_hooks.first.call(notice) + expect(notice.fingerprint).to eq("banned") + end + end end