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

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

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 フローを含む TypeScript ファイルが flows フォルダに 1 つ以上表示されます。

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

  7. ファイルのインポート セクションの一番下に、以下を追加し 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% のリクエストが処理されるまでにかかる時間です。
    • トークン使用量:

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

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

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

    • リクエスト数の推移。
    • 成功率の推移。
    • 入力トークンと出力トークンの推移。
    • レイテンシ(95 パーセンタイルおよび 50 パーセンタイル)の推移。

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

次のステップ