モデルの使用状況の追跡

このページでは、使用状況追跡システムテーブルを使って Unityゲートウェイ サービスの使用状況を監視する方法を説明しています。

使用状況の追跡テーブルは、モデルサービス、モデルプロバイダーサービス、MCPサービスの要求および応答の詳細を記録します。 モデルリクエストの場合、トークン使用量やレイテンシなどの指標を記録します。 MCPリクエストの場合、通話およびサービスのメタデータを記録します。 テーブルを使ってユーザーの監視、コストの追跡、サービス利用状況やパフォーマンスの分析が可能です。

使用状況の追跡では、Databricks が提供するモデル サービスへの ai_query 要求もキャプチャされます。

アカウントとワークスペースの管理者は、ガバナンス ハブの AI ページで AI の使用状況の統合された概要を表示できます。

Requirements

Pricing

使用状況の追跡は、課金対象の Unity Gateway 機能です。 Azure Databrickssystem.ai_gateway.usageテーブルにログする使用量に応じて料金を請求します。 Unity Gatewayの料金をご覧ください。

使用状況テーブルのクエリを実行する

Unity Gatewayは使用データを system.ai_gateway.usage システムテーブルにログします。 UI でテーブルを表示したり、Databricks SQL またはノートブックからテーブルにクエリを実行したりすることもできます。

メモ

デフォルトで system.ai_gateway.usage テーブルの閲覧またはクエリにはアカウント管理者とメタストア管理者の両方が必要です。 管理者は システムテーブルへのアクセスを管理 し、ユーザー、グループ、サービスプリンシパルの権限を管理できます。

UI でテーブルを表示するには、モデル サービス ページの [使用状況追跡テーブル] リンクをクリックして、カタログ エクスプローラーでテーブルを開きます。

Databricks SQL またはノートブックからテーブルにクエリを実行するには:

SELECT * FROM system.ai_gateway.usage;

Tip

Genie Code はユーザーの代わりにこれを実行できます。 次のプロンプトの例を試してください。

Query the system.ai_gateway.usage table to analyze AI Gateway usage showing request count and total tokens, grouped by endpoint name for the last 7 days.

組み込みの使用状況ダッシュボード

メモ

一部のワークスペースには、まだ [ガバナンス ] ドロップダウンが表示されていません。 それらのワークスペースでは、Unity Gatewayページにあるスタンドアロンの 「Create Dashboard」「 View Dashboard」「 Update 」ボタンを使ってください。

組み込み使用ダッシュボードを作成する

アカウント管理者は組み込みのUnity Gateway使用ダッシュボードを作成し、使用状況を監視し、コストを追跡し、モデルサービスのパフォーマンスや消費状況の洞察を得ることができます。 Unity Gatewayのページから右上の Govern をクリックし、「 Create Usage Dashboard」をクリックします。 ダッシュボード クエリを実行するウェアハウスが自動的に選択されます。

メモ

ダッシュボードの作成には、SELECT テーブルに対するsystem.ai_gateway.usageアクセス許可が必要なため、アカウント管理者に制限されます。 ダッシュボードのデータは、 usage テーブルのアイテム保持ポリシーの対象となります。 「使用できるシステム テーブルはどれですか?」を参照してください。

組み込み使用ダッシュボードの新しいバージョンが利用可能になった場合、アカウント管理者はUnity GatewayページのGovernドロップダウンにあるダッシュボードのバージョン行で「更新」をクリックできます。

次のダッシュボード構成オプションを使用して、ダッシュボードを管理できます。

  • スコープ: ダッシュボードのスコープをアカウントとワークスペースのどちらにするかを選択します。
  • アクセス許可: ダッシュボード所有者のアクセス許可または各ビューアーのアクセス許可を使用してクエリを実行するかどうかを選択します。 「 共有データのアクセス許可とは」を参照してください。
  • 自動更新:このオプションを有効にすると、新しいバージョンが利用可能になり、アカウント管理者がUnity Gatewayページにアクセスするたびにダッシュボードが自動的に更新されます。

ai-gateway ダッシュボード オプションの更新

ダッシュボードがバージョン 0.3 以降に更新されると、6 時間ごとにダッシュボードを更新するスケジュールが自動的に作成されます。 必要に応じて、このスケジュールを Lakeview ダッシュボードで無効にすることができます。 「スケジュールを作成する」を参照してください。

使用状況ダッシュボードを表示する

