SRE

エラーバジェットの計算方法と無料テンプレート2024-2026

ⓘ本ページはプロモーションが含まれています

もっとスキルを活かしたいエンジニアへ

スポンサードリンク
働き方から選べる

無料で使えて良質な案件の情報収集ができるサービス

エンジニアの世界では、「いつでも動ける状態を作っておけ」とよく言われます。
技術やポートフォリオがあっても、自分に合う案件情報を日常的に見れていないと、いざ動こうと思った時に比較や判断が難しくなってしまいます。
普段から案件情報が集まる環境を作っておくと、良い案件が出た時にすぐ動きやすくなりますよ。
筆者自身も、メガベンチャー勤務時代に年収1,500万円を超えた経験があります。振り返ると、技術だけでなく「どんな案件や働き方があるか」を日頃から見ていたことが、キャリアの選択肢を広げるきっかけになりました。
このブログを読んでくれた方に感謝を込めて、実際に使っている情報収集サービスを紹介します。

フルリモート・週3日・高単価、どんな条件も妥協したくないなら

フリーランスボードに無料会員登録する

利用者10万人以上。業界最大規模45万件の案件。AIマッチ機能や無料の相場情報が人気。

年収800万円以上のキャリアアップ・ハイクラス正社員を視野に入れているなら

Beyond Careerに無料相談する

内定獲得率90%以上。紹介先企業とは役員クラスのコネクションがある安心と信頼できるエージェント。


スポンサードリンク

1. エラーバジェットとは何か

用語 意味
SLI(Service Level Indicator) 実際に観測された可用性、レイテンシ、エラー率などの指標。数値は「実績」になる。
SLO(Service Level Objective) 事前に合意した目標水準。たとえば「月間稼働率 99.9 %」や「95%リクエストのレイテンシ ≤ 200 ms」など。
エラーバジェット(Error Budget) 許容ダウンタイム = (1 – SLO) × 期間 と実績ダウンタイムとの差分。
残りエラーバジェット = 許容ダウンタイム – 実障時間

ポイント
- エラーバジェットは「可用性改善のための予算」とみなせる。残高が減っていくほど、変更やリリースに伴うリスクが高まる。
- SLO が 99.9 %(=月間 43.2 分)で実績が 99.95 %(=月間 21.6 分)なら、残りエラーバジェットは 21.6 分


2. エラーバジェットの計算式

2‑1. 基本式

[
\text{許容ダウンタイム} = (1 - \text{SLO}) \times T
]

[
\text{実障害時間} = (1 - \text{SLI}) \times T
]

[
\text{エラーバジェット残量} = \text{許容ダウンタイム} - \text{実障害時間}
]

  • T は対象期間(秒・分・時間・日いずれでも単位を合わせれば可)。
  • SLO/SLI は 0〜1 の小数で表す。(例:99.9 % → 0.999)

2‑2. スプレッドシートでの実装例

セル 内容 数式(Google Sheets / Excel)
B2 期間(日) 手入力例 30
B3 SLI(小数) 手入力例 0.9995
B4 SLO(小数) 手入力例 0.999
C2 許容ダウンタイム(時間) =B2*24*(1-B4)
C3 実障時間(時間) =B2*24*(1-B3)
C4 エラーバジェット残量(時間) =C2-C3

備考
- Excel の場合は *24 を省き、期間を「時間」単位で直接入力すれば同様に計算できる。
- 小数点以下の桁数は必要に応じて ROUND 関数で調整(例:=ROUND(C4,2))。


3. 無料テンプレート一覧(2024〜2026 年版)

