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
Practical Monitoring For Server Side Devs
Search
hideki kinjyo
PRO
March 20, 2019
Technology
0
660
Practical Monitoring For Server Side Devs
「サーバーサイドエンジニアこそ喜んで監視をやろうよ、良い事あるよ」という話をしました
hideki kinjyo
PRO
March 20, 2019
Tweet
Share
More Decks by hideki kinjyo
See All by hideki kinjyo
Composerが「依存解決」のためにどんな工夫をしているか #phpcon
o0h
PRO
1
490
Composerの依存解決 #phpstudy
o0h
PRO
0
120
「影響が少ない」を自分の目でみてみる
o0h
PRO
3
1.7k
PHPによる"非"構造化プログラミング入門 -本当に熱いスパゲティコードを求めて- #phperkaigi
o0h
PRO
0
1.7k
もう少しテストを書きたいんじゃ〜 #phpstudy
o0h
PRO
22
5.3k
『テスト書いた方が開発が早いじゃん』を解き明かす #phpcon_nagoya
o0h
PRO
9
4k
色んなオートローダーを覗き見る #phpcon_okinawa
o0h
PRO
5
720
ヒューマンエラーの本を読んだ ~報告会~
o0h
PRO
3
370
みんなでワイワイ「テスト駆動開発」の話をやる会 #techramen24conf
o0h
PRO
4
730
Other Decks in Technology
See All in Technology
2025-10-09_プロジェクトマネージャーAIチャンス
taukami
0
130
Vibe Coding Year in Review. From Karpathy to Real-World Agents by Niels Rolland, CEO Paatch
vcoisne
0
130
AI時代だからこそ考える、僕らが本当につくりたいスクラムチーム / A Scrum Team we really want to create in this AI era
takaking22
8
4.2k
『バイトル』CTOが語る! AIネイティブ世代と切り拓くモノづくり組織
dip_tech
PRO
1
120
[Codex Meetup Japan #1] Codex-Powered Mobile Apps Development
korodroid
2
470
職種別ミートアップで社内から盛り上げる アウトプット文化の醸成と関係強化/ #DevRelKaigi
nishiuma
2
160
自動テストのコストと向き合ってみた
qa
1
220
LLM時代にデータエンジニアの役割はどう変わるか?
ikkimiyazaki
6
1.3k
オープンソースでどこまでできる?フォーマル検証チャレンジ
msyksphinz
0
130
セキュアな認可付きリモートMCPサーバーをAWSマネージドサービスでつくろう! / Let's build an OAuth protected remote MCP server based on AWS managed services
kaminashi
3
310
AWS Control Tower に学ぶ! IAM Identity Center 権限設計の第一歩 / IAM Identity Center with Control Tower
y___u
0
150
[Keynote] What do you need to know about DevEx in 2025
salaboy
0
170
Featured
See All Featured
A Modern Web Designer's Workflow
chriscoyier
697
190k
Unsuck your backbone
ammeep
671
58k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Docker and Python
trallard
46
3.6k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
GitHub's CSS Performance
jonrohan
1032
470k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
114
20k
The Pragmatic Product Professional
lauravandoore
36
6.9k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
45
2.5k
Into the Great Unknown - MozCon
thekraken
40
2.1k
Transcript
ࢹͱฏ Connehito Marché vol.5 ʙPHPࢢʙ Hideki Kinjyo twitter: @o0h_ /
github: o0h
ࣗݾհ • ίωώτגࣜձࣾ • αʔόʔαΠυΤϯδχΞ • ओʹCakePHPͳͲ
ಥવͰ͕͢ʂ
͜͜ʹ1ͭͷάϥϑ͕͋Γ·͢ʂ ԿͰ͠ΐ͏ʁ
ࢲͷମॏͰͨ͠☺ ϛϧϛϧݮ͍ͬͯͬͨΜͰ͢Ͷ͐ʙ
(ΊͬͪΌ૫ͤͨΜ͢Α)
᩵Λམͱ͢ͷͬͯ େมͰ͢ΑͶʂ
ෆ҆ͱͷઓ͍͔ͩΒɻ ͳΜͰେมͳͷʁ
ڪාɺෆ҆ఆ ෆ҆ͱ
͔ΔྖҬΛ֦େ͢Δ = ʮෆ҆ʯʮ҆৺ʯ ཪΛฦͤ
ۚݴ: ʮਪଌ͢ΔͳɺܭଌͤΑɻʯ
ۚݴ: ʮਪଌ͢ΔͳɺܭଌͤΑɻʯ ݮྔಉ͡ʂ
ʮମॏΛߜΔʯͱɾɾ • ߴ͍ཧ • “અ੍”͕ળɺΈ͍ͨͳࢥ • ෆ͕҆͋ΓετϨε͕͋Δઓ͍ɾɾɾ
ʮମॏΛߜΔʯͱɾɾ • ߴ͍ཧ • “અ੍”͕ળɺΈ͍ͨͳࢥ • ෆ͕҆͋ΓετϨε͕͋Δઓ͍ɾɾɾ ਏ͘ͳ͍Ͱ͔͢ɾɾʁ
ࢲ͕ͬͨ͜ͱ ʮઁऔcalʯ ʔʮফඅcalʯ ܭଌ
ͳΜͰɺࢲ͕ݮྔΛ!? • ཧɾΰʔϧ Λ ໌֬ʹ͢Δɻ • ʮઁऔΧϩϦʔ - ӡಈྔʯΛ-1,500kcalʹอͭ •
ޮՌతͳܭଌ͕ʮͻͨ͢Βਏ͍ʯʹର͢ΔثʹͳΔ • ޮՌతͳKPI: KGI݁ͷϝτϦΫεͷઃఆ • ࡉ͔͍ϑΟʔυόοΫ: ΧϩϦʔऩࢧຖΘ͔Δɻ
ͳΜͰɺࢲ͕ݮྔΛ!? • ཧɾΰʔϧ Λ ໌֬ʹ͢Δɻ • ʮઁऔΧϩϦʔ - ӡಈྔʯΛ-1,500kcalʹอͭ •
ޮՌతͳܭଌ͕ʮͻͨ͢Βਏ͍ʯʹର͢ΔثʹͳΔ • ޮՌతͳKPI: KGI݁ͷϝτϦΫεͷઃఆ • ࡉ͔͍ϑΟʔυόοΫ: ΧϩϦʔऩࢧຖΘ͔Δɻ ʮܭଌՄೳʯͳঢ়ଶ͕ɺେ͖ͳ҆৺ײΛͨΒ͢
• ϓϩάϥϛϯάͱಉ͡Ͱ͢Ͷʁ • αʔϏεࢹͱಉ͡Ͱ͢Ͷʁ ͋ΕɺίϨͬͯɾɾʂ
ʮΘ͔Δʯ=ʮ҆৺ײʯ • ʮઁऔΧϩϦʔʯͱʮফඅΧϩϦʔʯΛΕ ɺϥʔϝϯා͘ͳ͍ • ʮαʔϏε͕ಈ͍͍ͯΔʯͱ͍͏֬৴͕ͯ ΕɺσϓϩΠා͘ͳ͍
ϥʔϝϯ৯ͨ͘ͳ͍Ͱ͔͢ʁ
͡Ό͋ʮࢹʯΛ ͍͖ͬͯ·͠ΐ͏Ͷɾɾʂ
(͜͜·Ͱલஔ͖)
ຊ͓͢Δ͜ͱ • ΈΜͳͰࢹΛΖ͏ • αʔόʔαΠυDevͱࢹ
PART1: ʮೖ ࢹʯΛಡΈ·ͨ͠ɻ
ʮೖ ࢹʯ • 1݄ʹग़ͨຊ • Ξϯνύλʔϯ = “͋Δ ͋Δ”ͱɺཱ͔͍ͪํ •
ྔతʹίϯύΫτͰɺ จষಡΈ͍͢˕
ձࣾͷϒϩάͰॻ͖·ͨ͠ʂ http://tech.connehito.com/entry/practical- monitoring
ͱʹ͔͘ɺίί͚͍ͩ͑ͨʂ ᶃ ࢹׂͰͳ͘εΩϧ ᶄ αʔϏε͕ಈ͍͍ͯΔ͔Λࢹ͢Δ ᶅ ࢹҭͯΔͷ
ᶃ ࢹׂͰͳ͘εΩϧ
ࢹ୭ͷͷ͔ʁ • ʮࢹ͢Δਓʯɺ ʮࢹʯͰʮΠϯϑϥΤϯδχΞʯͰͳ͍ • ʮαʔϏεͷશମɾࡉΛΔʯແཧʂ • օ͕ͦΕͧΕʮ͍ͬͯΔ͜ͱʯΛ ίϥϘϨʔγϣϯͰ͖ͨΒྑ͍ΑͶ •
։ൃɾӡ༻ʹܞΘΔશһ͕ࣗ͝ͱԽ͢Δɻ ʮ͕ࣗ࡞ͬͨͷʹର͢Δʯ
ݴ͍͍ͨ͜ͱΘ͔Δ͚Ͳ͞ʙ ʮࣗ͝ͱԽʯͬͯͶʙɻ ͦΕͬͯɺֆۭࣄ͡Όͳ͍ͷʙʁ ͏े͍͠ΜͰ͕͢ʔʂ
ר͖ࠐ͏ɻ
ʮશһࢹʯͷເ • ៉ྷࣄͱͯ͠ʮࣗͷ࡞͍ͬͯΔͷͳͷ ͔ͩΒɺ͔ͬ͠Γݟಧ͚Α͏ʂʯ • ͱ͍͑ɺʮࣄ͕͘͠ͳ͍ਓʯͳΜ͍ͯ ͳ͍͠ɺʮΒͳͯ͘ྑ͍ࣄԡ͚ͨ͠ ͍ʯɻ • Ͳ͏આಘͯ͠ר͖ࠐΉ͔ʁ
ʮΔ͖ཧ༝ʯΛ࡞Δͷͱɺ ʮΕΔΑ͏ʹ͢Δʯͷ͕ॏཁɻ
ࢹʹऔΓΉࢫຯ • ։ൃऀ͕1൪ͳͷɾɾɾ • োൃੜɺࠩ͠ࠐΈɺόάใࠂɺσόοά • ࢹʮϑΟʔυόοΫʯͱͯ͠ଊ͑Δ • ͲΜͳ࣌ʹαʔϏε͕ʮϠόΈʯΛᷰΒ͏ʁͷഽײ Λཆ͑Δ
• େ͖ͳোΛੜΉલʹ௵ͤΔͷଟ͍ɻ
ࢹʹऔΓΉࢫຯ • ։ൃऀ͕1൪ͳͷɾɾɾ • োൃੜɺࠩ͠ࠐΈɺόάใࠂɺσόοά • ࢹʮϑΟʔυόοΫʯͱͯ͠ଊ͑Δ • ͲΜͳ࣌ʹαʔϏε͕ʮϠόΈʯΛᷰΒ͏ʁͷഽײ Λཆ͑Δ
• େ͖ͳোΛੜΉલʹ௵ͤΔͷଟ͍ɻ (Ͳ͏ͤো͕ى͖ͨΒ͓લݺͼى͜͞ΕΔΜͩͧɾɾʂ)
ࢹʮεΩϧʯ • εΩϧ = τϨʔχϯάʹΑͬͯಘΒΕΔٕ๏
εΩϧͱʁεΩϧΞοϓͷํ๏ͱ׆༻๏ɺεΩϧΞο ϓͷඞཁੑͱ | LIMO | ͘Β͠ͱ͓ۚͷܦࡁϝσΟΞ https://limo.media/articles/-/6252
ࢹʮεΩϧʯ • ࠽ೳηϯεܦݧ͋Ε͍͍͕ɺ ͦΕ͕ͳͯ͘ѻ͑ΔΑ͏ʹɻଐਓԽɻ • ۩ମతʹɺʮͷΓ͚ํʯʮͦΕʹ ඞཁͳΞʔΩςΫνϟ૾ͷཧղʯʮπʔϧͷ ͍ํΞΫηεݖݶʯΛ༻ҙ͢Δ
ࢹʮεΩϧʯ • εΩϧ = τϨʔχϯάʹΑͬͯಘΒΕΔٕ๏ • ࠽ೳηϯεܦݧ͋Ε͍͍͕ɺ ͦΕ͕ͳͯ͘ѻ͑ΔΑ͏ʹɻଐਓԽɻ • ͷΓ͚ํɺͦΕʹඞཁͳΞʔΩςΫ
νϟ૾ͷཧղɺπʔϧͷ͍ํΞΫηεݖ ݶ ʮͰ͖ΔʯΑ͏ʹڭҭɾࢧԉΛ͑Δ
ᶄ αʔϏε͕ಈ͍͍ͯΔ͔Λ ࢹ͢Δ
ࢹͱ ʮಈ͍͍ͯΔ͔ʁʯͱ͍͏ • ࢹͱʹ͔͘ʮ؆୯ʯͰʮҙຯͷ͋Δʯ ͷ͕ྑ͍ • ڀۃతͳత ʮαʔϏε͕ಈ͍͍ͯΔ͜ͱʯΛ࢘Δ͜ͱ
ࢹσβΠϯͱΞϯνύλʔϯ • Good: Ϣʔβʔ؍ Ͱͷࢹ • ϦΫΤετΛૹ͔ͬͯΒε τϨεͳ͘ฦͬͯ͘Δ͔ʁ • σʔλͷߋ৽ࣦഊ͕ҟৗʹ
ੜ͍ͯ͡ͳ͍͔ʁ
ࢹσβΠϯͱΞϯνύλʔϯ • Bad: OSϨΠϠͷܗ ࣜతͳࢹ • DBͷCPU༻͕ߴ͍ <= ͰϦΫΤετॲཧ ͍ͬͯͳ͍
ࢹσβΠϯͱΞϯνύλʔϯ • Good: Ϣʔβʔ؍ Ͱͷࢹ • ϦΫΤετΛૹ͔ͬͯΒε τϨεͳ͘ฦͬͯ͘Δ͔ʁ • σʔλͷߋ৽ࣦഊ͕ҟৗʹ
ੜ͍ͯ͡ͳ͍͔ʁ • Bad: OSϨΠϠͷܗ ࣜతͳࢹ • DBͷCPU༻͕ߴ͍ <= ͰϦΫΤετॲཧ ͍ͬͯͳ͍ ϢʔβʔӨڹෳ߹ཁҼͰى͖Δɻ తΛ֬ೝ͠ɺΦΦΧϛগʹҙ͢Δ
ᶅ ࢹҭͯΔͷ
ࢹͷܧଓతվળ • ΞϥʔτʮਓΛୟ͖ى͜͢ʯͷɻ • ఆظతͳ୨Է͠Λߦ͓͏ɻ ʮ໐͚ͬͨͲଈ࣌ରॲ͠ͳ͔ͬͨʯͷɺ ϦετϥީิʹͳΔ
ࢹͷܧଓతվળ • αʔϏεৗʹҭͪɺγεςϜෳࡶʹͳͬ ͍ͯ͘ɻ Ͱ͋Εɺͣͬͱಉ͡ΓํͰ௨༻͢Δͱ͍ ͏ͷݬͰ͋Δ • πʔϧͷೖΕସؚ͑ΊͯɺʮޮՌతͳͷʯ Λࡧ͠ଓ͚ΔྗΛଵΒͳ͍
ࢹͷܧଓతվળ • ΞϥʔτʮਓΛୟ͖ى͜͢ʯͷɻ • ఆظతͳ୨Է͠Λߦ͓͏ɻ ʮ໐͚ͬͨͲଈ࣌ରॲ͠ͳ͔ͬͨʯͷɺϦετϥީิʹͳ Δ • αʔϏεৗʹҭͪɺγεςϜෳࡶʹͳ͍ͬͯ͘ɻ Ͱ͋Εɺͣͬͱಉ͡ΓํͰ௨༻͢Δͱ͍͏ͷݬͰ͋Δ
• πʔϧͷೖΕସؚ͑ΊͯɺʮޮՌతͳͷʯΛࡧ͠ଓ͚Δ ྗΛଵΒͳ͍ ࡞ͬͯऴΘΓʹ͠ͳ͍ʂ ࣮ࡍͷ݁ՌɺϝϯόʔͷϑΟʔυόοΫͰຏ͍͍ͯ͘
PART1: ʮೖ ࢹʯΛಡΈ·ͨ͠ɻ ʙऴʙ
PART2: ࢹʹ͓͚Δ αʔόʔαΠυͷظ
ࢹʮશһʯͰΔͷ
ઐੑΛ࣋ͪدͬͯɺ 1ͭͷෳࡶੑΛཧղ͢Δͷ͕ࢹ • ΠϯϑϥɺαʔόʔɺΫϥΠΞϯτɺɺɺͰ ʮҙ͍ࣝͯ͠Δ෦ʯ͕ҧ͏ • ͓ޓ͍͕ʮ͍ͬͯΔ͜ͱʯʹ͍ͭͯ ࣮ʹใڞ༗Ͱ͖Δͷ͕ཧ
WebαʔϏεͬͯෳࡶɾɾ
ʮ͓ʙ͍ʂϖʔδද͕ࣔॏ͍Αʙʂʯ
ʮ͓ʙ͍ʂϖʔδද͕ࣔॏ͍Αʙʂʯ ʮϢʔβʔࢹʯͰࢹΛ࢝Ίɺ ʮෳ߹ཁҼʯΛղ͖΄͙͢ඞཁ͕͋Δ
ʮ͍ͬͯΔ͜ͱʯ͕ҟͳΔ • ΠϯϑϥʮDB͕ෆௐʁʯʮappΠϯελϯε མͪͯΔʁʯ • αʔόʔʮ͖ͬ͞ग़ͨ͠API͕ѱ͍ৼΔ͍͠ ͯΔʁʯ • ϑϩϯτʮϦΫΤετͷϒϩοΫ͕ൃੜͯ͠ Δʁʯ
োͷରԠʹɺ ਝͳՕॴͷಛఆ͕ඞਢɻ େࣄͳ͜ͱ
αʔόʔαΠυɺ खલͱཪଆͷʮதؒʯͱͯ͠ͷ͕ࣝ͋Δ
զʑ͔ͩΒ͔Δ͜ͱ • ΫϥΠΞϯτͷड৴༰͕มʁ • ͖ͬ͞ग़ͨ͠ϩδοΫɺ͜ΜͳʹΩϟογϡ ͷϛεώοτ͠ͳ͍ͣͩͧʁ • ϝϞϦΛͨΒ৯ͬͯΔʁࠓ·Ͱʹͳ͔ͬͨ ߘ͕࡞͞Ε͔ͨʁ
զʑ͔ͩΒ͔Δ͜ͱ • ΫϥΠΞϯτͷड৴༰͕มʁ • ͖ͬ͞ग़ͨ͠ϩδοΫɺ͜ΜͳʹΩϟογϡ ͷϛεώοτ͠ͳ͍ͣͩͧʁ • ϝϞϦΛͨΒ৯ͬͯΔʁࠓ·Ͱʹͳ͔ͬͨ ߘ͕࡞͞Ε͔ͨʁ ʮϏδωεϩδοΫ×λονϙΠϯτʯͱ͍͏ࢹ
αʔόʔαΠυ͕ ʮࢹʯͷ࠷લઢʹཱͭͱɺ ΊͪΌͪ͘Όݱঢ়ཧ͕ૣ͘ͳΔɾɾʂ (ܦݧऀஊ) ͭ·Γʂ
PART2: αʔόʔαΠυͷظ ʙऴʙ
·ͱΊʂ
ຊ͓ͨ͜͠ͱ ᶃ ʮೖ ࢹʯྑॻɺະಡͷํͥͻʂ ᶄ ࢹා͘ͳ͍ɺ Ή͠Ζʮ҆৺Ͱ͖Δʯհॿ ᶅ ͱΓΘ͚ɺαʔόʔαΠυͷਓ ࢹʹऔΓΉͱ໘ന͍ͱࢥ͍·͢Αɾɾɾʂ
#ajitofm ep.42 https://ajito.fm/42/ TDDຊͱೖࢹ༁ऀΛܴ͑ͯͷձஊɻ ໘ന͘ͳ͍Θ͚͕ͳ͍ɾɾʂ͓͢͢Ίɻ ͪͳΈʹ
͓͖߹͍͍͖ͨͩ ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