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
SLI/SLO をストリーム アラインドチームに導入した話
Search
Tsukasa OISHI
March 10, 2023
Technology
220
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
SLI/SLO をストリーム アラインドチームに導入した話
Tsukasa OISHI
March 10, 2023
More Decks by Tsukasa OISHI
See All by Tsukasa OISHI
怖くないメモリ肥大化
tsukasa_oishi
1
120
JITをたどるとそこはYARVの中
tsukasa_oishi
0
590
The Cacher in the Rye
tsukasa_oishi
1
6k
ISeqで遊ぼう
tsukasa_oishi
0
5.3k
Rubyを30倍速くした話
tsukasa_oishi
0
1.3k
はてブ砲をくらったときのお話
tsukasa_oishi
0
2.3k
食べログで動いている自作ライブラリのお話
tsukasa_oishi
0
330
奥さんとプログラミングを両立させる方法
tsukasa_oishi
0
120
MiyazakiResistanceを作ってみたよ
tsukasa_oishi
0
1.1k
Other Decks in Technology
See All in Technology
DGX Spark でどこまでハッキングができるのか?
kash1064
3
1.4k
FinOps Agentが生んだ技術負債:コスト自動調査の落とし穴と解消までの道のり
oasis1994liveforever
2
160
Classmethod Company Deck
satoshi7
1
740
『SAR衛星データ解析入門』のご紹介とその応用
syuchimu
0
130
PagerDuty Tech Hub-鳴らすけれど、人は動かない
ezaki
0
180
スキマバイトという雇用形態は存在しないので、雇用期間1日のアルバイト契約を事業者とワーカーが結ぶ手続きを支えるのがタイミーなんです
akitoshiga
0
210
LambdaWebFunctionsを試してみた / exploring-lambda-web-functions
koukihosaka
1
360
実践! SRE × AI - ABEMA における AIOps -
tetsuya28
8
3.1k
20261017福岡devIO 「AIは"良いダッシュボード"を作れるか?
jtakeda
0
190
トークン化預金DCJPYの取り組みと活用ユースケース
finengine
0
180
ブラウザとサーバーから考えるAI時代のフロントエンド監視
shogo4131
3
1k
アウトプット初心者、半年間のふりかえり
4o1sobblue
0
450
Featured
See All Featured
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
710
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
Raft: Consensus for Rubyists
vanstee
142
7.8k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
Building Flexible Design Systems
yeseniaperezcruz
330
41k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
Navigating Weather and Climate Data
rabernat
0
560
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
270
Scaling GitHub
holman
464
140k
For a Future-Friendly Web
brad_frost
184
10k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
930
How to Think Like a Performance Engineer
csswizardry
28
2.9k
Transcript
SLI/SLO をストリーム アラインドチー ムに導入した話 2023-03-09
スピーカー紹介 2022 年 6 月 Ubie株式会社 Ubie Discovery 入社。 プロダクト開発エンジニアとして病院・クリニック向けのプロダクト
「ユビー AI 問診」の開発・運用や、 Ubie のシステムアーキテク チャを生産性の面から改善していく業務に携わっている。 Twitter: @tsukasa_oishi GitHub: @tsukasaoishi おおいしつかさ Ubie株式会社
テクノロジーで人々を適切な医療に案内する
なぜストリーム アラインドチームに SLO が必要になっ たか? 何を計測するべきか、クリティカル ユーザージャーニー から導き出す SLI と
SLO を決める どのようにして SLI を計測し、可視化したか 01 03 02 04
なぜストリーム アラインドチー ムに SLO が必要に なったか? 01
None
None
変更容易性の低下 責務がわかりにくい 個人による活動の限界
ストリーム アラインドチームの誕生
Place Image Here 運用タスクの増加
SLI/SLO
なにを計測するべきか クリティカル ユーザージャー ニーから導き出す 02
SLI をどう決めたらいいんだろう?
None
ユーザー ジャーニー全体 の時間や完走率を計測し たが失敗した • ユーザー ジャーニー全体の時間は、ユーザーによっ てばらつきが大きく、 SLO を決定しにくい
• 完走率も時間帯によってばらつきが大きい • 完走率が低い = 信頼性が低下しているとは言えない
ユーザーが価値を得るための 一連の体験の中で、もっとも重 要なアクションを SLI にする
SLI と SLO を決める 03
ユーザーに提供している価値が毀損していること を、何をもって表せるか?
そのアクションによる結果が正しい挙動で稼働 し続けていること。 これが保てなければ価値を提供できているこ とにはならない。 そのアクションによる結果が想定の範囲内の 時間で価値を提供できていること。 正しい挙動で稼働し続けられても、時間がか かっていたら意味がない。 SLI 可用性
レイテンシ
サービス A サービス B サービス C サービス D サービス E
サービス F どこで計測するのか
サービス A サービス B サービス C サービス D サービス E
サービス F どこで計測するのか
サービス A サービス B サービス C サービス D サービス E
サービス F どこで計測するのか
クライアント サイドでの レンダリングの 計測を 検討したが採用しなかっ た • ユーザーの価値を毀損しているかどうかの要因となる のは、レンダリングよりも API
コールだった • レイテンシの大部分は API コールが占める • API コールの成否が可用性に大きく影響する
サービス A サービス B サービス C サービス D サービス E
サービス F どこで計測するのか
SLO を決める
サービス全体を見ている PO なども交えて議論
まずは緩めの値で開始し、運用しながら適正 な値に近づけていくことに
どのようにして SLI を 計測し、可視化したか 04
ログ受付 prometheus exporter Pub/Sub Monitoring grafana BigQuery
ログ受付 prometheus exporter Pub/Sub Monitoring grafana BigQuery API コールを計測。 ある程度バッファリング
してから送信
ログ受付 prometheus exporter Pub/Sub Monitoring grafana BigQuery Go で実装した prometheus
exporter
ログ受付 prometheus exporter Pub/Sub Monitoring grafana BigQuery PodMonitoring リソースを定義 しておくことで
GMP がメトリクス を取りに来てくれる
Google Cloud Managed Service for Prometheus(GMP)は terraform で設 定している Terraform
resource “google_monitoring_slo” “ubie_a_team_latency” { service = google_monitoring_cs.ubie_a_team.service_id project = local.project_id display_name = “monthly ubie a team latency p95 < ??ms” slo_id = “ubie-a-team-latency” goal = 0.95 calendar_period = “MONTH” request_based_cli { distribution_cut { Distribution_filter = “metrics.type=...” range { min = 0 max = ?? } } } }
Grafanaで可視化
まとめ
開発と運用のリソース配分のひとつの指標と して SLI/SLO を利用しました。 SLI をどうやって決めるのか、悩んでいるとこ ろも多いと思うので参考にしていただけたら幸 いです。
Thank you. Proprietary + Confidential