Skip to content
Latchkey

error budget policyとは?

error budgetはSLOが許容する信頼性の低さの量であり、error budget policyはその予算が消費されるにつれてチームが取る、合意された一連の行動です。

SLOが99.9%なら、残りの0.1%があなたのerror budgetです。目標を破る前に吸収できる失敗の量です。ポリシーは、予算が枯渇するにつれてチームがどう対応するかをあらかじめ明文化し、障害の瞬間から感情と政治を取り除きます。

予算の由来

error budgetはSLOの補集合です。30日間で99.9%の目標は約43分のダウンタイムを許容し、99.99%の目標は約4分を許容します。その許容量は、チームがリスク(デプロイ、実験、時折の失敗)に費やせる有限のリソースです。

予算を速度に費やす

健全なerror budgetは速く動くための許可証です。予算内に余裕をもって収まっている限り、積極的に出荷し、リスクの高いマイグレーションを実行し、小さな失敗を許容できます。予算は信頼性と速度を、競合する目標ではなく、一つのリソースの両面として捉え直します。

ポリシーが規定するもの

ポリシーは、予算の消費に結びついた、具体的で事前に合意された対応を記述します。例えば、予算が使い果たされたら機能のローンチを凍結し、回復するまでチームは完全に信頼性の作業へ移行します。ルールはインシデントの前に設定されているため、プレッシャーの下で交渉する必要は誰にもありません。

burn rateのalerting

あらゆるエラーでalertを出すのではなく、成熟したチームはburn rate、つまり予算がどれだけ速く消費されているかでalertを出します。緩やかなburnはチケットで済むかもしれませんが、1か月分の予算を1時間で使い果たすような速いburnは、即座に誰かをpageするに値します。これによりalertがユーザーへの影響に結びつきます。

合意が不可欠

error budget policyは、リーダーシップが本当にそれを尊重する場合にのみ機能します。機能のプレッシャーが常に枯渇した予算を上書きするなら、ポリシーは見せかけです。信頼性が損なわれたときに実際に減速するという合意こそが、この枠組み全体に実効性を与えます。

重要なポイント

  • error budgetは、ある期間にわたってSLOが許容する信頼性の低さです。
  • ポリシーは予算が消費されるにつれての行動を事前に定義し、その場での議論を取り除きます。
  • burn-rateのalertingは、生のエラー数ではなく、どれだけ速く消費しているかにpageを結びつけます。

関連ガイド