テンプレート名 提供元・ライセンス 対応プラットフォーム 主な機能
Error Budget Calculator(Web) dotcom‑monitor / SaaS 利用規約(2024/03 更新) ブラウザのみ リアルタイム SLI/SLO 比較、グラフ表示、CSV エクスポート
SRE 引き継ぎシート alternativework.jp / CC BY‑NC 4.0(改変可・非営利利用限定) Excel, Google Sheets SLO 根拠、エラーバジェット運用ルール、インシデント記録テンプレート
SRE Incident Response Template App‑Tatsujin / MIT License(商用利用可) Excel, Google Sheets インシデント概要・復旧手順・自動エラーバジェット消費計算
sre‑error‑budget (GitHub) open‑source community / Apache 2.0 CSV/JSON + Python スクリプト API 経由でメトリクス送信、Datadog/Prometheus 連携サンプル

利用上の注意
- 各テンプレートのライセンス条項は必ず公式ダウンロードページに記載されている最新版を確認してください。
- 商用プロジェクトで使用する場合、特に CC BY‑NC 系列は「非営利」要件に抵触しないか注意が必要です。


4. エラーバジェットを Datadog と連携させる実装手順

4‑1. 前提条件

項目 内容
Datadog API キー DD_API_KEY(システム環境変数または Secret Manager に保存)
アプリケーションキー DD_APP_KEY(書き込み権限が必要)
送信対象メトリクス名 error_budget.remaining_seconds(任意の名前で可)

公式参照:Datadog API v1 の「Submit metrics」エンドポイント https://docs.datadoghq.com/api/latest/metrics/#submit-metrics

4‑2. Google Apps Script からメトリクス送信

  • C4 は先ほど計算した エラーバジェット残量(時間)
  • gauge タイプで送信すれば、Datadog のモニタ作成画面で「閾値以下になったらアラート」を設定できる。

4‑3. Datadog 側のモニタ例

項目 設定
メトリクス名 error_budget.remaining_seconds
アラート条件 value < 300(残り 5 分未満)
通知先 Slack #sre-alert、PagerDuty Service
評価期間 5 分間の連続評価

ベストプラクティス
- 複数サービスを管理する場合は service:xxx タグで切り分ける。
– アラートノイズ防止のため、「低下率」(例:5 分間に 30 % 以上減少)でも追加モニタを設定すると有効。


5. バーンレート(消費速度)の活用

5‑1. 定義と計算式

[
\text{バーンレート} = \frac{\text{エラーバジェット残量}}{\text{経過期間中の累計障害時間}}
]

  • 単位時間 / 時間(無次元)または 分/分
  • バーンレートが 1.0 を超えると、残りエラーバジェットが同じ速度で消費されていることを意味し、枯渇リスクが高い

5‑2. スプレッドシート実装例

セル 内容 数式
D2 累計障害時間(分) 手入力例 12
E2 バーンレート =C4*60 / D2 (残量を「分」に変換して割る)

応用
- バーンレートが一定閾値(例:> 1.5)を超えたら、Datadog に別メトリクス error_budget.burn_rate を送信し、同様にアラート化できる。


6. エラーバジェット管理の実務シナリオ

シナリオ 手順・ポイント
① リリース前の判断 - 新機能追加で予想ダウンタイムが 5 分 → バーンレート 5 ÷ 残量 が 0.2 以下ならリスク許容。
- エラーバジェット残量が 10 分未満の場合はリリースを延期し、改善作業を先に実施。
② インシデント後のレビュー - インシデントごとに「消費エラーバジェット(分)」と「原因カテゴリ」を記録。
- 月次レポートでカテゴリ別合計を可視化し、上位 2 件を改善対象に設定。
③ 複数サービス間の予算配分 - 全体エラーバジェット(例:300 分)をサービス A/B/C に均等割り当て。
- 各サービスのバーンレートが高いものから追加予算(リトライ回数削減、キャッシュ導入など)を投下。
④ 経営層への報告 - 「残エラーバジェット = X 分(Y %)」と「今月のバーンレート = Z」だけで要点を示すスライド作成。
- 可視化は Datadog ダッシュボードか Google Data Studio のチャートで提示。

7. テンプレート利用時の注意点と更新管理

7‑1. ライセンス確認の具体例

