Firebase Summit で発表されたすべての情報をご覧ください。Firebase を使用してアプリ開発を加速し、自信を持ってアプリを実行する方法を紹介しています。詳細

Appleプラットフォームのパフォーマンスモニタリングを始めましょう

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

あなたが始める前に

まだ行っていない場合は、 Firebase を Apple プロジェクトに追加します

ステップ 1 : Performance Monitoring をアプリに追加する

Performance Monitoring SDK を追加すると、Firebase はアプリの画面レンダリングに関するデータ、アプリのライフサイクルに関連するデータ(アプリの開始時間など)、 HTTP/S ネットワーク リクエストに関するデータの収集を自動的に開始します。

Swift Package Manager を使用して、Firebase の依存関係をインストールおよび管理します。

  1. Xcode で、アプリ プロジェクトを開いた状態で、 File > Add Packagesに移動します。
  2. プロンプトが表示されたら、Firebase Apple プラットフォーム SDK リポジトリを追加します。
  3.   https://github.com/firebase/firebase-ios-sdk
  4. Performance Monitoring ライブラリを選択します。
  5. 完了すると、Xcode はバックグラウンドで依存関係の解決とダウンロードを自動的に開始します。

次に、Firebase モジュールを構成します。

  1. UIApplicationDelegateFirebaseCoreモジュールをインポートし、アプリ デリゲートが使用する他のすべてのFirebase モジュールをインポートします。たとえば、Cloud Firestore と認証を使用するには:

    迅速

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Objective-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. アプリ デリゲートのapplication(_:didFinishLaunchingWithOptions:)メソッドでFirebaseApp共有インスタンスを構成します。

    迅速

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Objective-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  1. アプリを再コンパイルします。

ステップ 2 : 初期データ表示用のパフォーマンス イベントを生成する

SDK をアプリに正常に追加すると、Firebase はイベントの処理を開始します。まだローカルで開発している場合は、アプリを操作して、初期データの収集と処理のためのイベントを生成します。

  1. シミュレーターまたはテスト デバイスを使用してアプリの開発を続けます。

  2. アプリのバックグラウンドとフォアグラウンドを数回切り替えたり、画面間を移動してアプリを操作したり、ネットワーク リクエストをトリガーしたりして、イベントを生成します。

  3. Firebase コンソールのパフォーマンスダッシュボードに移動します。数分以内に最初のデータが表示されます。

    初期データが表示されない場合は、トラブルシューティングのヒントを確認してください。

ステップ 3 : (オプション)パフォーマンス イベントのログ メッセージを表示する

  1. 次のように、デバッグ ロギングを有効にします。

    1. Xcode (最小 v13.3.1) で、[ Product ] > [ Scheme ] > [ Edit scheme ] を選択します。
    2. 左側のメニューから [実行] を選択し、[引数] タブを選択します。
    3. [起動時に渡される引数] セクションで、 -FIRDebugEnabledを追加します。
  2. ログ メッセージでエラー メッセージを確認します。

  3. Performance Monitoring は、ログ メッセージをフィルタリングできるように、ログ メッセージにFirebase/Performanceのタグを付けます。

  4. Performance Monitoring がパフォーマンス イベントをログに記録していることを示す次の種類のログを確認します。

    • Logging trace metric: TRACE_NAME , FIREBASE_PERFORMANCE_CONSOLE_URL
    • Logging network request trace: URL
  5. URL をクリックして、Firebase コンソールでデータを表示します。ダッシュボードでデータが更新されるまで、少し時間がかかる場合があります。

アプリがパフォーマンス イベントをログに記録していない場合は、トラブルシューティングのヒントを確認してください。

ステップ 4 : (オプション)特定のコードのカスタム モニタリングを追加する

アプリ内の特定のコードに関連付けられたパフォーマンス データを監視するために、カスタム コード トレースを計測できます。

カスタム コード トレースを使用すると、一連の画像の読み込みやデータベースへのクエリなど、アプリが特定のタスクまたは一連のタスクを完了するのにかかる時間を測定できます。カスタム コード トレースのデフォルトのメトリックはその期間ですが、キャッシュ ヒットやメモリ警告などのカスタム メトリックを追加することもできます。

コードでは、Performance Monitoring SDK によって提供される API を使用して、カスタム コード トレースの開始と終了を定義します (必要なカスタム メトリックを追加します)。

これらの機能とそれらをアプリに追加する方法について詳しくは、特定のコードの監視を追加するをご覧ください。

ステップ 5 : アプリをデプロイして結果を確認する

Xcode シミュレーターと 1 つ以上のテスト デバイスを使用して Performance Monitoring を検証したら、アプリの更新バージョンをユーザーにデプロイできます。

Firebase コンソールのパフォーマンスダッシュボードでパフォーマンス データをモニタリングできます。

既知の問題点

  • Performance Monitoring には、GTMSQLite との既知の互換性の問題があります。 GTMSQLite を使用するアプリでは Performance Monitoring を使用しないことをお勧めします。
  • FirebaseApp.configure()を呼び出した後のメソッドの入れ替えは、Performance Monitoring SDK に干渉する可能性があります。
  • iOS 8.0 ~ 8.2 シミュレータの既知の問題により、パフォーマンス モニタリングがパフォーマンス イベントをキャプチャできません。これらの問題は、iOS 8.3 シミュレーター以降のバージョンで修正されています。
  • NSURLSession のbackgroundSessionConfigurationを使用して確立された接続は、予想よりも長い接続時間を示します。これらの接続はプロセス外で実行され、タイミングはプロセス内のコールバック イベントを反映します。

次のステップ