Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
「複数ウィンドウ、複数バーンレートのアラート」を設定する際の注意点
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
iwamot
PRO
May 17, 2023
Technology
1.5k
1
Share
「複数ウィンドウ、複数バーンレートのアラート」を設定する際の注意点
2023-05-19
SRE大集合!みんなで学ぶ、信頼性を高めるための取り組みLT大会
https://findy.connpass.com/event/281605/
iwamot
PRO
May 17, 2023
More Decks by iwamot
See All by iwamot
パワポ作るマンをMCP Apps化してみた
iwamot
PRO
0
410
8万デプロイ
iwamot
PRO
2
350
AIエージェント・マイクロサービス時代。AWSでの手軽な構築法を考えて試してみた
iwamot
PRO
1
89
これがLambdaレス時代のChatOpsだ!実例で学ぶAmazon Q Developerカスタムアクション活用法
iwamot
PRO
10
2.5k
Developer Certificate of Origin、よさそう
iwamot
PRO
0
70
復号できなくなると怖いので、AWS KMSキーの削除を「面倒」にしてみた CODT 2025 クロージングイベント版
iwamot
PRO
1
180
復号できなくなると怖いので、AWS KMSキーの削除を「面倒」にしてみた
iwamot
PRO
3
150
IPA&AWSダブル全冠が明かす、人生を変えた勉強法のすべて
iwamot
PRO
14
12k
2年でここまで成長!AWSで育てたAI Slack botの軌跡
iwamot
PRO
4
1.3k
Other Decks in Technology
See All in Technology
ジュニアエンジニアはSREとどう向き合うべきか
nrinetcom
PRO
0
100
LookerとADKで作る社内AIエージェント
chanyou0311
0
280
freee-mcpを Local→Remote で出してわかった MCP認可実装のリアル
terara
1
190
障害対応のRunbookは作った、でも本当に動くの? AWS FIS で EKS の AZ 障害を再現してみた
tk3fftk
0
120
M&Aで増え続けるプロダクトに少数QAはどう立ち向かうか─GENDAが挑む、全員で取り組む品質標準化戦略 / GENDA Tech Talk #4
genda
0
280
実践 TanStack Start ― 新規プロダクトを開発して確立した、サーバーとクライアント境界の設計パターン / Practical TanStack Start Server-Client Boundary Patterns
kaminashi
2
160
R&D 祭 2024 アニメエフェクト作成の効率化
olmdrd
PRO
0
110
パーソルキャリア IT/テクノロジー職向け 会社紹介資料|Company Introduction Deck
techtekt
PRO
0
250
続 運用改善、不都合な真実 〜 物理制約のない運用改善はほとんど無価値 / 20260518-ssmjp-kaizen-no-value-without-physical-constraints
opelab
2
300
[みん強]AIの価値を最大化するデータ基盤戦略:Self-Service型Data Meshへの転換とAgentic AI Meshに向けた取り組み with Snowflake他
y_matsubara
1
160
アプリブロック機能のつくりかたと、AIとHTMLの不合理な相性の良さについて
kumamotone
1
270
ルール・ロール・ツールを創る / Creating Rules, Roles and Tools
ks91
PRO
0
140
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
We Have a Design System, Now What?
morganepeng
55
8.1k
Ruling the World: When Life Gets Gamed
codingconduct
0
230
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.1k
Discover your Explorer Soul
emna__ayadi
2
1.1k
Designing Experiences People Love
moore
143
24k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
430
Marketing to machines
jonoalderson
1
5.3k
Claude Code のすすめ
schroneko
67
220k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.1k
Transcript
「複数ウィンドウ、複数バーンレートのアラート」を 設定する際の注意点 2023-05-19 SRE大集合!みんなで学ぶ、信頼性を高めるための取り組みLT大会 https://findy.connpass.com/event/281605/ ENECHANGE株式会社 CTO室 インフラエンジニア兼SRE 岩本隆史 (iwamot)
こんな人
複数ウィンドウ、複数バーンレートのアラート
Google推奨のアラート設定 https://sre.google/workbook/alerting-on-slos/
2つのウィンドウで エラーバジェット消費を賢く通知
3つのバーンレートの監視が推奨 Severity Long window Short window Burn rate Error budget
consumed Page 1 hour 5 minutes 14.4 2% Page 6 hours 30 minutes 6 5% Ticket 3 days 6 hours 1 10%
条件式(ページ・チケット) ( job:slo_errors_per_request:ratio_rate1h{job="myjob"} > (14.4*0.001) and job:slo_errors_per_request:ratio_rate5m{job="myjob"} > (14.4*0.001) )
or ( job:slo_errors_per_request:ratio_rate6h{job="myjob"} > (6*0.001) and job:slo_errors_per_request:ratio_rate30m{job="myjob"} > (6*0.001) ) job:slo_errors_per_request:ratio_rate3d{job="myjob"} > 0.001 and job:slo_errors_per_request:ratio_rate6h{job="myjob"} > 0.001
そうか、この条件式をそのまま使えばいいんだな
違います
注意点1 適切な閾値はSLOによって異なる
係数 (0.001) は目標値次第
「0.001」は目標値99.9%のこと 1 - 0.999 = 0.001
99%なら「0.01」 1 - 0.99 = 0.01
バーンレート (14.4 / 6 / 1) は期間次第
条件式のバーンレートは30日間が前提 (30 * 24) / 1 * 2% = 14.4
(30 * 24) / 6 * 5% = 6 (30 * 24) / (3 * 24) * 10% = 1
7日間で計算すると (7 * 24) / 1 * 2% = 3.36
(7 * 24) / 6 * 5% = 1.4 (7 * 24) / (3 * 24) * 10% = 0.233
Googleは28日間を推奨
28日間で計算すると (28 * 24) / 1 * 2% = 13.44
(28 * 24) / 6 * 5% = 5.6 (28 * 24) / (3 * 24) * 10% = 0.933
「28日間で99%以上」の条件式 ( job:slo_errors_per_request:ratio_rate1h{job="myjob"} > (13.44*0.01) and job:slo_errors_per_request:ratio_rate5m{job="myjob"} > (13.44*0.01) )
or ( job:slo_errors_per_request:ratio_rate6h{job="myjob"} > (5.6*0.01) and job:slo_errors_per_request:ratio_rate30m{job="myjob"} > (5.6*0.01) ) job:slo_errors_per_request:ratio_rate3d{job="myjob"} > (0.933*0.01) and job:slo_errors_per_request:ratio_rate6h{job="myjob"} > (0.933*0.01)
なるほど。ちゃんと設定しよう これでエラーが急増しても ページが飛ぶから安心だな
違います
注意点2 SLOによってはページが飛ばない
例:1秒以内の応答が30日間で50%以上
「30日間で50%以上」の条件式 ( job:slo_errors_per_request:ratio_rate1h{job="myjob"} > (14.4*0.5) and job:slo_errors_per_request:ratio_rate5m{job="myjob"} > (14.4*0.5) )
or ( job:slo_errors_per_request:ratio_rate6h{job="myjob"} > (6*0.5) and job:slo_errors_per_request:ratio_rate30m{job="myjob"} > (6*0.5) ) job:slo_errors_per_request:ratio_rate3d{job="myjob"} > 0.5 and job:slo_errors_per_request:ratio_rate6h{job="myjob"} > 0.5
ページ条件 = エラー率300%超… 14.4 * 0.5 = 7.2 = 720%
6 * 0.5 = 3 = 300% 0.5 = 50%
エラー率300%はありえない ページは飛ばない
30日間の場合、飛ぶのは83.34%以上 6 * (1 - N) < 1 (1 -
N) < 0.1666 N > 0.8334
まとめ
「複数ウィンドウ、複数バーンレートのアラート」を 設定する際の注意点
適切な閾値はSLOによって異なる SLOによってはページが飛ばない