ダッシュボードを見るには、Unity Gatewayページ右上の「 Govern 」をクリックし、その後 「使用ダッシュボード」をクリックしてください。 ダッシュボードは新しいタブで開きます。組み込みのダッシュボードは、Unity Gatewayモデルのサービス使用状況、パフォーマンス、コストを包括的に把握できます。 要求の追跡、トークン使用量、待機時間のメトリック、エラー率、コストの内訳、外部 MCP サーバー トラフィック、およびコーディング エージェント アクティビティを追跡する複数のページが含まれます。

ai-gateway の使用状況ダッシュボード

ダッシュボードでは、既定でクロスワークスペース分析が提供されます。 すべてのダッシュボード ページは、日付範囲とワークスペース ID でフィルター処理できます。

  • [概要] タブ: 毎日の要求量、時間の経過に伴うトークン使用量の傾向、トークン消費量別の上位ユーザー数、一意のユーザー数の合計など、高レベルの使用状況メトリックが表示されます。 このタブを使って、Unity Gateway全体の活動を素早く把握し、最もアクティブなユーザーやモデルを特定しましょう。
  • [パフォーマンス] タブ: 待機時間のパーセンタイル (P50、P90、P95、P99)、最初のバイトまでの時間、エラー率、HTTP 状態コードの分布など、主要なパフォーマンス メトリックを追跡します。 このタブを使用して、モデル サービスの正常性を監視し、パフォーマンスのボトルネックや信頼性の問題を特定します。
  • [使用状況] タブ: モデル サービス、ワークスペース、リクエスター別の詳細な消費量の内訳が表示されます。 このタブには、トークンの使用パターン、要求の分散、キャッシュ ヒット率が表示されます。
  • [コスト監視] タブ: モデル サービス、ターゲット モデル、ユーザー、サービス タグ、および要求タグごとのコストの内訳が表示されます。 このタブには、外部モデルの推定コストも含まれます。 詳細は 「Unityゲートウェイコストの分析」を参照してください。
  • [外部 MCP サーバー] タブ: 外部 MCP サーバー トラフィックの要求量、エラー率、ユーザーと接続、および毎日の使用状況の傾向が表示されます。
  • コーディングエージェントタブ:Claude Code、Codex CLI、Cursor、Gemini CLIなどの統合コーディングエージェントからの活動を追跡します。 このタブには、アクティブな日、コーディング セッション、コミット、開発者ツールの使用状況を監視するために追加または削除されたコード行などのメトリックが表示されます。 詳細については、 コーディング エージェント ダッシュボード を参照してください。

使用状況テーブルスキーマ

system.ai_gateway.usage テーブルには、次のスキーマがあります。

