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
入門 入門 監視 / reading-practical-monitoring
Search
hideki kinjyo
PRO
February 01, 2019
Technology
15
12k
入門 入門 監視 / reading-practical-monitoring
「入門 監視」を読んだので、自分たちのチームに当てはめて考えてみる
hideki kinjyo
PRO
February 01, 2019
Tweet
Share
More Decks by hideki kinjyo
See All by hideki kinjyo
パンフ記事 「初めてのリファクタリング!」 の裏側 #phperkaigi
o0h
PRO
2
64
phpunit/php-code-coverageって何をしてるんだ #phperkaigi
o0h
PRO
2
220
Composerを便利に使うために私がやっていること #phperkaigi
o0h
PRO
1
710
OpCode目線で眺める PHPコードのカバレッジ
o0h
PRO
3
490
アプリケーションエンジニアこそ「監視」だよね!と私が考える訳 #phpkansai
o0h
PRO
21
9k
#phpcondo 新しくEMやってみる人にオススメしたい本を5分で25冊紹介する
o0h
PRO
23
7.4k
PHPのファイルに差分があるかを(astを使って)調べる君
o0h
PRO
0
480
#phpcon 良いコードを書けるようになるコツは「エラーを気にする」 〜プログラマにとってエラーとは何なのか〜
o0h
PRO
0
800
ソフトウェアがバグだらけで何が悪い
o0h
PRO
1
1.1k
Other Decks in Technology
See All in Technology
単回帰分析について数式を追いながら実装してみた
kentaitakura
0
510
Kubeflow Pipelines v2 で変わる機械学習パイプライン開発
asei
4
340
SaaS型Webサービス「カオナビ」のチーム開発でPackage by Featureを取り入れた話/Implementing Package by Feature in kaonavi
kaonavi
0
100
VSCode上からSlackにメッセージを送る拡張機能を作っている話
ebarakazuhiro
0
120
#51 “Empowering Azure Storage with RDMA”
cafenero_777
3
220
Building a RAG app to chat with your data (on Azure)
pamelafox
0
130
Autopsy of a Cascading Outage from a MySQL Crashing Bug
jfg956
0
200
期待しすぎずに取り組む両面 TypeScript
shozawa
4
540
あらゆる商品を扱う商品データベースを再設計した話 / product db re-architecture
rince
8
3.8k
現実世界の事象から学ぶSOLID原則
h0r15h0
25
10k
SREsのためのSRE定着ガイド
netmarkjp
10
1.7k
AMLD 2024 - Build Your Own GPT
donlelef
1
260
Featured
See All Featured
Designing for Performance
lara
601
67k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
5
1.4k
Unsuck your backbone
ammeep
661
56k
Happy Clients
brianwarren
91
6.3k
Adopting Sorbet at Scale
ufuk
66
8.5k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
240
1.2M
Six Lessons from altMBA
skipperchong
19
2.9k
The Straight Up "How To Draw Better" Workshop
denniskardys
227
130k
The MySQL Ecosystem @ GitHub 2015
samlambert
242
12k
Optimising Largest Contentful Paint
csswizardry
7
2.3k
The Cost Of JavaScript in 2023
addyosmani
13
3.7k
No one is an island. Learnings from fostering a developers community.
thoeni
14
2k
Transcript
⼊⾨ ⼊⾨ 監視 しゃないのえるてぃー⽤ => 外部公開⽤に編集したもの
ࣗݾհ • ίωώτגࣜձࣾ • αʔόʔαΠυΤϯδχΞ • ओʹCakePHPͳͲ
─室長! 我々は、老害だったのかもし れませんよ! (金城 2019.01@CTO 1on1)
Part 0
ΧϯγϜζΧγΫωʁ • ʮ࠷ॳʹर͏ਓʯͱ͔ ʮຊରԠ͢Δਓʯͱ͔ͷภΓ • ͠ʮ͕ࣗશ͘Βͳ͍ػೳʯͰ ίέΒΕͨΒɺ٧Ή͔͠Εͳ͍ • શһ͕ͬͱΰϦΰϦʹ Ξϥʔτरͬͯ͘ΕͨΒͤͩΑͳʙʂ
None
ʮೖ ࢹʯ • ͪΐʙͲʮࢹʂߟ͑ͳ͚Εʂʂʯͬͯ ײ͍ͯͨ࣌͡ظʹʮདྷ݄ൃചʯɻ • ֓ཁͱ͔ಡΜͰͳ͍͚Ͳɺ λΠτϧʹऒ͔Εͨͷͱɺ༁ऀ͕৴པͰ͖ͦ ͏ͳͷͱͰδϟέങ͍ (ձ͕ࣾങͬͯ͘Εͨɺײँʙ)
PartⅠ
7ߦ·ͱΊ ※ࣾڞ༗ࡁΈͷʮಡॻϝϞʯΛࢀরʂ
PartⅠ 「⼊⾨ 監視」、どんな本? 〜fin〜
Part Ⅱ
本に書いてあることは、 すべて本に書いてあるので
本に書いてないことを 話しましょうよ!!!
☓読めばわかること ◦読んで考えさせられたこと ◦読んで感じたこと をば。
ざっと、おさらい。 • 本書のテーマともいうべきポイントを。 • すなわち、 「こう思ったッス」を話すにあたっての、 「お気に⼊りポイント」の共有です。
おさらい① • 「サービスが動いている」かを監視する。 • メトリクスは、 ユーザーにとって 「どういう挙動を引き起こしているか」を 説明できる項⽬を選定する
おさらい② • アラートは 「誰かを叩き起こす、要アクション」 なもの。 • ⇔「あとでやれば」なものは、 アラートと⾔わない。
おさらい③ • アラートは「⾒直し、育てる」もの。 • 「⾒たけどアクションしなかったもの」は、 失格!リストラ!外しましょう。
おさらい④ • 監視は「スキル」。 • 「役割」にしない!!!
(おさらいココまで)
我々の「監視」は どうだろうか・・・?
⼤反省ですよ!! • 我々の作っているのは 「アラート」ではなかったのかもしれない • 「役割」にはしていない。つもり。 が、「スキル」=「修得可能なモノ」として ⾒えていなかったかもしれない
ʔ͠Όͱࢹʙࢲͷೖࣾ࣌ʙ • ࢲͷೖ͔ࣾ࣌ΒSentryೖͬͯΔ • AWS CloudWatchઃఆ͞Ε͍ͯΔ • CTO͕શମతʹݟͯͨ -> ࢲ͕ೖ͔ࣾͯ͠Βউखʹπʔϧͷ͍ํΛ
͍֮͑ͯͬͨ
ʔ͠ΌͱࢹʙΤϯδχΞ૿Ճʙ • (αʔόʔαΠυ)ΤϯδχΞ͕૿͑Δʹ ಉ͡Α͏ͳड͚ೖΕͷྲྀΕΛ౿ऻ • SlackʹʮԿ͔͕ඈΜͰ͘ΔʯΑ͏ʹͯ͠ɺ ඈΜͰ͖ͨΒݟΔ • SentryͷIssueΛؾ͕͍ͨͱ͖ʹݟΔ
ʔ͠ΌͱࢹʙࢹͷڧԽʙ • ϨϙδτϦਓ૿͑ͨͷͰɺ ʮSlackʹ௨͕དྷͨΒԠ͠Α͏ʯ ͱ͍͏ͷΛ໌ݴͨ͠ • ͜Ε·ͰSentryͷΠϕϯτΛ͍͕ͬͯͨ ʮνʔϜશମͰҙࣝ͠Α͏ʯ ͱ͍͏Λͨ͠
_⼈⼈⼈⼈⼈⼈⼈⼈⼈⼈⼈⼈⼈⼈⼈⼈⼈⼈⼈⼈_ > < > 実質的に、やり⽅変わってないじゃんね < > <  ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄
͕͜͜ʮมΘͬͯͳ͍ʯɻ • 2,3ਓͰશͯΛઃܭɾ࣮͍ͯͨ࣌͠ͷ ʮશ෦๊͖͠Ίͯʂʯܕͷࢹ • ͳΜͱͳ͘ͷඪͱͯ͠ͷ ʮΤϥʔΛݮΒͦ͏ʂʯͱ͍͏ਫ਼ਆ • ܅͕ٽ͘ͷͳΒ܅ͷྦ·Ͱา͍͍ͯ͘νʔϜ ܅͕ٽ͘·ͰԥΔͷΛΊͳ͍ঢ়گ
None
─室長! 我々は、老害(ry
現状に即し、 & これからに備えねば。
そのために 「今」の姿を分析してみる。
我(々)が⾒落としていたもの • 監視なんて誰でもできる! 俺だって教わってなかったさ!! • 不具合とかエラーなんて出すな! それがゼロなら、障害もほとんど起きねぇ!
我(々)の思い上がりを 正すべき、3つの理由
ᶃαʔϏε ʮෳࡶʯʹͳ͍ͬͯΔ • ෳࡶ͞ͱ • ߏύʔπͷଟ͞ • શମʹର͢ΔɺݸʑਓͷʮະʯྖҬͷ ͞
ᶃαʔϏε ʮෳࡶʯʹͳ͍ͬͯΔ • αʔϏε͕૿͑ͨ͠ɺେ͖͘ͳͬͨ͠ • ػೳ૿͑ͨ͠ • ΞʔΩςΫνϟมΘͬͨ͠ • ਓ૿͑ͨʂ
ͦͯ͠ɺਓͦΕͧΕʮઐԽʯ͍ͯ͠Δ͠
ᶄϝϯόʔ૿͑ͨ • োͷʮݱʯʹग़ಈ͢Δ͕֬ݮ͍ͬͯΔ • ҎલͷΑ͏ʹ “࣮ࡍʹରԠ͔ͨ͠ΒମͰ֮͑ͨ” ظͰ͖ͳ͘ͳ͍ͬͯΔ
ᶅαʔϏε͕҆ఆ͍ͯ͠Δ • ͍ɺྑ͍ΜͰɻͱͯɻ ͰɺͦΕ͕ނʹɾɾɾɾ • ʮࢹΞϯνύλʔϯʯΛ༠ൃ͞ΕΔ • ʮ͍ͭಉ͡ਓʯͰͲ͏ʹ͔ͳΔ • ʮݫ͠ʹर͓ͬͯ͜ʂʯ͕Ͱ͖ͪΌ͏
今の所、 まぁコレでOKだと思う
コレからも 同じこと⾔えるの・・・?
圧倒的に、 “⾒直し”が⾜りていないのでは。
None
Part Ⅱ 弊社監視⼤反省会 〜fin〜
Part Ⅲ
⼊⾨ 監視を読んだ感想: 我々も「⼊⾨」をしていこう。
コネヒト的 脱⽼害計画 監視⺠主化運動
ママリの「監視」の現状を 本にあった⾔葉を使ってまとめてみる 1. 「敏感」なアラートが多い • 「影響度の判断」「問題の切り分け」が 属⼈的になりがち 2. 「ユーザー観点 /
ビジネスKPI」への メトリクス結びつけが弱い • 「実際にどう影響してる?」の想像できてる? 3. ツールの使い⽅・読み⽅は、勝⼿に覚えてね! • でもさ、なんでも 「巻き込まれる」まで、学習意欲ってわかないよね
ママリの「監視」の現状を 本にあった⾔葉を使ってまとめてみる 4. 「開発者も監視に取り組む」は できている! • OSレイヤ・インフラレイヤのアラートも 「このリリース、施策が原因かな?」って 結びつけて考えてはいるよね 5.
FTSを上げる⽂化 • 少なくとも「チームの学習」に転化する意識はある
どうすれば、 良くなっていきそうか?
ʮࢹΛຽओԽ͢Δʯ • ʮαʔϏεෳࡶʹͳ͍ͬͯ͘ʯͱ͍͏લఏΛ࣋ͭ ‣ ଐਓੑ͚ͩͰཱ͔ͪ͑ͳ͘ͳΔ • ࢹΛʮγϯϓϧʯʹ͢Δ ‣ ϢʔβʔӨڹΛத৺ʹਾ͑ͯɺରԠ͖͢Λ໌֬ʹ͢Δ •
ʮ͔Γ͢͞ʯΛҭΉ ‣ ઐతͳ؍͔Βͷ૬ޓڠྗΛࢧԉ͢ΔͨΊɺ ֤ϝϯόʔ͕ಉ͡ࢹ࠲Ͱঢ়گΛಡΈऔΕΔঢ়گΛ࡞Δ
端的に問題は何なの? 1. アラートが「多い」 2. アラートが「複雑」で、それゆえに対応が「⾼度」 3. 複雑さや⾼度さに対処するための組織的なサポートがない 4. 2・3の相互的な悪循環 5.
4のために「役割」が固定されていく 6. 5のために「敏感なアラート」が増え、棚卸しが⾜りない
ママリの「監視」の未来を 思い描いてみる 1. アラートを「シンプル」にする • 「アラートじゃないもの」は別にしよう! • ソフトウェアの品質の観測は、別個の問題として向き合う 2. ユーザーストーリーに⽴脚したメトリクス
• 「この項⽬ → リアルユーザーの被る影響はこう!!」を 想像できるようにする 3. 「全員監視」のためのトレーニング • ツールやナレッジのインプット • 障害対応後の振り返り・共有の充実化
⽬指せ! 脱⽼害で、安⼼安全な世界! 監視全体のリデザインのための ロードマップを作っていますなう
2019年は “組織での”監視に、 ⼊⾨していきましょう!!