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
SNS mixi の障害察知手法の進化
Search
Kuniwak
PRO
July 08, 2016
Programming
27
6.2k
SNS mixi の障害察知手法の進化
WebQA Meeting Vol.2
https://peraichi.com/landing_pages/view/webqa-2
Kuniwak
PRO
July 08, 2016
Tweet
Share
More Decks by Kuniwak
See All by Kuniwak
DeNA での思い出 / Memories at DeNA
orgachem
PRO
6
2.7k
それ CLI フレームワークがなくてもできるよ / Building CLI Tools Without Frameworks
orgachem
PRO
18
4.2k
状態遷移図を書こう / Sequence Chart vs State Diagram
orgachem
PRO
4
510
テストケースの名前はどうつけるべきか?
orgachem
PRO
2
640
欠陥を早期に発見するための Software Engineer in Test とその重要性 / What is Software Engineer in Test and How they works
orgachem
PRO
21
4.7k
住宅を WebXR で評価しよう / Evaluating My Home by WebXR
orgachem
PRO
0
190
HOME VR
orgachem
PRO
1
820
uGUI の自動操作の考え方と操作方法
orgachem
PRO
1
1.5k
Swift Macro に備えて構文木を 10min で学ぶ / Learn Syntax Tree for Swift Macro in 10 minutes
orgachem
PRO
1
1.5k
Other Decks in Programming
See All in Programming
Kotlin 2.2が切り拓く: コンテキストパラメータで書く関数型DSLと新しい依存管理のかたち
knih
0
400
「正規表現をつくる」をつくる / make "make regex"
makenowjust
1
120
Vueのバリデーション、結局どれを選べばいい? ― 自作バリデーションの限界と、脱却までの道のり ― / Which Vue Validation Library Should We Really Use? The Limits of Self-Made Validation and How I Finally Moved On
neginasu
3
1.8k
Tangible Code
chobishiba
3
520
なんでRustの環境構築してないのにRust製のツールが動くの? / Why Do Rust-Based Tools Run Without a Rust Environment?
ssssota
15
48k
KoogではじめるAIエージェント開発
hiroaki404
1
420
ネストしたdata classの面倒な更新にさようなら!Lensを作って理解するArrowのOpticsの世界
shiita0903
1
290
AI POSにおけるLLM Observability基盤の導入 ― サイバーエージェントDXインターン成果報告
hekuchan
0
470
自動テストのアーキテクチャとその理由ー大規模ゲーム開発の場合ー
segadevtech
2
940
AI駆動開発カンファレンスAutumn2025 _AI駆動開発にはAI駆動品質保証
autifyhq
0
150
SUZURIの規約違反チェックにおけるクリエイタフィードバックの試⾏錯誤/Trial and Error in Creator Feedback for SUZURI's Terms of Service Violation Checks
ae14watanabe
1
140
AIのバカさ加減に怒る前にやっておくこと
blueeventhorizon
0
160
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
How to Think Like a Performance Engineer
csswizardry
28
2.3k
Writing Fast Ruby
sferik
630
62k
A designer walks into a library…
pauljervisheath
210
24k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Bash Introduction
62gerente
615
210k
Transcript
4/4NJYJʹ͓͚Δ 8FCϑϩϯτΤϯυ োख๏ͷਐԽ
8FCϑϩϯτΤϯυ ͷোͱ
8FCΞϓϦέʔγϣϯͷোͷ͏ͪɺ ϑϩϯτΤϯυʹݪҼ͕͋Δͷ
8FCϑϩϯτΤϯυͷ ো༧ͷ͠͞
ఏڙଆ͔Β੍ޚͰ͖ͳ͍෦͕ଟ͍ w ࣮ߦڥʢϒϥβͷछྨɾόʔδϣϯʣ w ո͍͠ϒϥβ֦ுػೳ w ࠂ w अѱͳίʔυ͕ଟʑ͋Δ
੍ޚͰ͖ͳ͍ཁҼ͕ଟ͍ͱɺ ༧ͷίετύϑΥʔϚϯε͕ѱ͘ͳΔ Ϧιʔε༗ݶͳͷͰɺ͋Δఔ ͢Γൈ͚ͯ͠·͏͜ͱ͛ͳ͍ োͷૣظ͕ॏཁ
͜͜·Ͱͷ·ͱΊ োͷૣظൃݟ͕ॏཁ
8FCϑϩϯτΤϯυͷ োΛ͢Δख๏
Ϣʔβʔ͔Βͷ ͓͍߹Θͤ
ͬͱجຊతͳ ख๏ʹͯ͠࠷ѱ
&&ςετ
ఆظతʹ࣮ߦ͢Δͱɺ ࠂͳͲʹΑΔ োݕͰ͖Δ
ͨͩ͠ɺ࣮ίετ͕ʜ
+4ͷΤϥʔϩάࢹ
+BWB4DSJQUͰൃੜͨ͠ ΤϥʔΛऩूͯ͠ࢹ
&SSPS&WFOUΛ͏
+4ͰΤϥʔ͕ൃੜͨ͠ͱ͖ʹॲཧΛ ࣮ߦͰ͖Δ"1*͕ϒϥβʹඋΘ͍ͬͯΔ ࣍ͷใΛऔಘՄೳɿ w Τϥʔϝοηʔδ w ΤϥʔΛൃੜͤͨ͞εΫϦϓτͷ63- w Τϥʔ͕ൃੜͨ͠ߦ൪߸ w
Τϥʔ͕ൃੜͨ͠ྻ൪߸ʢ࠷ۙͷϒϥβͷΈʣ w ΤϥʔΦϒδΣΫτʢ࠷ۙͷϒϥβͷΈʣ ελοΫτϨʔε͖ͭ
ղੳαʔϏε͚ͬ͜͏͋Δ IUUQTHJUIVCDPNDIFFBVO KBWBTDSJQUFSSPSMPHHJOH
͘͢͝Α͍Ͱ͢
ࠓɺ͜ͷ+4Τϥʔϩά ࢹʹ͍ͭͯ͠·͢
4/4NJYJͷঢ়گ
w୯ମɾ݁߹ςετɿ͘͝Θ͔ͣ w&&ςετɿͳ͠ wαϙʔτڥɿ ݹ͔͘Β͓ΒΕΔϢʔβʔ༷ ͨ͘͞Μ͓ΒΕ·ͯ͠ɺ͑͐ʜ
4/4NJYJͷঢ়گ ݫ͍͠
োϑϩʔͷมભ
ʮ%FQMPZBOE1SBZʯ Lv.0
w εϞʔΫςετ w ϨϏϡʔ w ςελʔʹΑΔ୳ࡧతςετʢඞཁ͕͋Εʣ w σϓϩΠ w ͷϢʔβʔػೳΛެ։ʢ͍͖ͳΓ͋Δʣ
w ͓͍߹Θ͕͖ͤͨΒରԠ ˞࣮ΑΓલলུ
w ଟ͘ͷܽؕ୳ࡧతςετͰൃݟ w ͨͩ͠ɺӨڹൣғͷ͍ͷཏతͳݕূ͕ ݱ࣮తͰͳ͍ͷͰɺॏཁͳγφϦΦͷΈνΣοΫ w Ұ෦ͷϢʔβʔʹ͚ͩػೳΛެ։͢ΔΈ͕ ͋ΔͷͰɺ͜ΕΛ͓͍ͬͯ߹ΘͤϕʔεͰରԠ w ܦݧతʹɺҎ্ͷϢʔβʔʹؒ
࿐͠ͳ͍ͱ͓͍߹Θͤ·Ͱൃల͠ͳ͍
ൣғʹӨڹ͢ΔϥΠϒϥϦͷ ΞοϓάϨʔυࣄ݅
w ൣғʹӨڹ͢ΔϥΠϒϥϦͷΞοϓ άϨʔυΛܭը w ೖ೦ʹ୳ࡧతςετΛͯ͠νϟϨϯδ w ͓͍߹ΘͤଟͰࣦഊʢ܁Γฦ͠ʣ
͜ΕΛ܁Γฦ͢͏ͪʹ ։ൃऀͷʬ৺ʭ յΕͨͱ͍͏ʜ
ͳͥ͜Μͳ͜ͱʹʜ
w ݕূ͠ͳ͍ͱ͍͚ͳ͍ϖʔδ͕ଟ͗͢Δ w 17্Ґͷϖʔδ͚ͩͰ ͷϖʔδ w Ϣʔβʔͷঢ়ଶଟ͍ w &&ςετͳ͍ͷͰɺਓྗʹཔΔ΄͔ͳ͍
͜͜·Ͱͷ·ͱΊ ఔͷϢʔβʔʹΤϥʔΛ ౿ΜͰΒΘͳ͍ͱͰ͖ͳ͍
ʮ+4ͷΤϥʔͷ૯ྔͷ૿ݮΛࢹʯ Lv.1
w εϞʔΫςετ w ϨϏϡʔ w ςελʔʹΑΔ୳ࡧతςετʢඞཁ͕͋Εʣ w σϓϩΠ w ͷϢʔβʔػೳΛެ։
w +4Τϥʔͷ૯ྔΛࢹ w +4Τϥʔͷ૯ྔ͕૿͑ͨΒରԠ OFX OFX
Τϥʔ૿ݟಀ͠ࣄ݅
ൣғʹӨڹ͢ΔϥΠϒϥϦͷ ΞοϓάϨʔυࣄ݅ͷଓ͖Ͱ͢
ճͷνϟϨϯδͷͱ͖ͷ Τϥʔͷ૯ྔͷάϥϑ
ؒͷϢʔβʔͰো͕ൃੜ͍ͯͨ͠ ʢ࠶ಡΈࠐΈ͢Δͱͷ֬Ͱͳ͓Δʣ
ো͕ൃੜ࢝͠Ίͨ࣌ࠁ
Θ͔ΒΜ
ͳͥ͜Μͳ͜ͱʹʜ
w લ͔Βग़͍ͯΔΤϥʔ͕ଟ͗͢Δ w ΤϥʔࢹΛޙ͔Β࢝ΊΔͱ͜͏ͳΓ͕ͪ w ͷϢʔβʔ͚ͩͰׂ߹͕େ͖͘ͳ͍
͜͜·Ͱͷ·ͱΊ Τϥʔͷ૯ྔ͚ͩͰ ো͍͠
ʮ+4ͷΤϥʔ͝ͱͷ૿ݮΛࢹʯ Lv.2
w εϞʔΫςετ w ϨϏϡʔ w ςελʔʹΑΔ୳ࡧతςετʢඞཁ͕͋Εʣ w σϓϩΠ w ͷϢʔβʔػೳΛެ։
w +4Τϥʔͷϝοηʔδ͝ͱͷྔΛࢹ w +4Τϥʔ͕૿͑ͨΒରԠ OFX
None
None
w ͓͍߹Θͤʹൃల͢Δ͜ͱͳ͘ w ͱ͍͏͍ػೳ։์ͳͷͰ Ϣʔβʔͷമ࿐͕গͳ͍ w ࣌ؒڧͷ࣌ؒͰՄೳ
͜͜·Ͱͷ·ͱΊ Τϥʔͷϝοηʔδ͝ͱͷ ૿ݮͷࢹ༗ޮ
ʮࡉ͔ͳվળʯ Lv.2.1
ಛͷͳ͍Τϥʔ͕ଟ͍
w Τϥʔϩάͷதʹɺ૿Ճͨ͠Α͏ʹ ۮવݟ͑Δͷ͋Δ w ΤϥʔͷݪҼΛ୳͠ʹߦ͘ͷʹ ख͕͔Γ͕ͳ͍ͱͭΒ͍
Τϥʔૹ৴࣌ʹՃͰใΛऔಘɿ •document.readyState w “loading”࣌ͷ࠷ޙͷ<script>ͷ63- w ແ໊Խ͞ΕͨϢʔβʔࣝผࢠ w 3FGFSFS w 6TFS"HFOUจࣈྻ
w ʜ
Ұ෦ͷϢʔβʔ͔Β େྔʹΤϥʔ͕͘Δ
w setTimeoutsetIntervalͳͲͰ ఆظతʹൃੜ͢ΔͱͱΜͰͳ͍ྔ͕͘Δ w Ұఆྔૹ৴ͨ͠ΒࢭΊΔΑ͏ʹ͢Δʢ༧ఆʣ w ࢭΊͨͱ͖ࢭΊͨ͜ͱ͕Θ͔ΔΑ͏ʹ ใΛૹ৴͢Δͷ͕େࣄ
͜͜·Ͱͷ·ͱΊ γεςϜ͕͢Δ͜ͱͳ͍ ܧଓతʹվળ͍ͯ͘͠
ʮूܭΠϯϑϥͷ"84Խ ,JCBOBͷ׆༻ʯ Lv.3
ʢ༧ఆʣ
·ͱΊ +4ͷΤϥʔΛϝοηʔδ͝ͱͷ ྔͰࢹ͢ΔͱোΛݕͰ͖Δ ͜Ε͔Βվળ͍ͯ͘͠
"CPVUNF
ϑϩϯτΤϯυҋᜄ͍ ,VOJXBL