Skip to content

Commit 32c6ac1

Browse files
authored
feat(symbolicator): Register manual kill switches for symbolicator's low priority queue (#28576)
This registers the two manual kill switches meant for ops use. As mentioned in their description, adding a project to these switches will either always or never redirect all symbolication events for that project towards symbolicator's low priority queue. The low priority queue provides "worse" guarantees on how quickly an event will be processed, i.e. it will take longer for an event to be completed in the low priority queue.
1 parent 52daa2a commit 32c6ac1

File tree

2 files changed

+24
-0
lines changed

2 files changed

+24
-0
lines changed

src/sentry/killswitches.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,28 @@ class KillswitchInfo:
7777
"platform": "The event platform as defined in the event payload's platform field, or 'none'",
7878
},
7979
),
80+
"store.symbolicate-event-lpq-never": KillswitchInfo(
81+
description="""
82+
Never allow a project's symbolication events to be demoted to symbolicator's low priority queue.
83+
84+
If a project is in both store.symbolicate-event-lpq-never and store.symbolicate-event-lpq-always,
85+
store.symbolicate-event-lpq-never will always take precedence.
86+
""",
87+
fields={
88+
"project_id": "A project ID to filter events by.",
89+
},
90+
),
91+
"store.symbolicate-event-lpq-always": KillswitchInfo(
92+
description="""
93+
Always push a project's symbolication events to symbolicator's low priority queue.
94+
95+
If a project is in both store.symbolicate-event-lpq-never and store.symbolicate-event-lpq-always,
96+
store.symbolicate-event-lpq-never will always take precedence.
97+
""",
98+
fields={
99+
"project_id": "A project ID to filter events by.",
100+
},
101+
),
80102
}
81103

82104

src/sentry/options/defaults.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -324,6 +324,8 @@
324324
register("store.load-shed-save-event-projects", type=Any, default=[])
325325
register("store.load-shed-process-event-projects", type=Any, default=[])
326326
register("store.load-shed-symbolicate-event-projects", type=Any, default=[])
327+
register("store.symbolicate-event-lpq-never", type=Sequence, default=[])
328+
register("store.symbolicate-event-lpq-always", type=Sequence, default=[])
327329

328330
# Switch for more performant project counter incr
329331
register("store.projectcounter-modern-upsert-sample-rate", default=0.0)

0 commit comments

Comments
 (0)