Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
AWS SNSでエラー通知させ、SLOについて考える
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
melanmeg
July 08, 2024
Programming
160
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AWS SNSでエラー通知させ、SLOについて考える
以下、登壇資料。
JAWS-UG SRE支部 #9 初心者LT大会
https://jawsug-sre.connpass.com/event/321380/
melanmeg
July 08, 2024
More Decks by melanmeg
See All by melanmeg
今までアウトプットしてこなかった私が、今年からアウトプットを始めてわかったこと
melanmeg
3
360
コマンド一発で、本格的なおうちKubernetesを構築する
melanmeg
3
330
Keycloakの歴史とSSO
melanmeg
0
130
Other Decks in Programming
See All in Programming
RSSとCodexを使ってX投稿自動化してみた
ochtum
0
110
新卒PdEのリアル
ryu1013
1
490
業務時間外もAIに働いてもらう話
colorful12
3
10k
The Good Stuff, Not the Slop: Engineering High-Quality Android Apps with Modern AI Tooling
danybony
1
240
DynamoDBの基礎を振り返りながらベクトル検索機能を理解する
musan
3
280
Kiroで創り、AgentCoreで繋ぐ!AWSで実践する「AI-DLC」から「AIエージェント統合」までの最新地図
licux
4
650
コンパウンドプロダクト開発のためのローカルプロセスマネージャー再発明 #layerxgo
izumin5210
0
670
AgentCore CLI で進化した AWS での AI エージェントの作り方 : 必要な機能を必要な時に
icoxfog417
PRO
3
320
go-spidermonkeyでAIエージェントのCode Modeを実装する
syumai
3
1.5k
スマート反転とウェブアクセシビリティ
camiha
0
180
標準パッケージに uuid が追加された 背景から見る Go らしい意思決定 / go_127_uuid_decision
convto
5
6.2k
Family mrubyの進捗
kishima
1
110
Featured
See All Featured
Un-Boring Meetings
codingconduct
0
410
Why Our Code Smells
bkeepers
PRO
340
58k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
530
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
240
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
570
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.5k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
Amusing Abliteration
ianozsvald
1
290
Rails Girls Zürich Keynote
gr2m
96
14k
The Cost Of JavaScript in 2023
addyosmani
55
10k
The Limits of Empathy - UXLibs8
cassininazir
1
650
Google's AI Overviews - The New Search
badams
0
1.6k
Transcript
AWS SNSでエラー通知させ、 SLOについて考える 2024/7/8 JAWS-UG SRE支部#9 初心者LT大会 @melanmeg
自己紹介 株式会社スカイウイル インフラエンジニア 3年目 山本 直矢 @melanmeg 趣味:ホロライブやツイキャスを見ること 業務:現在は、k6やKeycloakを触っている
アジェンダ • エラー通知の導入方法 • メトリクスフィルターとサブスクリプションフィルター • メトリクスフィルター構成 • サブスクリプションフィルター構成 •
SLOについて考える
{ "logs": { "logs_collected": { "files": { "collect_list": [ {
"file_path": "/var/log/syslog", "log_group_name": "/var/log/syslog", "log_stream_name": "{instance_id}", "timestamp_format": "%b %d %H:%M:%S" } ] } } } } ログ出力設定ファイル エラー通知の導入方法 1. 適当なVMを用意 2. ログドライバーをインストール 3. ログ出力設定 4. CloudWatch側でログを検知し、 メール通知する AWSでログの中からエラーログだけを 通知する監視基盤がほしい あるお客さんの要望
メトリクスフィルターとサブスクリプションフィルター メリット デメリット メトリクスフィルター アラームを組み合わせて メール通知可能 メール内容のカスタマイズができない サブスクリプション フィルター ログ内容をメールに含めることが可能
直接メール通知することができず、 Lambdaを経由するなどが必要 一旦、メトリクスフィルターを検証 今回「ERROR」という文字を含む場合アラート発生させる
• 長くてよく分からない… • ログ内容も欲しい… メトリクスフィルター構成 構成 メール内容
サブスクリプションフィルター構成 • パッと見で分かりやすい • ログ内容も分かる 構成 メール内容
Lambdaの整形コード ※EventBridgeによる死活監視も同様 Pythonで実装
SLOについて考える 引用:https://www.oreilly.co.jp/books/9784814400348/ エラーバジェット SLO SLI SLIとは、たとえばWebページを十分な速さで読み込めるかといった指標 1日に訪問者数が60,000人いて、59,982人が2秒以内にページを読み込んだことを計測できたとする ページ読み込みの99.97%が「良い速さ」であればユーザーは満足すると推測 59,982 60,000
= 99.97% SLO SLOとは? 信頼性スタック
改善案 現状エラーログはすべてメール通知 ⇒エラー通知が多すぎて、管理者が状況を把握しずらいと想定 ⇒特定の条件でアラートが発生したらLambda経由でメール通知する ※2023/12/22 CloudWatch AlermがLambdaをアラーム状態変更アクションとしてサポートされたよう 引用:https://aws.amazon.com/jp/about-aws/whats-new/2023/12/amazon-cloudwatch-alarms-lambda-change-action/ 定義を考えてみる •
SLI:リクエストが十分なだけ成功しているかどうか 仮定として、以下条件までを許容するとする。 期間:1ヶ月 合計リクエスト数:1,000,000 エラーログの総数:500 • SLO:99.95% • エラーバジェット:エラーログが500個まで 1ヶ月内にエラーログが 500個を超えたらアラートを発生
おわり