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
モバイルアプリの行動ログの運用つらさ解消法 / mobile-log-troubleshooting
Search
aoi
September 02, 2023
Technology
3
2.5k
モバイルアプリの行動ログの運用つらさ解消法 / mobile-log-troubleshooting
https://fortee.jp/iosdc-japan-2023/proposal/0ea36011-b566-478a-b067-d9785c957fe5
aoi
September 02, 2023
Tweet
Share
More Decks by aoi
See All by aoi
ロック画面Widgetをサクッと実装してみた話
aomathwift
3
420
OS 固有の新機能をサービスに取り入れ活用していくための Tips
aomathwift
0
54
DocC Documentation Archiveをアプリ開発で活用してみよう / DocC Documentation Archive for iOS Application
aomathwift
0
600
即時通知を導入する際に考えるべきこと
aomathwift
0
4.7k
機能ごとに動作するミニアプリでプレビューサイクルを爆速にした話 After Talk
aomathwift
0
500
機能ごとに動作するミニアプリでプレビューサイクルを爆速にした話
aomathwift
1
9.9k
Other Decks in Technology
See All in Technology
GigaViewerにおけるMackerel APM導入の裏側
7474
0
450
他チームへ越境したら、生データ提供ソリューションのクエリ費用95%削減へ繋がった話 / Cross-Team Impact: 95% Off Raw Data Query Costs
yamamotoyuta
0
220
コードの考古学 〜労務システムから発掘した成長の糧〜
kenta_smarthr
0
910
ゴリラ.vim #36 ~ Vim x SNS ~ スポンサーセッション
yasunori0418
1
310
OTel meets Wasm: プラグイン機構としてのWebAssemblyから見る次世代のObservability
lycorptech_jp
PRO
1
290
Microsoft Season of Agent AI エージェントの使用開始
takas0522
0
130
OSMnx Galleryの紹介
mopinfish
0
150
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
8
65k
“新卒らしさ”を脱ぎ捨てて 〜1年を経て学んだこと〜
rebase_engineering
0
130
Introduction to Bill One Development Engineer
sansan33
PRO
0
240
TypeScript と歩む OpenAPI の discriminator / OpenAPI discriminator with TypeScript
kaminashi
1
150
Data Hubグループ 紹介資料
sansan33
PRO
0
1.7k
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
172
14k
Fontdeck: Realign not Redesign
paulrobertlloyd
84
5.5k
Automating Front-end Workflow
addyosmani
1370
200k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Music & Morning Musume
bryan
47
6.5k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
Art, The Web, and Tiny UX
lynnandtonic
298
21k
Facilitating Awesome Meetings
lara
54
6.4k
The Cult of Friendly URLs
andyhume
78
6.4k
Adopting Sorbet at Scale
ufuk
76
9.4k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
750
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
52
2.8k
Transcript
ϞόΠϧΞϓϦͷߦಈϩάͷӡ༻ͭΒ͞ղফ๏ Aoi Okawa (@aomathwift)
•Aoi Okawa (@aomathwift) •Cookpad Inc. iOS Developer ࣗݾհ
ΞϓϦͷߦಈϩάͷӡ༻ ͭΒ͘ͳ͍Ͱ͔͢ʁ
ߦಈϩάͱ • Ϣʔβʔ͕ߦಈΛىͨ͜͜͠ͱΛهͨ͠ϩά • ಛఆͷը໘Λදࣔͨ͠ • ಛఆͷϘλϯΛλοϓͨ͠ɹ
ϩάͷͭΒ͞ͱԿͳͷ͔
࣮ࡍʹ͋ͬͨϩάӡ༻ਏ͍Τϐιʔυ
Τϐιʔυᶃɿඞཁͳϩά͕ૹΒΕ͍ͯͳ͍
ྫɿͷߪೖܦ࿏Λௐ͍ͨͱ͖ shop.shop_section product_detail ങ͍ͷΧΰʹՃ ϩά ભҠ ʴ
ྫɿͷߪೖܦ࿏Λௐ͍ͨͱ͖ product_detail ങ͍ͷΧΰʹՃ ϩά ભҠ ʴ ͜ͷ෦͕ૹΒΕͳ͍ͱ ͷߪೖܦ࿏Λਖ਼͘͠ ௐΔ͜ͱ͕Ͱ͖ͳ͍
Τϐιʔυᶄɿϩάͷཧ͕Ͱ͖͍ͯͳ͍
ΘΕ͍ͯΔίϯϙʔωϯτ ໊ɾΠϕϯτ໊ΛεϓϨου γʔτʹఆٛͯ͠ཧ͢Δ εϓϨουγʔτͷఆٛΛ ݩʹϩά͕࣮͞ΕΔ
࣮ͱఆٛͷؒʹ ζϨ͕ੜ·ΕΔ ఆ͕ٛεϓϨουγʔτʹ ͬͨ··ʹͳͬͯΔʂ ػೳ͕ফ͔͑ͨΒϩά Ұॹʹআ͠Α͏
ͦͷଞ • αʔυύʔςΟπʔϧͷґଘ • iOS, Android Ͱͷϩά࣮ͷͣΕ • ػೳ໊มߋͷରԠ
Έͳ͞ΜͷΞϓϦͰͯ·Δ ͷ͋Γ·ͤΜͰ͔ͨ͠ʁ
͖ͬͱͲͷΞϓϦͭΒ͍ ͰϩάΛૄ͔ʹͰ͖ͳ͍
ߦಈϩάԿނॏཁͳͷ͔
ߦಈϩάͷ༻్ • Ϣʔβʔͷૢ࡞Λੳ͠ɺ࣍ͷࢪࡦʹ׆͔͢ • ෆ۩߹͕͋ͬͨϢʔβʔͷߦಈ͔ΒݪҼΛௐΔ
αʔϏε։ൃʹ ϩάඞཁෆՄܽ
ආ͚ͯ௨Εͳ͍ϩάӡ༻ͷਏ͞ɺ Ͳ͏ͬͯղফ͢Δ…ʁ
ϩάͷਏ͞Λܰݮ͢ΔͨΊͷΞϓϩʔν
ϩάӡ༻ͷྲྀΕ ݕূઃܭ ࢪࡦഎܠͷཧղ طଘϩάͷൃ۷ ࣮ อक ੳ ഇࢭ ػೳ։ൃ ৽نϩάͷՃ
σʔλूܭ ղऍɾධՁ ར༻ࡁϩά ୀ͢Δ ఆٛ ར༻࣮ଶͷѲ ϝϯςφϯε
࣮ อक ੳ ഇࢭ ఆٛ ɾࢪࡦΦʔφʔͱ࠷ऴతͳϩάͷΞτϓοτΛࡲΓ߹Θ͓ͤͯ͘ ɾϩά༷ݕ౼ςϯϓϨʔτΛ༻ҙ͢Δ ఆٛΛ࿙Εͳ͘ ༻ҙ͍ͨ͠
࣮ อक ੳ ഇࢭ ఆٛ ࠐΜͩϩά͕νΣοΫͰ͖ΔΞϓϦϩά֬ೝπʔϧ IUUQTTQFBLFSEFDLDPNZVKJGJPTEDKBQBONPCJMFBQQMPHHJOH ࣮Λϛε࿙Ε ͳ͘ߦ͍͍ͨ ✅
ৄࡉදࣔ <>ొλοϓ <>ղআλοϓ ɹʜʜ ඞཁͳϩά
࣮ อक ੳ ഇࢭ ఆٛ υΩϡϝϯτϕʔεͷܕ҆શͳߦಈϩάఆٛͷࣗಈੜ IUUQTUFDIMJGFDPPLQBEDPNFOUSZ ࣮Λϛε࿙Ε ͳ͘ߦ͍͍ͨ ύʔαʔ
EBJGVLV ϩάఆٛ 4XJGU ϩάఆٛ .BSLEPXO தؒදݱ Λ4XJGU ίʔυԽ
https://github.com/cookpad/daifuku
࣮ อक ੳ ഇࢭ ఆٛ υΩϡϝϯτϕʔεͷܕ҆શͳߦಈϩάఆٛͷࣗಈੜ IUUQTUFDIMJGFDPPLQBEDPNFOUSZ ࣮Λϛε࿙Ε ͳ͘ߦ͍͍ͨ ύʔαʔ
EBJGVLV ϩάఆٛ 4XJGU ϩάఆٛ .BSLEPXO தؒදݱ Λ4XJGU ίʔυԽ ૹΒΕ͍ͯΔϩά ΛѲ͍ͨ͠
࣮ อक ੳ ഇࢭ ఆٛ ɾະ༻ͷϩάΛݕग़͢Δ-JOUFSΛ༻ҙ͢Δ ɾϩάఆٛͷఆظతͳݟ͠Λଅ͢4MBDL3FNJOEFS ࣮ͱఆٛͷဃ Λͳ͍ͨ͘͠
͜Ε͚ͩͬͯͯ·ͩਏ͍ʂ
νʔϜߏ • iOS ΤϯδχΞ 4ਓ • Android ΤϯδχΞ 3ਓ •
αʔϏεશମͷσʔλΛݟΔਓ͕2ਓ
ϩάͷਏ͞ΛΑΓܰݮ͢ΔͨΊͷऔΓΈ
֤ϑΣʔζʹ·ͩେখ༷ʑͳ՝͕͋Δ ࣮ อक ੳ ഇࢭ ίϯϙʔωϯτ໊ ܾΊΔͷେม ఆٛ ͬͯͳ͍ϩά ͕ͬͯΔ
ૹΔ͖ใΛ ߟ͑Δͷେม υΩϡϝϯτʹ ḷΓண͚ͳ͍ FUDʜ
֤ϑΣʔζʹ·ͩେখ༷ʑͳ՝͕͋Δ ࣮ อक ੳ ഇࢭ ίϯϙʔωϯτ໊ ܾΊΔͷେม ఆٛ ͬͯͳ͍ϩά ͕ͬͯΔ
ૹΔ͖ใΛ ߟ͑Δͷେม υΩϡϝϯτʹ ḷΓண͚ͳ͍ FUDʜ શମతʹ՝ΛݮΒ͍ͨ͠
ϩά͍͖ͬͯҕһձΛൃ
ϩά͍͖ͬͯҕһձͱ • ϩάӡ༻ͷվળʹΛ࣋ͬͯऔΓΉ • ظؒݶఆͷϓϩδΣΫτͱͯ࢝͠ಈͨ͠ • ϝϯόʔ iOS, Android ΤϯδχΞͦΕͧΕ1ਓͣͭ
۩ମతͳεςοϓ 1. ࠓ͋Δ۩ମతͳվળΛચ͍ग़͢ 2. ڍ͕͖ͬͯͨ͜ͱΛྨ͢Δ 3. ྨͨ͠ΧςΰϦ͝ͱʹ༏ઌॱҐΛܾΊλεΫԽ͢Δ 4. ఆྫͰਐḿΛ֬ೝ͢Δ 5.
ظؒΛܾΊͯৼΓฦΔ
۩ମతͳεςοϓ 1. ࠓ͋Δ۩ମతͳվળΛચ͍ग़͢ 2. ڍ͕͖ͬͯͨ͜ͱΛྨ͢Δ 3. ྨͨ͠ΧςΰϦ͝ͱʹ༏ઌॱҐΛܾΊΔ 4. ఆྫͰਐḿΛ֬ೝ͢Δ 5.
ظؒΛܾΊͯৼΓฦΔ
ͻͨ͢Βॻ͖ग़͢ ϩάͷύϥϝʔλ ͷաɾෆ ΞϓϦͷϥΠϑ αΠΫϧϩάෆ υΩϡϝϯτʹ ḷΓண͖ʹ͍͘ ϩάʹૹͬͯΔ ใ͕ෳࡶ ίϯϙʔωϯτ໊
ܾΊΔͷେม աڈͷϩά͕ཧ ͞Εͯͳ͍ FUDʜ
۩ମతͳεςοϓ 1. ࠓ͋Δ۩ମతͳվળΛચ͍ग़͢ 2. ڍ͕͖ͬͯͨ͜ͱΛྨ͢Δ 3. ྨͨ͠ΧςΰϦ͝ͱʹ༏ઌॱҐΛܾΊΔ 4. ఆྫͰਐḿΛ֬ೝ͢Δ 5.
ظؒΛܾΊͯৼΓฦΔ
ϩάͷύϥϝʔλ ͷաɾෆ ΞϓϦͷϥΠϑ αΠΫϧϩάෆ υΩϡϝϯτʹ ḷΓண͖ʹ͍͘ ϩάʹૹͬͯΔ ใ͕ෳࡶ ίϯϙʔωϯτ໊ ܾΊΔͷେม
աڈͷϩά͕ཧ ͞Εͯͳ͍ อक ఆٛ ఆٛ ੳ ࣮ ࣮
࣮ อक ੳ ఆٛ ϩάͷύϥϝʔλ ͷաɾෆ ΞϓϦͷϥΠϑ αΠΫϧϩάෆ ϩάʹૹͬͯΔ ใ͕ෳࡶ
ίϯϙʔωϯτ໊ ܾΊΔͷେม υΩϡϝϯτʹ ḷΓண͖ʹ͍͘ աڈͷϩά͕ཧ ͞Εͯͳ͍
۩ମతͳεςοϓ 1. ࠓ͋Δ۩ମతͳվળΛચ͍ग़͢ 2. ڍ͕͖ͬͯͨ͜ͱΛྨ͢Δ 3. ྨͨ͠ΧςΰϦ͝ͱʹ༏ઌॱҐΛܾΊΔ 4. ఆྫͰਐḿΛ֬ೝ͢Δ 5.
ظؒΛܾΊͯৼΓฦΔ
࣮ อक ੳ ఆٛ ϩάͷύϥϝʔλ ͷաɾෆ ΞϓϦͷϥΠϑ αΠΫϧϩάෆ ϩάʹૹͬͯΔ ใ͕ෳࡶ
ίϯϙʔωϯτ໊ ܾΊΔͷେม υΩϡϝϯτʹ ḷΓண͖ʹ͍͘ աڈͷϩά͕ཧ ͞Εͯͳ͍
࣮ อक ੳ ఆٛ ϩάͷύϥϝʔλ ͷաɾෆ ΞϓϦͷϥΠϑ αΠΫϧϩάෆ ϩάʹૹͬͯΔ ใ͕ෳࡶ
ίϯϙʔωϯτ໊ ܾΊΔͷେม υΩϡϝϯτʹ ḷΓண͖ʹ͍͘ աڈͷϩά͕ཧ ͞Εͯͳ͍
՝ͷॻ͖ग़͠ ՝ͷྨ
۩ମతͳεςοϓ 1. ࠓ͋Δ۩ମతͳվળΛચ͍ग़͢ 2. ڍ͕͖ͬͯͨ͜ͱΛྨ͢Δ 3. ྨͨ͠ΧςΰϦ͝ͱʹ༏ઌॱҐΛܾΊλεΫԽ͢Δ 4. ఆྫͰਐḿΛ֬ೝ͢Δ 5.
ظؒΛܾΊͯৼΓฦΔ
ఆྫ վળ ͬͨ͜ͱ֬ೝ ࣍ʹΔ͜ͱܾఆ ͦΕͧΕ͕ վળʹऔΓΉ J04 "OESPJE
۩ମతͳεςοϓ 1. ࠓ͋Δ۩ମతͳվળΛચ͍ग़͢ 2. ڍ͕͖ͬͯͨ͜ͱΛྨ͢Δ 3. ྨͨ͠ΧςΰϦ͝ͱʹ༏ઌॱҐΛܾΊλεΫԽ͢Δ 4. ఆྫͰਐḿΛ֬ೝ͢Δ 5.
ظؒΛܾΊͯৼΓฦΔ
ظؒΛܾΊͯৼΓฦΔ • ظؒͰͰ͖ͨ͜ͱͷৼΓฦΓ • ͦͷ࣌·ͰͰվળ͞Εͨ͜ͱ ɺϩάΛੳʹ͏ਓ։ൃ ϝϯόʔʹڞ༗
ϩά͍͖ͬͯҕһձͲ͏ͩͬͨͷ͔
݁Ռ • ϩάӡ༻ͷ֤ϑΣʔζʹରͯ͠ɺͦͷ࣌Ͱͷ՝ͷ͍ ͔ͭ͘ΛղܾͰ͖ͨ • શ෦͕ղܾͰ͖ͨΘ͚Ͱͳ͘ɺԿ՝ղফͰ͖ͳ ͔ͬͨϑΣʔζ͋Δ
݁Ռ • ϩάӡ༻ͷ֤ϑΣʔζʹରͯ͠ɺͦͷ࣌Ͱͷ՝ͷ͍ ͔ͭ͘ΛղܾͰ͖ͨ • શ෦͕ղܾͰ͖ͨΘ͚Ͱͳ͘ɺԿ՝ղফͰ͖ͳ ͔ͬͨϑΣʔζ͋Δ → ϩάӡ༻ͷਏ͞Λ෦తʹղফ͢ΔखஈͷҰͭͱͳͬͨ
ϩάͱͲ͏͖߹͍͔ͬͯ͘
ߟ͑ͨ͜ͱ • ϩάج൫ͷվળʹ͓͍ͯɺશͯͷϑΣʔζͷશͯͷ՝ ΛҰؾʹղܾ͠Α͏ͱ͢Δͱۤ͘͠ͳΔ͠ɺ͍͠ • ͦͷ࣌ʑͰඞཁͳվળมԽ͢ΔͷͰɺͦͷ࣌ʹՄೳ ͳվળΛΓଓ͚͍ͯ͘͜ͱ͕େ
ϩάج൫վળͷ͠͞
Րࣄ͕ى͖͍ͯΔͷΛ ͦͷ··ݟա͢͜͝ͱͳ͍
όάमਖ਼ க໋తͳόά ͦͷ··ݟաͤ͝ͳ͍ όά मਖ਼
า͍͍ͯΔ్தͰམ͍ͪͯΔۭ͖؈ Λݟաͣ͝͞શ෦र͏ͷ͍͠
ݟ͚ͭͨϩάج൫ͷ՝Λ શͯղܾ͍ͯ͘͠ͷ͍͠ ϩάվળ ՝ ՝ վળ
Ͳ͏͢Δ͔ʁ
Έͳ͞Μ͕ʮϩάӡ༻ͭΒ͍ʂʯͷΛ ڍ͛ΔୈҰਓऀʹͳΓ·͠ΐ͏
ઃܭ࣌ʹߟྀ Ͱ͖ͯͳ͔ͬͨʜ ͋ͬ͢Έ·ͤΜɺ ࠓૹͬͯͳ͍Ͱ͢ʜ νϡʔτϦΞϧͷ ϑΝωϧಥഁΛ ௐ͍ͨͳ νϡʔτϦΞϧ։࢝ͷ ϩάͬͯ͋Γ·͔͢ʁ ϓϩμΫτΦʔφʔ
ΤϯδχΞ
ઃܭ࣌ʹߟྀ Ͱ͖ͯͳ͔ͬͨʜ ͋ͬ͢Έ·ͤΜɺ ࠓૹͬͯͳ͍Ͱ͢ʜ νϡʔτϦΞϧͷ ϑΝωϧಥഁΛ ௐ͍ͨͳ νϡʔτϦΞϧ։࢝ͷ ϩάͬͯ͋Γ·͔͢ʁ ϓϩμΫτΦʔφʔ
ΤϯδχΞ ͜Μͳͱ͖ͦ͜Λڍ͛Δνϟϯε
ϩά͕ਏ͍ʂͷΛڍ͛Δ • Λڍ͛ͨͱ͜Ζ͔Βɺϩάӡ༻ϑΣʔζͷͲ͔͜Ұͭ Ͱྑ͍ͷͰɺվળΛͬͯΈΔ
ࣗ र͓͏͔ͳʜ
ϩά͕ਏ͍ʂͷΛڍ͛Δ • Λڍ͛ͨͱ͜Ζ͔Βɺϩάӡ༻ϑΣʔζͷͲ͔͜Ұͭ Ͱྑ͍ͷͰɺվળΛͬͯΈΔ • ͦͷϜʔϒΛوํ͕Γ࢝ΊΔͱɺਏ͍࣌ʹΛڍ͛Δ จԽ͕νʔϜʹग़དྷͯ͘Δ ˠܧଓతͳվળʹͭͳ͕Δ
·ͱΊ
·ͱΊ • ϩάαʔϏεͱಉ͡Α͏ʹৗʹมԽ͢Δͷ • มԽ͢ΔϩάΛదʹӡ༻͠Α͏ͱ͢Δͱɺେখ༷ʑ ͳਏ͕͞ৗʹ͖వ͏ • ҰͭҰͭରྍ๏ʹա͗ͳͯ͘ɺਏ͞Λղফ͢Δ ͨΊͷϜʔϒΛΊͳ͍͜ͱ͕େ
ࠓޙͷϩάج൫վળͷల • iOS ͱ Android ͷػೳࠩΛϩά͔Βݕ͢Δ • ΑΓ͍͍͢ϩάίʔυͷࣗಈੜ