Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

イベントをロギングする

このガイドでは、アプリでイベントをロギングする方法について説明します。

イベントは、ユーザー操作、システム イベント、エラーなど、アプリで起こっていることを把握するのに役立ちます。

アナリティクスでは、一部のイベントが自動的にロギングされるので、それらのイベントを受信するコードを追加する必要はありません。それ以外のデータをアプリで収集する場合は、最大 500 種類までのアナリティクス イベントをロギングできます。アプリで記録できるログの量に制限はありません。イベント名では大文字と小文字が区別されます。そのため、大文字と小文字の使い方だけが異なっている同じ名前の 2 つのイベントは、2 つの別個のイベントとしてロギングされます。

始める前に

プロジェクトをセットアップし、アナリティクスを使ってみるの説明に沿ってアナリティクスにアクセスできることを確認してください。

イベントをロギングする

FirebaseApp インスタンスを構成すると、logEvent() メソッドを使ってイベントをロギングできるようになります。

アナリティクス SDK には、小売、e コマース、旅行、ゲームなどといったさまざまな種類のアプリでよく使われるイベントが推奨イベントとして多数定義されており、すぐに使えます。こうしたイベントの詳細と使い方については、Firebase ヘルプセンターの [イベントとプロパティ][suggested-events-hc] をご覧ください。

実装方法の詳細については、Swift または Objective-C の定数リファレンスをご覧ください。

次に示す例では、推奨イベントである kFIRSelectContent イベントをロギングする方法を説明します。

Swift

Analytics.logEvent(AnalyticsEventSelectContent, parameters: [
  AnalyticsParameterItemID: "id-\(title!)",
  AnalyticsParameterItemName: title!,
  AnalyticsParameterContentType: "cont",
])

Objective-C

[FIRAnalytics logEventWithName:kFIREventSelectContent
                    parameters:@{
                                 kFIRParameterItemID:[NSString stringWithFormat:@"id-%@", self.title],
                                 kFIRParameterItemName:self.title,
                                 kFIRParameterContentType:@"image"
                                 }];

既定のパラメータの他にも、次のパラメータをあらゆるイベントに追加できます。

  • カスタム パラメータ: アナリティクス レポートで報告されるようにカスタム パラメータを登録できます。ユーザーリストの定義の際にフィルタとして使用できます。定義したユーザーリストはあらゆるレポートに適用できます。アプリが BigQuery プロジェクトとリンクされている場合、カスタム パラメータは BigQuery にエクスポートされるデータにも含まれます。

  • kFIRParameterValue パラメータ: kFIRParameterValue は、イベントに関連する主要な指標の蓄積に役立つ汎用パラメータです。そのようなイベントにはたとえば収益、距離、時間、得点などがあります。

推奨されるイベントの種類では収集できないデータをアプリで収集したい場合は、次の例で示すように独自のカスタム イベントをロギングすることができます。

Swift

Analytics.logEvent("share_image", parameters: [
  "name": name as NSObject,
  "full_text": text as NSObject,
])

Objective-C

 [FIRAnalytics logEventWithName:@"share_image"
                    parameters:@{
                                 @"name": name,
                                 @"full_text": text
                                 }];

デフォルトのイベント パラメータを設定する

setDefaultEventParameters を使用して、複数のイベントに共通するパラメータをロギングできます。デフォルトのパラメータは、ロギングされる今後のすべてのイベントに関連付けられます。

Swift

Analytics.setDefaultEventParameters([
  "level_name": "Caverns01",
  "level_difficulty": 4
])

Objective-C

[FIRAnalytics setDefaultEventParameters:
  @{
  @"level_name": "Caverns01",
  @"level_difficulty": @(4)
}];

logEvent() メソッドでパラメータが指定されている場合は、デフォルトではなくその値が使用されます。

デフォルトのパラメータをクリアするには、パラメータを nil に設定して setDefaultEventParameters メソッドを呼び出します。

Xcode デバッグ コンソールでイベントを表示する

詳細ロギングを有効にして SDK によるイベントのロギングをモニタリングし、イベントが正しくロギングされているかどうかを確認できます。対象となるのは、自動でロギングされるイベントと手動でロギングされるイベントの両方です。

詳細ロギングを有効にするには、次のようにします。

  1. Xcode で [Product]、[Scheme]、[Edit scheme] の順に選択します。
  2. 左側のメニューから [Run] を選択します。
  3. [Arguments] タブを選択します。
  4. [Arguments Passed On Launch] セクションで -FIRAnalyticsDebugEnabled を追加します。

以後、アプリを実行すると Xcode のデバッグ コンソールにイベントが表示され、イベントが送信されているかどうかをすぐに確認できます。

ダッシュボードでイベントを表示する

Firebase コンソールのダッシュボードでは、イベントに関する集約された統計情報を表示できます。これらのダッシュボードは、一日を通して定期的に更新されます。即座にテストを行いたい場合は、前のセクションで説明した logcat の出力を使用してください。

このデータにアクセスするには、Firebase コンソールの [イベント] ダッシュボードに移動します。このダッシュボードには、アプリによってロギングされたイベントの種類ごとに自動的に作成されたイベント レポートが表示されます。