feat: propose BudgetAdjustment spec for v2alpha - #301
Conversation
|
You can find an initial implementation of the spec here: https://github.com/thisisibrahimd/opensloctl |
|
It would make more sense to me to solve your use-case at the monitoring level, for example by changing the uptime target or something similar (in the spirit of "it's agreed upon all people involved that this service should be considered 'up'") I would love to hear from other contributors though. |
I can understand your workaround and your statement on the job of the specification. However, unplanned of unexpected events can occur that needs to get patched sadly. You can read Nobl9's description of the use case. Also, planned events may not happen once every period window that warrants changing the target. Yaml: https://docs.nobl9.com/yaml-guide/#budgetadjustment |
|
Hey @nieomylnieja, I am looking for a re-review of this PR. My justifications have not changed are above. If it is more appropriate to be in the v2alpha, please advise. |
c757327 to
6350a82
Compare
|
I moved the proposed implementation of this spec in the go-sdk repo: OpenSLO/go-sdk#68. |
Summary
Proposing a BudgetAdjustment spec for v2alpha. Also cleaned up this branch to match main by removing the
pkg/directory.What is BudgetAdjustment?
A BudgetAdjustment lets you adjust the SLI percentage for known and accepted unreliability events — both planned (database migrations, maintenance windows) and unplanned (third-party outages). This stops expected downtime from eating into your error budget unfairly.
References:
Changes
enhancements/v2alpha.md— Added BudgetAdjustment spec (apiVersion: openslo.com/v2alpha) with two examples (planned DB migration, CDN outage)README.md— Removed BudgetAdjustment section since it's now in v2alphapkg/— Removed entire directory to align withupstream/mainand eliminate merge conflictsRationale
As discussed in #256, there are real cases where you need to adjust error budgets for accepted unreliability:
References