列名 タイプ 説明 Example
account_id STRING アカウント ID。 11d77e21-5e05-4196-af72-423257f74974
workspace_id STRING ワークスペース ID。 1653573648247579
request_id STRING 要求の一意の識別子。 b4a47a30-0e18-4ae3-9a7f-29bcb07e0f00
invocation_id STRING 各推論呼び出しに対する一意の識別子。 ガードレール チェックやマルチターン エージェント呼び出しなど、複数の呼び出しで同じ request_idを共有できます。 invocation_idを使用して区別します。 c0a8012e-9f3b-4d21-8a7e-1b2c3d4e5f60
schema_version INTEGER 使用レコードのスキーマ バージョン。 1
service_type STRING 使用記録を生成したサービスの種類。 値は MODEL_SERVICE、 MCP_SERVICE、 MODEL_PROVIDER_SERVICEです。 MODEL_SERVICE
service_id STRING モデルサービス、MCPサービス、またはモデルプロバイダーサービスのIDです。 43addf89-d802-3ca2-bd54-fe4d2a60d58a
service_name STRING Unity Catalogはサービスの名称を完全に限定しています。 main.default.github_tools
service_tags MAP Unity カタログに適用されたリソースタグは、作成時や更新時に保護可能です。 サービスへのすべてのリクエストに適用され、チーム、コストセンター、プロジェクトごとに使用状況を分類するのに役立ちます。 {"team": "engineering"}
endpoint_id STRING Unity Gateway モデルサービスのユニークなID。 43addf89-d802-3ca2-bd54-fe4d2a60d58a
endpoint_name STRING Unity Gatewayモデルサービスの名前です。 system.ai.gpt-5-2
endpoint_tags MAP 作成時または更新時にモデル サービスで構成されたタグ。 これらはモデル サービスへのすべての要求に適用され、チーム、コスト センター、またはプロジェクトごとにサービスを分類するのに役立ちます。 {"team": "engineering"}
endpoint_metadata STRUCT creator、creation_time、last_updated_time、destinations、inference_table、fallbacksなどのサービス メタデータをモデル化します。 {"creator": "user.name@email.com", "creation_time": "2026-01-06T12:00:00.000Z", ...}
event_time TIMESTAMP 要求が受信されたときのタイムスタンプ。 2026-01-20T19:48:08.000+00:00
latency_ms LONG 合計待機時間 (ミリ秒)。 300
time_to_first_byte_ms LONG 最初のバイトまでの時間 (ミリ秒)。 300
destination_type STRING 変換先の種類 (外部モデルや基礎モデルなど)。 PAY_PER_TOKEN_FOUNDATION_MODEL
destination_name STRING 変換先モデルまたはプロバイダーの名前。 system.ai.gpt-5-2
destination_id STRING 宛先の一意の ID。 507e7456151b3cc89e05ff48161efb87
destination_model STRING 要求に使用される特定のモデル。 GPT-5.2
requester STRING 要求を行ったユーザーまたはサービス プリンシパルの ID。 user.name@email.com
requester_type STRING 要求元の種類 (ユーザー、サービス プリンシパル、またはユーザー グループ)。 USER
ip_address STRING 要求元の IP アドレス。 1.2.3.4
url STRING 要求の URL。 https://<workspace-url>/ai-gateway/mlflow/v1/chat/completions
user_agent STRING 要求元のユーザー エージェント。 OpenAI/Python 2.13.0
api_type STRING API 呼び出しの種類 (チャット、完了、埋め込みなど)。 mlflow/v1/chat/completions
request_tags MAP Databricks-Ai-Gateway-Request-Tags HTTP ヘッダーを使用して個々の要求と共に送信されるユーザー指定のタグ。 要求タグを使用して、特定のプロジェクト、チーム、環境、またはエンド ユーザーに使用状況を属性付けします。 使用状況の追跡やリクエストタグ付けについてはタグリクエストを参照してください。 {"project": "chatbot", "team": "ml-platform"}
invocation_metadata STRUCT リクエストの発信元、モデルプロバイダーが報告したサービス階層、そしてリクエストがClaudeサブスクリプションを利用したかどうかの情報。 {"source": "EXTERNAL_CLIENT", "service_tier": "priority", "relayed": false}
input_tokens LONG 入力トークンの数。 100
output_tokens LONG 出力トークンの数。 100
total_tokens LONG トークンの合計数 (入力 + 出力)。 200
token_details STRUCT cache_read_input_tokens、cache_creation_input_tokens、output_reasoning_tokens、cache_creation_5m_input_tokens、cache_creation_1h_input_tokens、file_search_count、num_web_search_queriesを含む詳細なトークンおよびツールの使用状況。 {"cache_read_input_tokens": 100, ...}
response_content_type STRING 応答のコンテンツ タイプ。 application/json
status_code INT レスポンスのHTTPステータスコード。 200
routing_information STRUCT フォールバック試行のルーティングの詳細。 要求中に試行された各モデルのattempts、priority、action、destination、destination_id、status_code、error_code、latency_ms、およびstart_timeを含むend_time配列が含まれます。 {"attempts": [{"priority": "1", ...}]}
mcp_metadata STRUCT MCPサービスへのリクエストの詳細、呼び出されたツール、サーバータイプ、JSON-RPC 操作などが含まれます。 MCP_SERVICE 行に入力されています。 {"tool_name": "echo", "server_type": "EXTERNAL", "json_rpc_method": "tools/call"}
session_metadata STRUCT セッションおよびクライアントコンテキスト(セッションおよびサブエージェントID、コーディングエージェント名とバージョン、クライアントインターフェース、推論作業、スマートルーティングレシピなどが含まれます)。 これらのフィールドを使って関連するリクエストをグループ化し、エージェントやセッションごとの使用状況を分析します。 {"coding_agent": "claude-code", "agent_version": "2.1.282", "reasoning_effort": "high", ...}
auth_mode STRING リクエストを認証するために使われるDatabricksの認証情報タイプは、パーソナルアクセストークン(PAT)またはOAuthトークン(OAUTH)です。 OAUTH

ネストされた列スキーマ

以下の表は、入れ子状 STRUCT 列内のフィールドを説明します。 フィールドの可用性は、リクエストに使用されるサービス、モデル、クライアントによって異なります。

呼び出しとトークンメタデータ

