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
0
97
イベントログを活用した不具合調査の効率化
https://asken.connpass.com/event/343700/
naginx
March 04, 2025
Tweet
Share
Other Decks in Programming
See All in Programming
なるべく楽してバックエンドに型をつけたい!(楽とは言ってない)
hibiki_cube
0
140
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
200
登壇資料を作る時に意識していること #登壇資料_findy
konifar
4
1.7k
Rust 製のコードエディタ “Zed” を使ってみた
nearme_tech
PRO
0
210
AIフル活用時代だからこそ学んでおきたい働き方の心得
shinoyu
0
140
カスタマーサクセス業務を変革したヘルススコアの実現と学び
_hummer0724
0
740
Package Management Learnings from Homebrew
mikemcquaid
0
230
IFSによる形状設計/デモシーンの魅力 @ 慶應大学SFC
gam0022
1
310
CSC307 Lecture 08
javiergs
PRO
0
670
CSC307 Lecture 06
javiergs
PRO
0
690
コントリビューターによるDenoのすゝめ / Deno Recommendations by a Contributor
petamoriken
0
210
Fluid Templating in TYPO3 14
s2b
0
130
Featured
See All Featured
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
450
Designing for humans not robots
tammielis
254
26k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Building the Perfect Custom Keyboard
takai
2
690
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Everyday Curiosity
cassininazir
0
130
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
Deep Space Network (abreviated)
tonyrice
0
67
GraphQLとの向き合い方2022年版
quramy
50
14k
Become a Pro
speakerdeck
PRO
31
5.8k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
210
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
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!