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
イベントログを活用した不具合調査の効率化
Search
naginx
March 04, 2025
Programming
110
0
Share
イベントログを活用した不具合調査の効率化
https://asken.connpass.com/event/343700/
naginx
March 04, 2025
Other Decks in Programming
See All in Programming
AIベース静的検査器の偽陽性率を抑える工夫3選
orgachem
PRO
3
340
10年分の技術的負債、完済へ ― Claude Code主導のAI駆動開発でスポーツブルを丸ごとリプレイスした話
takuya_houshima
0
2.6k
[RubyKaigi 2026] Require Hooks
palkan
1
220
Going Multiplatform with Your Android App (Android Makers 2026)
zsmb
2
440
iOS機能開発のAI環境と起きた変化
ryunakayama
0
190
PicoRuby for IoT: Connecting to the Cloud with MQTT
yuuu
2
630
mruby on C#: From VM Implementation to Game Scripting (RubyKaigi 2026)
hadashia
2
580
事業会社でのセキュリティ長期インターンについて
masachikaura
0
260
一度始めたらやめられない開発効率向上術 / Findy あなたのdotfilesを教えて!
k0kubun
4
3k
Kingdom of the Machine
yui_knk
2
730
AIと共に生きる技術選定 2026
sgash708
0
100
The Monolith Strikes Back: Why AI Agents ❤️ Rails Monoliths
serradura
0
340
Featured
See All Featured
sira's awesome portfolio website redesign presentation
elsirapls
0
220
Reality Check: Gamification 10 Years Later
codingconduct
0
2.1k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
530
The World Runs on Bad Software
bkeepers
PRO
72
12k
We Have a Design System, Now What?
morganepeng
55
8.1k
How Software Deployment tools have changed in the past 20 years
geshan
0
33k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
First, design no harm
axbom
PRO
2
1.2k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
540
Docker and Python
trallard
47
3.8k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.5k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.9k
Transcript
© asken.inc イベントログを活用した 不具合調査の効率化 25/02/20 株式会社asken 三浦
© asken.inc 2 自己紹介 経歴 - iOSエンジニア(2018年〜) - asken 入社(2021年末〜)
- 医療事業部で糖尿病患者向けアプリの開発 - コンシューマ事業部であすけんアプリの開発
© asken.inc 3 不具合の再現難しい問題
© asken.inc 4 例えば...... 1. ユーザーから報告された発生手順を試しても再現しない -> 報告された手順が間違っている?環境要因? 2. Crashlytics上のスタックトレースだけでは再現方法が特定できない
-> 原因箇所はわかるが発生条件は? 3. 監視メトリクスやシステムログだけでは原因の仮説が立てられない -> 判断材料が足りない.......
© asken.inc 5 解決策: 施策分析で利用している Firebaseのイベントログを活用す る
© asken.inc 6 メリット ・既存の仕組みを流用するため、追加の開発なしで利用可能 ・運用フローやルールを把握すれば、今すぐにでも使える ・不具合ごとの個別対応が最小限で済む ・分析の優先度が高い画面は既にログが整備されているケースが多い ・個別の調査ログ追加・リリース・浸透待ちの手順を踏まなくてよい
© asken.inc 7 効果 ・再現手順を特定できる ・アプリ仕様に詳しくないメンバーでも調査対応ができるようになる ・詳しいメンバーでも把握しきれていない特殊な操作フローに気づける
© asken.inc 8 注意点 ・プライバシーポリシーに準拠し個人情報は秘匿して利用する。 ・イベントログは施策分析が本来の目的のため、無理な活用は避ける。 ・BigQueryの利用は事前に確認を取り利用料金を把握した上で利用する。
© asken.inc 手法解説 2. イベントログの抽出 9 1. 下準備 3. イベントログの活用
4. 活用の成果
© asken.inc 10 1. 下準備
© asken.inc 11 下準備 ・SDKを導入しイベントログをFirebaseに送信・蓄積しておく ・FirebaseとBigQueryを連携する ・BigQueryで抽出可能な環境を作る 参考: ・https://firebase.google.com/docs/analytics/events?hl=ja ・https://firebase.google.com/docs/projects/bigquery-export?hl=ja
© asken.inc 12 2. イベントログの抽出
© asken.inc 13 BigQueryを使ったログ抽出 イベントログのDBに対し ・テーブル・時間帯・ユーザーのIDを指定 ・時系列順にソート 分析担当者に協力してもらいテンプレ化しておくと効率的
© asken.inc 14 クエリ例
© asken.inc 15 抽出結果(CSV)
© asken.inc 16 3. イベントログの活用
© asken.inc 17 ログ整形 生成AIを使ってログを整形する ・BigQueryからCSVでエクスポートしローカルにDL ・秘匿したい情報の削除・差し替えを行う ・CSVをアップロード ・プロンプトを与えて整形ルールを指示
© asken.inc 18 プロンプト例
© asken.inc 19 整形後の出力例 1. ホームのFABタップ 2. FABの朝食ボタンタップ 3. 食事登録画面表示
4. 食事検索フォームタップ 5. 食事検索画面表示 といった操作手順が把握できる ※ イベント名は実際のものと異なります
© asken.inc 20 実際の画面
© asken.inc 21 再現手順の特定 イベント名と実装を照らし合わせる 既に画面仕様書とイベントの対応表があればそれを参考に進める ホワイトボードツール等使って可視化しながら進める
© asken.inc 22 4. 活用の成果
© asken.inc 23 Before 1. ユーザーから報告された発生手順を試しても再現しない -> 報告された手順が間違っている?環境要因? 2. Crashlytics上のスタックトレースだけでは発生条件が特定できない
-> 原因箇所はわかるが、発生条件は? 3. 監視メトリクスやシステムログだけでは原因の仮説が立てられない -> APIエラーが出てるけど通常利用では再現しない...
© asken.inc 24 After 1. ユーザーから報告された発生手順を試しても再現しない -> 正確な操作手順が特定でき、環境要因かの切り分けが容易になる 2. Crashlytics上のスタックトレースだけでは発生条件が特定できない
-> クラッシュに至るまでの操作手順から発生条件を特定できる 3. 監視メトリクスやシステムログだけでは原因の仮説が立てられない -> 判断材料が増えるので仮説を立てやすくなる
© asken.inc 25 まとめ
© asken.inc 26 まとめ イベントログは施策分析だけでなく運用・保守にも役立つ 分析担当者と協力してイベントログのメンテナンスを定期的に実施しよう 運用・保守コストを最小化し、機能開発に集中できる環境を整えよう
© asken.inc 27 Thank you!