フィールド パス タイプ 説明
invocation_metadata.source STRING リクエストを開始したアプリケーション、サービス、またはAPIです。 このフィールドを使って使用状況をその出典に帰属してください。 値には AI_PLAYGROUND、 EXTERNAL_CLIENT、 AI_QUERY、 GUARDRAIL、 MANAGED_AGENTが含まれます。
invocation_metadata.service_tier STRING 推論応答でモデル提供者が報告するサービス階層、例えば default や priority。 このフィールドを使って、プロバイダーの料金ティア間での使用状況を比較してください。
invocation_metadata.relayed ブーリアン そのリクエストが発信者のClaudeサブスクリプションを使ってAnthropicに伝えられたかどうか。
token_details.cache_read_input_tokens LONG プロンプトキャッシュから読み取られるトークンの数。
token_details.cache_creation_input_tokens LONG プロンプトキャッシュに書き込まれたトークンの数。
token_details.output_reasoning_tokens LONG 出力中の推論トークンの数。
token_details.cache_creation_5m_input_tokens LONG プロンプトキャッシュに書き込まれた入力トークンの数で、寿命は5分です。
token_details.cache_creation_1h_input_tokens LONG プロンプトキャッシュに書き込まれる入力トークンの数で、寿命は1時間です。
token_details.file_search_count LONG リクエストの一部として行われるファイル検索ツールの呼び出し数。
token_details.num_web_search_queries LONG 請求時に行われた請求可能なウェブ検索クエリの数。

MCPサービスメタデータ

これらのフィールドは、mcp_metadata行についてMCP_SERVICEに入力されます。

フィールド パス タイプ 説明
mcp_metadata.tool_name STRING MCPがリクエストで呼び出すツールの名前 tools/call 。 このフィールドを使って、サーバー上の個々のツールの使用状況を分析します。
mcp_metadata.server_type STRING リクエストを処理するMCPサーバーのカテゴリ、例えば EXTERNAL や SYSTEM。
mcp_metadata.json_rpc_method STRING クライアントが要求する JSON-RPC 操作 tools/call 、例えばツールの呼び出し、ツールの発見 tools/list 、セッション開始の initialize などです。

セッションメタデータ

session_metadataフィールドはセッション内のリクエストを関連付け、コーディングエージェント、クライアントインターフェース、リクエスト設定を区別するのに役立ちます。 各フィールドは、対応する情報がクライアントやリクエストから入手可能なときに入力されます。

フィールド パス タイプ 説明
session_metadata.client_session_id STRING クライアントから提供されたセッションIDです。 同じ会話やコーディングエージェントとのセッション中に出されたリクエストをグループ化するために使うことができます。
session_metadata.client_subagent_id STRING クライアントから提供されたサブエージェントIDです。 親セッション内のサブエージェントからのリクエストを区別するために client_session_id と組み合わせて使うことができます。
session_metadata.coding_agent STRING リクエストを送信したコーディングエージェントの正規化された名前、例えば claude-code や codex。
session_metadata.agent_version STRING コーディングエージェントの報告されたバージョンだ。 coding_agentと組み合わせてエージェントリリース間の使用状況を比較しましょう。
session_metadata.surface STRING コマンドラインインターフェース、IDE、デスクトップアプリケーションなど、コーディングエージェントがリクエストを送信するクライアントインターフェースです。
session_metadata.reasoning_effort STRING リクエストで指定された推論の労力(例えばlow、medium、またはhigh)。 利用可能な値はモデルとAPIによって異なります。
session_metadata.smart_router_name STRING クライアントが選んだスマートルーティングレシピの名前。 レシピのルーティングごとに使用状況をグループ化するために使います。

使用状況追跡のタグ要求

要求タグは、呼び出し元が個々の要求にアタッチするカスタム キーと値のペアです。 要求タグを使用して、プロジェクト、チーム、環境、エンド ユーザー、または組織に関連するその他のディメンション別の使用状況を属性付けします。 要求タグは system.ai_gateway.usage テーブルに記録され、使用状況データのフィルター処理、集計、分析に使用できます。

個々の要求にタグを付けるために、文字列キーを文字列値にマッピングする JSON オブジェクトを含む Databricks-Ai-Gateway-Request-Tags HTTP ヘッダーを含めます。 要求タグは、使用状況テーブルとrequest_tagsの 列に記録されます。

REST API、OpenAI SDK、Anthropic SDKでリクエストタグを設定する例については、「リクエストタグ付け」をご覧ください。

たとえば、要求タグを使用してプロジェクトごとの使用状況を集計できます。

SELECT
  request_tags['project'] AS project,
  COUNT(*) AS request_count,
  SUM(total_tokens) AS total_tokens
FROM system.ai_gateway.usage
WHERE request_tags['project'] IS NOT NULL
GROUP BY request_tags['project']
ORDER BY total_tokens DESC;

Limitations

  • Unity Gatewayは、1 MiBを超える非ストリーミング・非埋め込み応答のトークン使用を追跡しません。

その他のリソース