umi Camera – フィルムカメラ という無料のiPhoneカメラアプリを開発しています!https://umi.grtlab.com/
Firebaseでユーザー識別子を設定する
Firebase Analyticsで setUserIdをしてユーザー識別できるようにしているのですが
何に使うかと?
- 課金ログを自分のサーバーでもユーザー識別子を利用しています。
(課金ユーザーのイベントを確認することができます、analytisで
設定の仕方は
import FirebaseAnalytics Analytics.setUserID(userHash)
としています、このuserHashはanalytics用にhash化しています。元のユーザーIDとは違うものです
ユーザーごとのイベントを確認する! Google Analytics
どうしても「特定のuserHashを持つユーザーが、どの画面を見て、どのボタンを押したか」を時系列で見たい場合は、以下の2つの方法があります。
A. 「探索(Exploration)」機能の「ユーザー エクスプローラ」
Google Analytics 4(GA4)の管理画面から以下の手順で確認できます。
- GA4の左メニューから [探索] を選択。
- [ユーザー エクスプローラ] という手法を選択。
- 表に表示されるID(App Instance ID)をクリックすると、そのユーザーのイベント履歴が時系列で見られます。
- 注意: ここに表示されるのは基本的にデバイス単位のIDです。
setUserIDを設定していれば、そのIDを基準にデータを統合して表示してくれます
- 注意: ここに表示されるのは基本的にデバイス単位のIDです。
sampleuserhashがIDが入っている部分です、このユーザーの履歴が14ヶ月分確認できます!すごい!

B. DebugView」でリアルタイムに追跡
開発中であれば、この方法が最も確実です。
* 本番にもデータが入ってしまうので注意が必要。
- Xcodeでデバッグモードを有効にする。FIRDebugEnabledを設定してビルド
- Firebaseコンソールの [DebugView] を開く。
- 画面上の「デバッグデバイス」のリストに、あなたが設定した
userHashが表示されます。 - これを選択すると、今まさにそのユーザー(自分)が何をしているかがリアルタイムに流れてきます。
イベント保存期間を14ヶ月に設定

データ保持期間を14ヶ月にする手順
- Firebase コンソールにログインします。
- 左下の歯車アイコン(プロジェクトの設定)の横にある [Analytics] > [ダッシュボード] を開きます。
- 画面右上にある 「Google アナリティクスで表示」 というリンクをクリックして、GA4の管理画面に移動します。
- GA4画面の左下にある [管理](歯車アイコン)をクリックします。
- 中央の列にある [データの収集と修正] > [データの保持] を選択します。
- 「イベントデータの保持」という項目がデフォルトで「2 か月」になっているので、プルダウンから 「14 か月」 に変更します。
- [保存] ボタンを押します。
これで、特定のユーザーの行動ログ(探索レポートで見るデータ)が14ヶ月間保存されるようになります。
エラーログを送信する
Analytics.logEventで内容エラーで送ります。
ついでに code: 111のようにparameterに入れたので、 struct AppErrorCodesみたいなのでエラーをすべてリスト化しました。
func logEventError(event: EventError, parameters: [ParametersError: Any]? = nil) {
var analyticsParameters: [String: Any]? = nil
if let parameters = parameters {
analyticsParameters = [:]
for (key, value) in parameters {
analyticsParameters?[key.rawValue] = value
}
}
Analytics.logEvent(event.rawValue, parameters: analyticsParameters)
}Analyticsにカスタム定数を設定する!
「カスタムディメンション」の登録手順
Firebaseで送ったパラメータをレポートに表示させるために、以下の操作を行ってください。

- Firebase コンソール > [Analytics] > [カスタム定義] (Custom Definitions) を開きます。
- または、GA4の管理画面 > [データの表示] > [カスタム定義] を開きます。
- 片方設定したら反映されるそうです
- [カスタムディメンションを作成] ボタンをクリックします。
- 以下の内容を、送っているパラメータの数だけ登録します。
例:error_message を登録する場合
- ディメンション名:
エラーメッセージ(自分がわかりやすい名前でOK) - 範囲:
イベント - 説明:
エラーの詳細内容(任意) - イベントパラメータ:
error_message(ここが最重要!Swiftコードのキー名と完全に一致させてください)
これを screen_name、error_type、error_code についても同様に行います。
注意点?無料版の制限
カスタム定義 50
イベント 500
の制限があるので、カスタム定義は意味が同じなら例えば error_code, success_code, warning_code,がある場合は codeは共通の定義として、イベントを error_log, success_log,warning_logとしてフィルターするのが良さそうと


コメント