ウェブアプリをモニタリングする

アプリを公開した後は、次の方法でモニタリングできます。

App Hosting オブザーバビリティでサイトのパフォーマンスをモニタリングする

App Hosting [アプリの概要] パネルには、アプリに関する主要な指標と情報が表示されます。App Hosting に組み込まれたオブザーバビリティ ツールを使用して、ウェブアプリのパフォーマンスをモニタリングできます。サイトがリリースされたら、[公開] をクリックして概要にアクセスできます。このパネルでは、次の操作を行うことができます。

  • [ロールアウトを作成] をクリックして、アプリの新しいバージョンをリリースします。
  • アプリへのリンクを共有するか、[アプリにアクセス] でアプリを直接開きます。
  • リクエストの合計数や最新のロールアウトのステータスなど、過去 7 日間のアプリのパフォーマンスの概要を確認します。[詳細を表示] をクリックすると、Firebase コンソールでさらに詳細な情報を確認できます。
  • 過去 24 時間にアプリが受信したリクエスト数を HTTP ステータス コード別にグラフで表示します。

アプリの概要パネルを閉じた場合は、[公開] をクリックしていつでも再び開くことができます。

App Hosting ロールアウトの管理とモニタリングについて詳しくは、ロールアウトとリリースを管理するをご覧ください。

Genkit デプロイされた特徴のモニタリング

AI フロー コードへのテレメトリーを有効にすると、Genkit 特徴ステップ、入力、出力をモニタリングできます。Genkit のテレメトリー機能を使用すると、AI フローのパフォーマンスと使用状況をモニタリングできます。このデータは、改善の余地がある部分の特定、問題のトラブルシューティング、プロンプトとフローの最適化によるパフォーマンスと費用対効果の向上、フローの使用状況の経時的な追跡に役立ちます。

Genkit でモニタリングを設定するには、Genkit AI フローにテレメトリーを追加し、Firebase コンソールで結果を表示します。

ステップ 1: Firebase StudioGenkit フローコードにテレメトリーを追加する

コードでモニタリングを設定するには:

  1. Code ビューにまだ表示されていない場合は、コード切り替えアイコン [コードに切り替え] をクリックして開きます。

  2. package.json を確認して、インストールされている Genkit のバージョンを確認します。

  3. ターミナル(Ctrl-Shift-C、または macOS では Cmd-Shift-C)を開きます。

  4. ターミナル内でクリックし、package.json ファイルと一致するバージョンを使用して Firebase プラグインをインストールします。たとえば、package.jsonGenkit パッケージが 1.0.4 の場合、次のコマンドを実行してプラグインをインストールする必要があります。

    npm i --save @genkit-ai/firebase@1.0.4
  5. [エクスプローラ] で src > ai > flows を開きます。Genkit フローを含む 1 つ以上の TypeScript ファイルが flows フォルダに表示されます。

  6. いずれかのフローをクリックして開きます。

  7. ファイルの imports セクションの一番下に、次のコードを追加して FirebaseTelemetry をインポートして有効にします。

    import { enableFirebaseTelemetry } from '@genkit-ai/firebase';
    
    enableFirebaseTelemetry();
    

ステップ 2: 権限を設定する

Firebase Studio は Firebase プロジェクトの設定時に必要な API を有効にしましたが、App Hosting サービス アカウントに権限を付与する必要があります。

権限を設定するには:

  1. Google Cloud IAM コンソールを開き、プロジェクトを選択して、App Hosting サービス アカウントに次のロールを付与します。

    • モニタリング指標の書き込みroles/monitoring.metricWriter
    • Cloud Trace エージェントroles/cloudtrace.agent
    • ログ書き込みroles/logging.logWriter
  2. App Hostingアプリを再公開します。

  3. 公開が完了したら、アプリを読み込んで使用を開始します。5 分後に、アプリがテレメトリー データの記録を開始します。

ステップ 3: Firebase コンソールで生成 AI 機能をモニタリングする

テレメトリーが構成されている場合、Genkit はすべてのフローのリクエスト数、成功数、レイテンシを記録します。また、特定のフローごとに、Genkit は安定性指標を収集し、詳細なグラフを表示し、キャプチャされたトレースをログに記録します。

Genkit で実装された AI 機能をモニタリングするには:

  1. 5 分後、Firebase コンソールGenkit を開き、Genkit のプロンプトとレスポンスを確認します。

    Genkit は、次の安定性指標をコンパイルします。

    • 合計リクエスト数: フローによって受信されたリクエストの合計数。
    • 成功率: 正常に処理されたリクエストの割合。
    • 95 パーセンタイルのレイテンシ: フロー内の 95% のリクエストが処理されるまでにかかる時間。
    • トークンの使用量:

      • 入力トークン: プロンプトでモデルに送信されたトークン数。
      • 出力トークン: レスポンスでモデルによって生成されたトークンの数。
    • 画像の使用:

      • 入力画像: プロンプトでモデルに送信される画像の数。
      • 出力画像: レスポンスでモデルによって生成された画像の数。

    安定性指標を開くと、詳細なグラフが表示されます。

    • 時間の経過に伴うリクエスト数。
    • 時間の経過に伴う成功率。
    • 時間の経過に伴う入力トークンと出力トークン。
    • 時間の経過に伴うレイテンシ(95 パーセンタイルおよび 50 パーセンタイル)。

Genkit について詳しくは、Genkit をご覧ください。

次のステップ