アプリを公開した後は、次の方法でモニタリングできます。
Firebase Hosting で公開する場合は、Firebase プロジェクトを Cloud Logging にリンクして、使用状況をモニタリングし、ウェブリクエスト ログにアクセスできます。詳細については、Cloud Logging を使用してウェブ リクエストログを表示、検索、フィルタするをご覧ください。
App Prototyping agent を使用して Firebase App Hosting で公開する場合は、オブザーバビリティ機能を使用してウェブサイトのパフォーマンスをモニタリングできます。ログを Cloud Logging に書き込み、Firebase コンソールでログと指標を表示することもできます。
Genkit を使用してアプリで AI を使用している場合は、生成 AI 機能が本番環境でどのように実行されているかをモニタリングできます。
App Hosting オブザーバビリティでサイトのパフォーマンスをモニタリングする
App Hosting [アプリの概要] パネルには、アプリに関する主要な指標と情報が表示されます。App Hosting に組み込まれたオブザーバビリティ ツールを使用して、ウェブアプリのパフォーマンスをモニタリングできます。サイトがリリースされたら、[公開] をクリックして概要にアクセスできます。このパネルでは、次の操作を行うことができます。
- [ロールアウトを作成] をクリックして、アプリの新しいバージョンをリリースします。
- アプリへのリンクを共有するか、[アプリにアクセス] でアプリを直接開きます。
- リクエストの合計数や最新のロールアウトのステータスなど、過去 7 日間のアプリのパフォーマンスの概要を確認します。[詳細を表示] をクリックすると、Firebase コンソールでさらに詳細な情報を確認できます。
- 過去 24 時間にアプリが受信したリクエスト数を HTTP ステータス コード別にグラフで表示します。
アプリの概要パネルを閉じた場合は、[公開] をクリックしていつでも再び開くことができます。
App Hosting ロールアウトの管理とモニタリングについて詳しくは、ロールアウトとリリースを管理するをご覧ください。
Genkit デプロイされた特徴のモニタリング
AI フロー コードへのテレメトリーを有効にすると、Genkit 特徴ステップ、入力、出力をモニタリングできます。Genkit のテレメトリー機能を使用すると、AI フローのパフォーマンスと使用状況をモニタリングできます。このデータは、改善の余地がある部分の特定、問題のトラブルシューティング、プロンプトとフローの最適化によるパフォーマンスと費用対効果の向上、フローの使用状況の経時的な追跡に役立ちます。
Genkit でモニタリングを設定するには、Genkit AI フローにテレメトリーを追加し、Firebase コンソールで結果を表示します。
ステップ 1: Firebase Studio の Genkit フローコードにテレメトリーを追加する
コードでモニタリングを設定するには:
Code ビューにまだ表示されていない場合は、
[コードに切り替え] をクリックして開きます。
package.json
を確認して、インストールされている Genkit のバージョンを確認します。ターミナル(
Ctrl-Shift-C
、または macOS ではCmd-Shift-C
)を開きます。ターミナル内でクリックし、
package.json
ファイルと一致するバージョンを使用して Firebase プラグインをインストールします。たとえば、package.json
の Genkit パッケージが 1.0.4 の場合、次のコマンドを実行してプラグインをインストールする必要があります。npm i --save @genkit-ai/firebase@1.0.4
[エクスプローラ] で
src > ai > flows
を開きます。Genkit フローを含む 1 つ以上の TypeScript ファイルがflows
フォルダに表示されます。いずれかのフローをクリックして開きます。
ファイルの imports セクションの一番下に、次のコードを追加して
FirebaseTelemetry
をインポートして有効にします。import { enableFirebaseTelemetry } from '@genkit-ai/firebase'; enableFirebaseTelemetry();
ステップ 2: 権限を設定する
Firebase Studio は Firebase プロジェクトの設定時に必要な API を有効にしましたが、App Hosting サービス アカウントに権限を付与する必要があります。
権限を設定するには:
Google Cloud IAM コンソールを開き、プロジェクトを選択して、App Hosting サービス アカウントに次のロールを付与します。
- モニタリング指標の書き込み(
roles/monitoring.metricWriter
) - Cloud Trace エージェント(
roles/cloudtrace.agent
) - ログ書き込み(
roles/logging.logWriter
)
- モニタリング指標の書き込み(
App Hosting にアプリを再公開します。
公開が完了したら、アプリを読み込んで使用を開始します。5 分後に、アプリがテレメトリー データの記録を開始します。
ステップ 3: Firebase コンソールで生成 AI 機能をモニタリングする
テレメトリーが構成されている場合、Genkit はすべてのフローのリクエスト数、成功数、レイテンシを記録します。また、特定のフローごとに、Genkit は安定性指標を収集し、詳細なグラフを表示し、キャプチャされたトレースをログに記録します。
Genkit で実装された AI 機能をモニタリングするには:
5 分後、Firebase コンソールで Genkit を開き、Genkit のプロンプトとレスポンスを確認します。
Genkit は、次の安定性指標をコンパイルします。
- 合計リクエスト数: フローによって受信されたリクエストの合計数。
- 成功率: 正常に処理されたリクエストの割合。
- 95 パーセンタイルのレイテンシ: フロー内の 95% のリクエストが処理されるまでにかかる時間。
トークンの使用量:
- 入力トークン: プロンプトでモデルに送信されたトークン数。
- 出力トークン: レスポンスでモデルによって生成されたトークンの数。
画像の使用:
- 入力画像: プロンプトでモデルに送信される画像の数。
- 出力画像: レスポンスでモデルによって生成された画像の数。
安定性指標を開くと、詳細なグラフが表示されます。
- 時間の経過に伴うリクエスト数。
- 時間の経過に伴う成功率。
- 時間の経過に伴う入力トークンと出力トークン。
- 時間の経過に伴うレイテンシ(95 パーセンタイルおよび 50 パーセンタイル)。
Genkit について詳しくは、Genkit をご覧ください。