From c739ff07c2ab2e4860623bdbfb2ad58d15a2e9a5 Mon Sep 17 00:00:00 2001 From: Betty Da Date: Tue, 14 Sep 2021 14:31:26 -0400 Subject: [PATCH 1/3] feat(symbolicator): Add manual kill switches for symbolicator's low priority queue --- src/sentry/killswitches.py | 22 ++++++++++++++++++++++ src/sentry/options/defaults.py | 2 ++ 2 files changed, 24 insertions(+) diff --git a/src/sentry/killswitches.py b/src/sentry/killswitches.py index 7bbc816d88e6e4..ef93b14e39b23e 100644 --- a/src/sentry/killswitches.py +++ b/src/sentry/killswitches.py @@ -77,6 +77,28 @@ class KillswitchInfo: "platform": "The event platform as defined in the event payload's platform field, or 'none'", }, ), + "store.symbolicate-event-lpq-never": KillswitchInfo( + description=""" + Never allow a project's symbolication events to be demoted to symbolicator's Low Priority queue. + + If a project is in both store.symbolicate-event-lpq-never and store.symbolicate-event-lpq-always, + store.symbolicate-event-lpq-never will always take precedence. + """, + fields={ + "project_id": "A project ID to filter events by.", + }, + ), + "store.symbolicate-event-lpq-always": KillswitchInfo( + description=""" + Always push a project's symbolication events to symbolicator's Low Priority queue. + + If a project is in both store.symbolicate-event-lpq-never and store.symbolicate-event-lpq-always, + store.symbolicate-event-lpq-never will always take precedence. + """, + fields={ + "project_id": "A project ID to filter events by.", + }, + ), } diff --git a/src/sentry/options/defaults.py b/src/sentry/options/defaults.py index bc2f9f87248cae..5fbe30f35e2539 100644 --- a/src/sentry/options/defaults.py +++ b/src/sentry/options/defaults.py @@ -324,6 +324,8 @@ register("store.load-shed-save-event-projects", type=Any, default=[]) register("store.load-shed-process-event-projects", type=Any, default=[]) register("store.load-shed-symbolicate-event-projects", type=Any, default=[]) +register("store.symbolicate-event-dlq-never", type=Any, default=[]) +register("store.symbolicate-event-dlq-always", type=Any, default=[]) # Switch for more performant project counter incr register("store.projectcounter-modern-upsert-sample-rate", default=0.0) From 1b5c94b019f69f166ecb2a2d8038ce59616555fb Mon Sep 17 00:00:00 2001 From: Betty Da Date: Wed, 15 Sep 2021 11:42:30 -0400 Subject: [PATCH 2/3] capitalize better --- src/sentry/killswitches.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/sentry/killswitches.py b/src/sentry/killswitches.py index ef93b14e39b23e..bdd6ecfca1642b 100644 --- a/src/sentry/killswitches.py +++ b/src/sentry/killswitches.py @@ -79,7 +79,7 @@ class KillswitchInfo: ), "store.symbolicate-event-lpq-never": KillswitchInfo( description=""" - Never allow a project's symbolication events to be demoted to symbolicator's Low Priority queue. + Never allow a project's symbolication events to be demoted to symbolicator's low priority queue. If a project is in both store.symbolicate-event-lpq-never and store.symbolicate-event-lpq-always, store.symbolicate-event-lpq-never will always take precedence. @@ -90,7 +90,7 @@ class KillswitchInfo: ), "store.symbolicate-event-lpq-always": KillswitchInfo( description=""" - Always push a project's symbolication events to symbolicator's Low Priority queue. + Always push a project's symbolication events to symbolicator's low priority queue. If a project is in both store.symbolicate-event-lpq-never and store.symbolicate-event-lpq-always, store.symbolicate-event-lpq-never will always take precedence. From 8c907cc48641c457c2c52e87970b846c9f724bf1 Mon Sep 17 00:00:00 2001 From: Betty Da Date: Wed, 15 Sep 2021 11:43:44 -0400 Subject: [PATCH 3/3] fix option name and be explicit about its type --- src/sentry/options/defaults.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/sentry/options/defaults.py b/src/sentry/options/defaults.py index 5fbe30f35e2539..1e0ae889e836f1 100644 --- a/src/sentry/options/defaults.py +++ b/src/sentry/options/defaults.py @@ -324,8 +324,8 @@ register("store.load-shed-save-event-projects", type=Any, default=[]) register("store.load-shed-process-event-projects", type=Any, default=[]) register("store.load-shed-symbolicate-event-projects", type=Any, default=[]) -register("store.symbolicate-event-dlq-never", type=Any, default=[]) -register("store.symbolicate-event-dlq-always", type=Any, default=[]) +register("store.symbolicate-event-lpq-never", type=Sequence, default=[]) +register("store.symbolicate-event-lpq-always", type=Sequence, default=[]) # Switch for more performant project counter incr register("store.projectcounter-modern-upsert-sample-rate", default=0.0)