提供元 ライセンス表記(2024/10 時点)
dotcom-monitor SaaS 利用規約 – 商用利用は無料だが、データ保存期間に制限あり。
alternativework.jp CC BY‑NC 4.0 – 改変可・非営利限定、クレジット表記必須(「© alternativework.jp」)。
App‑Tatsujin MIT License – ソースコード/シートの改変・再配布自由。商用利用も可。
GitHub sre-error-budget Apache 2.0 – 特許権付与あり、変更時は NOTICE ファイルに追記が必要。

実務的アドバイス
- 社内でテンプレートを改変して配布する場合は、必ず上記ライセンス条項に従い「クレジット」や「NOTICE」の追加を書き込むこと。
- 法務部門と事前に合意形成を取っておくと、後々のコンプライアンスリスクが低減できる。

7‑2. バージョン管理と互換性

項目 推奨手順
更新チェック 提供元の「Release Notes」や GitHub の releases ページを月1回程度閲覧。
バックアップ 変更前にシート全体を .xlsx.csv の二重保存。
互換性テスト Excel ⇔ Google Sheets 間で数式がエラーになるケースは ARRAYFORMULAIFERROR の差異が主因。簡易テスト用シートで「全セル比較」スクリプトを走らせると安心。
自動デプロイ CI/CD(例:GitHub Actions)でテンプレート更新時に社内共有フォルダへ自動コピーするフローを構築すると、手作業の漏れが防げる。

8. まとめ

  1. エラーバジェットは SLO と実績 SLI の差分であり、可用性改善予算として活用できる。
  2. 計算はシンプルな乗算・減算だけなので、Excel/Google Sheets に数式を埋め込むだけで即座に算出可能。
  3. Datadog 連携では API v1 の series エンドポイントへ gauge メトリクスとして送信し、閾値アラートで事前警告が実現できる。
  4. バーンレートを併せてモニタリングすれば、「残予算がいつ枯渇するか」を定量的に把握でき、リリース判断やインシデント後の改善策立案に有効。
  5. 無料テンプレートは ライセンス条項を必ず確認し、社内で改変・再配布する際はクレジット表記等の条件を遵守すること。

次のステップ
- まずは自チームの SLO を明文化し、上記数式をシートに落とし込む。
- スクリプトで Datadog にメトリクス送信し、閾値アラートを設定。
- 月次レビューでバーンレートとインシデント消費量を分析し、改善サイクル(Plan‑Do‑Check‑Act)へフィードバックする。

エラーバジェット管理は 可視化 → アラート → 改善 の3ステップで完結します。この記事の手順に沿って実装すれば、SRE チームだけでなく経営層にも「信頼できる可用性予算」の証拠を示せます。

スポンサードリンク

もっとスキルを活かしたいエンジニアへ

スポンサードリンク
働き方から選べる

無料で使えて良質な案件の情報収集ができるサービス

エンジニアの世界では、「いつでも動ける状態を作っておけ」とよく言われます。
技術やポートフォリオがあっても、自分に合う案件情報を日常的に見れていないと、いざ動こうと思った時に比較や判断が難しくなってしまいます。
普段から案件情報が集まる環境を作っておくと、良い案件が出た時にすぐ動きやすくなりますよ。
筆者自身も、メガベンチャー勤務時代に年収1,500万円を超えた経験があります。振り返ると、技術だけでなく「どんな案件や働き方があるか」を日頃から見ていたことが、キャリアの選択肢を広げるきっかけになりました。
このブログを読んでくれた方に感謝を込めて、実際に使っている情報収集サービスを紹介します。

フルリモート・週3日・高単価、どんな条件も妥協したくないなら

フリーランスボードに無料会員登録する

利用者10万人以上。業界最大規模45万件の案件。AIマッチ機能や無料の相場情報が人気。

年収800万円以上のキャリアアップ・ハイクラス正社員を視野に入れているなら

Beyond Careerに無料相談する

内定獲得率90%以上。紹介先企業とは役員クラスのコネクションがある安心と信頼できるエージェント。


-SRE