Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
負債あるモノリスのオブザーバビリティに組織で向き合う
Search
Recruit
PRO
September 24, 2024
Technology
9
420
負債あるモノリスのオブザーバビリティに組織で向き合う
2024/09/25に、オブザーバビリティ実践までの道のり〜各社の課題とアプローチ方法とは?~で発表した、moppの資料です。
Recruit
PRO
September 24, 2024
Tweet
Share
More Decks by Recruit
See All by Recruit
リクルートのデータ基盤 Crois 年3倍成長!1日40,000コンテナの実行を支える AWS 活用とプラットフォームエンジニアリング
recruitengineers
PRO
1
220
Splunk Enterpriseで S3のデータを直接検索してみた!
recruitengineers
PRO
0
13
Looker APIを使い倒す ユーザーフィードバックを基にした継続的改善サイクル
recruitengineers
PRO
3
47
Kaggleふりかえり会〜LLM 20 Questions & ISIC 2024
recruitengineers
PRO
2
190
Balancing Revenue Goals and Off-Policy Evaluation Performance in Coupon Allocation
recruitengineers
PRO
1
44
Flutterによる 効率的なAndroid・iOS・Webアプリケーション開発の事例
recruitengineers
PRO
0
300
VPC Traffic Mirroring とOSS を利⽤した ネットワークフォレンジック基盤の構築・運⽤
recruitengineers
PRO
2
90
スタサプ ForSCHOOLアプリのシンプルな設計
recruitengineers
PRO
3
1.1k
リクルート流データ基盤塾~鶴谷と学ぶ~
recruitengineers
PRO
5
320
Other Decks in Technology
See All in Technology
GitHub Actions의 다양한 기능 활용하기 - GitHub Universe '24 Recap
outsider
0
510
スパイクアクセス対策としての pitchfork 導入
riseshia
0
190
プロダクトマネージャーは 事業責任者の夢をみるのか pmconf2024
gimupop
2
8.9k
asumikamというカンファレンスオーガナイザの凄さを語る / The Brilliance of Asumikam
tomzoh
1
290
総会員数1,500万人のレストランWeb予約サービスにおけるRustの活用
kymmt90
3
2.9k
【ASW21-01】STAMPSTPAで導き出した課題に対する対策立案手法の提案
hianraku9498
0
600
品質管理チームのEMとして大事にしていること / QA EM
nihonbuson
0
840
突き破って学ぶコンテナセキュリティ/container-breakout-cncj-lt
mochizuki875
6
1.1k
Oracle Database Release and Support Timelines 2024/12/11
wmo6hash
0
120
Raspberry Pi 秋の新製品をチェックしてみよう / 20231202-rpi-jam-tokyo
akkiesoft
0
460
Replit Agent
kawaguti
PRO
2
200
【AWS re:Invent 2024】Amazon Bedrock アップデート総まとめ
minorun365
PRO
7
600
Featured
See All Featured
Optimizing for Happiness
mojombo
376
70k
Agile that works and the tools we love
rasmusluckow
328
21k
Raft: Consensus for Rubyists
vanstee
136
6.7k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
Being A Developer After 40
akosma
87
590k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
Gamification - CAS2011
davidbonilla
80
5.1k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
Building Better People: How to give real-time feedback that sticks.
wjessup
365
19k
Producing Creativity
orderedlist
PRO
341
39k
Transcript
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 負債あるモノリスのオブザーバビリティに 組織で向き合う @mopp オブザーバビリティ実践までの道のり〜各社の課題とアプローチ方法とは?〜
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ About mopp • 仕事 ◦ ソフトウェアエンジニア • エディタ
◦ Neovim ◦ VimConf 2024 の運営やってます • 最近のできごと ◦ セブンイレブンの豆腐ガトーショコラを 自宅で量産できた
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ About スタディサプリ 小中高 様々なスタディサプリの内 「小学講座」「中学準備・中学 講座」「大学受験講座」の領域 でのお話しをします
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ • もっとオブザーバビリティ/監視を推進したいけど どうしたらいいのか悩んでいる人 • モノリスのオブザーバビリティ/監視を改善したい人 対象者
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ オブザーバビリティとは? オブザーバビリティとは?監視との違い、必要性について解説 | New Relic より 何が起きたかを 見続けること
監視 なぜそれが起きたかを 探り出すこと オブザーバビリティ 基礎に「監視」がある (自分でも理解が曖昧でした) より進んだ概念
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ オブザーバビリティを実践するために 監視から強化していく
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 歴史と負債のあるモノリス Ruby サーバ アプリケーション 多くの機能が乗っている要所 エンドポイント数: 約240個 Web,
Android, iOS の全クライアントから利用 地層の最深層は2015年くらい チーム エンドユーザ 利用する チーム チーム チーム チーム チーム チーム チーム チーム チーム チーム チーム チーム チーム チーム 約15チーム 開発する
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 歴史と負債のあるモノリス 直面する問題(の一部) エラー増加したとき どのチームを呼べばいいか わからない 実装の詳細が知りたい でも、誰も知らない 何かが起きてそう
だが、どこが原因か調べにくい →オブザーバビリティが低い エンドポイントに Ownership を設定 一定解消 打ち手 今回はこの話をします 開発者 つらい、 とても… 近年の 社内有志たち による改善
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 今回の問題 現れた問題 ダッシュボードが見づらい 本来やりたかったこと Ownerチームの特定と接続のため どこで異常が起きているか知りたい 動作確認のため 問題がないか確認したい
開発者 グラフがたくさんあるけど どれを見れば…? 開発者 全体レイテンシが悪化して るけど原因はどのエンドポ イントだ… Ownership が混じる
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 問題の深堀り アプリケーションも一つ 監視には Datadog を利用 ダッシュボードは一つ アプリケーション全体の Owner
は1チーム このグラフ、要らな い気がするけど誰か 見てる人いるかも… 1つのダッシュボードを 15チームで使おうとしていた ダッシュボードに新し いセクションを追加し たいけど、隣のチーム が Owner だしな… お互いの気遣いで 改善が停滞 チームXの開発者 チームZの開発者 チーム横断の改善が必要で コスト高く進んでいなかった チームXがOwner アプリケーション エンドポイント群A チームYがOwner エンドポイント群B チームZがOwner エンドポイント群C 状況 推定原因
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 初手のアプローチ • Ownerチームを巻き込んで一緒に改善していく ◦ メンバ全員でなくて OK ▪ 予定調整で苦労したり、定例まみれになるよりは
一部メンバで軽量に進めたほうが有益 ▪ チームとして知識があること、と チーム内でサイロ化しないこと、は別の問題 ◦ 自分はリード役、ファシリテーション役を率先する
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 巻き込み力: 初手の声掛け Ownership を尊重し チームのスキル向上を支援 一緒に学ぶために ワークショップ形式を提案 毎週1時間の
devs 知見交換会の場を利用 → 興味のある色々な人が来てくれる
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 巻き込み力: 一筆 • 非同期コミュニケーションの活用 ◦ 事前に背景や意図を伝える • 記録として残す
◦ 再現性の参考にする ◦ 歴史として残す ◦ 過程で登場した問題を記録する
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ ダッシュボード磨き込み会 場 オンライン 毎週火曜日 1時間弱 現時点で 5回実施 やっていること
方針の 相談と決定 具体の改善
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ ダッシュボード磨き込み会 ダッシュボードOwnerチームから 必ず1人は参加してもらう 工夫した点 工夫の狙い Ownership を尊重し 自己組織化を支援
モブプロ形式で実施 Driver は Owner チームを優先 誰でも参加 OK いつのまにか 「Datadog 歯磨き」と 呼ばれるようになった チーム横断の知見共有
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 得られた成果 大方針の策定 Ownership に準じて機能やエンドポイント に特化した別ダッシュボードを作る 既存のダッシュボードは アプリケーション全体を 俯瞰して見られるものにする
注意: あくまでも弊組織での事例 自チームの裁量で監視可能にする 異常の原因を掘り出せるように整備する → オブザーバビリティ 期待する効果
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 得られた成果 不要/重複グラフ削除による ダッシュボードの軽量化 5XX を最もよく見るので HTTPリクエストのグラフから着手 進める中で具体的な問題が見えてきた (例:
SLOの問題、DBの監視不足) (個人的に嬉しかったこと) moppの休暇と会が被ったとき 問題なく進んでいたこと 例: ダッシュボードの一部
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ 振り返り • オブザーバビリティへの道が一つ開けた ◦ お見合い状態が解消できた • Ownership と自己組織化が進む方向に迎えた
◦ これを一人ではなくみんなで決められたことが偉業
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ まとめ • 今回やったことを型化してみる • オブザーバビリティ/監視を組織として推進するために 1. 問題に当たりを付ける 2.
メンツを集める 3. 場を用意する 4. 会を推進する コミュニケーションコストを抑えつつ Ownership を尊重する トピックに関心が高い人から集める 「乗っていき」がある人がいつでも参入できるようにする 既存の場に便乗するのが便利 「自分の知見を提供する」だと推進者が疲れるので 「みんなで学んでいく」方が気楽でいい 会の辞め時や方針転換の気配は見逃さないように注意
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ フリー素材コーナー • ご自由にお使いください エンドユーザ1 Drawn by ujihisa https://x.gd/i1vWi
エンドユーザ2 Drawn by mopp https://x.gd/OE0Sn
#o11y_findy 負債あるモノリスのオブザーバビリティに組織で向き合う@スタディサプリ ご清聴ありがとうございました