Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
How to get mobile app logs using Firebase Crash...
Search
asmz
May 23, 2019
Technology
950
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
How to get mobile app logs using Firebase Crashlytics
もっとユーザのことを知りたい!モバイルアプリでのエラーログ取得
Talked at タガヤス #11
asmz
May 23, 2019
More Decks by asmz
See All by asmz
Firebase App Testing Agentで始めるAIベースの柔軟なE2Eテスト
asmz
0
1.6k
モバイルアプリ開発へE2Eテストを導入しよう
asmz
0
360
React Native+Expoで始めるWebフロント開発
asmz
0
870
UIデザインを考える全ての人たちに捧げる Apple Human Interface Guidelinesのススメ
asmz
1
3k
Overview of Swift and iOS App development
asmz
0
1.4k
OK Google, Deploy the iOS app
asmz
1
1.1k
Cooperate with Adobe XD, Zeplin and Xcode
asmz
1
3.2k
phpconsen LT
asmz
0
860
SWWDC 39
asmz
1
300
Other Decks in Technology
See All in Technology
ブラウザとサーバーから考えるAI時代のフロントエンド監視
shogo4131
3
940
1つのリクエストを追って理解する - llm-dのP/D分離
akhino
1
160
ソフトウェア ファクトリー - 再現性のあるソフトウェアの工場づくり / Software factory
iktakahiro
6
4.9k
AI導入は済んだ。次は統制を作り替える番だ_AI×開発組織 Summit 2026
techtekt
PRO
0
210
Conditional PED-ANOVA: Hyperparameter Importance in Hierarchical & Dynamic Search Spaces
pfn
PRO
0
130
re:Invent初参加で変わったこと、2回目にやってみたいこと(JAWS-UG彩の国埼玉 #12)
mhrtech
2
220
Gemini Intelligence 入門 ― AppFunctions と Gemini Nano
takuroabe
0
250
UniFi(ユニファイ)AIカメラの現場活用
ludicmind
1
440
QA4AI 2026-Oct 生成AI時代の品質保証
tokuty
1
860
自作バイナリを動かす「入口」8選
puhitaku
2
1.3k
Claude の新機能を、 出た日に触って社内に届けるまで
rfdnxbro
1
170
しろおびから始める!ログ活用の第一歩
shumei_ito
0
950
Featured
See All Featured
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
2
950
How to make the Groovebox
asonas
2
2.5k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
5
820
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
580
Building Adaptive Systems
keathley
44
3.2k
Building an army of robots
kneath
307
47k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
7k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
2
2.9k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
540
Design in an AI World
tapps
1
350
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
930
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.8k
Transcript
もっとユーザのことを知りたい! モバイルアプリでのエラーログ取得 2019/05/23 タガヤス #11 Akira Shimizu / asmz 1
2 誰なのか? • Akira Shimizu / asmz (@_asmz) • https://asmz.beer/
• 株式会社ビデオマーケット 仙台オフィス • iOSエンジニア • 個人開発:IT勉強会検索アプリ「EVENTech」 ◦ https://eventech.asmz.beer/
3 エラーログはどこで取る?
4 Webサービスの場合、ログの多くはサーバサイドで 取得 • ログが取りやすい • 蓄積が可能 • 一元管理・検索がしや すい
• ログの引き上げ手 段が必要 • 不特定多数 • 蓄積量に制限
5 ただし、クライアントサイドに問題がある場合、ログが 取れない • 通信処理自体の問題 • 意図せぬクラッシュ
6 アプリでもエラーログを 取りたい!
7 自前で実装しようと思うと... • 最終的にはデータをサーバへ送信する必要がある ◦ 通信が発生する →大容量、高頻度のデータ送信は難しい ◦ 通信状況は常に変化する →送信失敗時のリトライ検討
→送信できなかった場合のバッファリング検討 考慮すべき点が多く、案外簡単じゃない
8 Firebase Crashlyticsを 用いたエラーログ取得
9 Firebaseとは • Google社が提供してい る、主にモバイル向けの バックエンドサービス群 (BaaS)
10 Firebase Crashlyticsとは • モバイルアプリのクラッシュレポートツール SDK導入すると、アプリクラッシュを検知して 自動でレポートを上げてくれる
11 Firebase Crashlyticsとは • 導入が容易 ◦ 基本的には各プラットフォームのライブラリ導入手順に沿う だけ(iOS: CocoaPods /
Android: Gradle) ◦ ログのバッファリングやリトライ処理などの実装が不要 ◦ 自動集計され、コンソール画面でレポート管理 でも、ログが上がるのはクラッシュした時だけ...?
12 クラッシュ以外のエラーログ取得 • 任意のタイミングでログ送信が可能 // エラーオブジェクト作成 let error = NSError(
domain: "CustomErrorDomain", code: 999, userInfo: ["message": "エラーです"] ) // Crashlyticsへログ送信 Crashlytics.sharedInstance().recordError(error)
13 クラッシュ以外のエラーログ取得 クラッシュ:Fatal(重大) クラッシュ以外:Non-Fatal(非重大) としてログが上がるようになる
14 もっと詳しくユーザの 行動を知りたい!
15 カスタムログメッセージの追加 • エラーに対する補足 情報を付加すること が可能 SDK App Custom Logs
Crash Logs (Auto/Manual)
16 カスタムログメッセージの追加 Analyticsイベント カスタムログ どういう操作・行動を 経てエラーに至った のかを確認すること が可能!
17 カスタムログメッセージの追加 • ソース内任意の箇所でログ記録 • POINT ◦ ログ記録しただけではCrashlyticsには上がらない ▪ Fatal
/ Non-Fatalエラー発生時に一緒に上がる ◦ カスタムログサイズ上限は64KB CLSLogv("%@", getVaList([string]))
18 カスタムログメッセージの追加 • 主な使いどころ ◦ アプリ内画面遷移ログ記録 ◦ App内課金など重要な処理の経緯ログ記録 ◦ カメラやセンサーなど各種デバイスの操作ログ記録
サーバサイドと重複しない観点で
19 まとめ
20 まとめ • クライアントサイドのログが欲しい場面がある • アプリでのログ機構の実装は案外コストが高い • Firebase Crashlyticsを利用すると便利 ログ収集や導入のコストを下げ、
その分、そのログを「どう活かすか」に注力
21 PR
22 公式動画配信サービス MIRAIL(ミレール) • 映像作品コンテンツホルダーが直接動画販売・配信すること ができるプラットフォーム https://mirail.video/
23 Google I/O 報告会 in 仙台 • Google社開催の世界的技術カンファレンス「Google I/O」参加者による報告会 ◦
2019/05/25(土) 10:00 〜 16:00 ◦ 仙都会館(宮城県仙台市青葉区中央2-2-10)
24 Enjoy Logging! 2019/05/23 タガヤス #11 Akira Shimizu /
asmz