OpenAI Responses API telemetry でイベントを送信して確認する
制御されたアプリケーション境界で OpenAI Responses API telemetry を使用し、イベント コントラクトを小さく保ち、集約ビューを構築する前に既知の結果を検証します。
- 1
結果を選択してください
応答 API のコストとレイテンシの分析
- 2
契約を定義する
operation_id、response_id、機能、ワークフロー、プロバイダー、モデル、リリース
- 3
結果で発行する
アプリケーション所有の Responses API 呼び出しをラップし、使用法と結果がわかった後で 1 つの端末要求イベントを発行します。
- 4
証拠を検証する
Exercise a known fixture, then inspect openai_response_completed for one correctly typed terminal row.
始める前に
始める前に
- The official OpenAI JavaScript SDK and a Telemetry API key で trusted server code
- アプリケーションが所有するオペレーション ID と安定した機能、ワークフロー、モデル エイリアス、およびリリース名
- プロンプト、レスポンス、ツール、識別子のデータに関するポリシーの見直し
配信設定
サーバー側のインストールと初期化
このサーバー側の例では、サーバー側のキーと時間制限付き fetch リクエストで Log API にイベントを送信します。Telemetry SDK の初期化は不要です。 ブラウザ バンドル、クライアントに表示される環境変数、ソース管理、ログ、および例外メッセージに取り込み資格情報が含まれないようにします。
npmのインストール
npm install openai- 1制限されたネットワーク動作を持つ再利用可能なサーバー側配信クライアントを 1 つ準備します。
- 2成功、失敗、再試行、またはタイムアウトの境界に結果イベントを追加します。
- 3アラートを有効にする前に、制御されたフィクスチャを送信し、保存されている行を検査します。
スニペット
1 つの構造化されたイベントから始める
ワークフローが完了、失敗、または再試行される場所にこの図形を追加します。次に、実際のフィールドからダッシュボードを構築します。
OpenAI Responses API telemetryイベント
import OpenAI from "openai";
const openai = new OpenAI();
const startedAt = performance.now();
let response;
let status = "success";
let errorType;
try {
response = await openai.responses.create({
model: process.env.OPENAI_MODEL ?? "gpt-5.6",
input: approvedInput,
});
return response.output_text;
} catch (error) {
status = "failed";
errorType = classifyOpenAIError(error);
throw error;
} finally {
const event = {
operation_id: operationId,
response_id: response?.id,
feature: "support_draft",
provider: "openai",
model: response?.model ?? process.env.OPENAI_MODEL ?? "gpt-5.6",
status,
error_type: errorType,
duration_ms: Math.round(performance.now() - startedAt),
input_tokens: response?.usage?.input_tokens,
output_tokens: response?.usage?.output_tokens,
total_tokens: response?.usage?.total_tokens,
release: process.env.APP_RELEASE,
};
try {
const receipt = await fetch("https://api.telemetry.sh/log", {
method: "POST",
headers: {
Authorization: process.env.TELEMETRY_API_KEY,
"Content-Type": "application/json",
},
body: JSON.stringify({ table: "openai_response_completed", data: event }),
signal: AbortSignal.timeout(2_000),
});
if (!receipt.ok) console.warn("Telemetry ingestion failed", receipt.status);
} catch {
console.warn("Telemetry ingestion unavailable");
}
}イベントスキーマ
operation_id、response_id、機能、ワークフロー、プロバイダー、モデル、リリース
ステータス、duration_ms、input_tokens、output_tokens、total_tokens、retry_count、および error_type
tool_call_count、承認済み、human_handoff、estimated_cost_usd、承認された場合は pricing_version
設定を確認する
チェックポイント 1
アプリケーション所有の Responses API 呼び出しをラップし、使用法と結果がわかった後で 1 つの端末要求イベントを発行します。
チェックポイント 2
The example sends a bounded HTTP ingestion request; a logging failure does not replace the application result or original error. Verify the captured event with SQL afterward.
チェックポイント 3
プロバイダーの使用量はトークン アカウンティングをサポートしますが、コストはアプリケーションが所有する見積もりであり、日付の価格ソースと個別の調整が必要です。
チェックポイント 4
デフォルトでは、プロンプト、生成された出力、ツールの引数、ツールの結果、API キー、および無制限の例外メッセージをイベントから除外します。
検証
イベントが到着したことを証明する
既知の成功例と失敗例を実行した後、これを実行します。最終的なイベント コントラクトがスニペットと異なる場合は、フォールバック テーブル名を置き換えます。
OpenAI Responses API telemetry 検証クエリ
SELECT *
FROM openai_response_completed
ORDER BY timestamp_utc DESC
LIMIT 20;実装の参考資料
新しい運用パスを有効にする前に、イベント契約、データ安全性に関するガイダンス、上流の主要ドキュメントを確認してください。
イベントを記録する場所
結果イベントを小さく、回復可能なものに保つ
このパターンが提供するのは、
- 上流のワークフローの横にある、制限付きの SQL 対応の結果。
- ダッシュボード、アラート、およびイベント間の相関関係の安定したフィールド。
- 成功、失敗、再試行、タイムアウトの動作を検証するためのフィクスチャ駆動のパス。
このパターンでは提供されません
- OTLP エクスポーター、自動収集パイプライン、または詳細なトレースと診断ログの代替。
- ペイロードにイベント ID が含まれているという理由だけで、1 回だけ配信されます。
- 生のプロバイダー ペイロード、ユーザー コンテンツ、資格情報、または規制されたデータを収集する許可。
イベントスキーマの例
このワークフローのイベントスキーマ
クエリまたはスニペットを運用環境に適用する前に、行粒度、出力境界、必要なタイプ、プライバシー クラス、サンプル ペイロード、および検証チェックリストを確認してください。
関連製品の機能
このワークフローを続行します AIエージェントの監視
レビュー可能な SQL を使用して、エージェントの実行、ツールの使用、モデルのコスト、品質、製品の結果を結び付けます。
関連する SQL レシピ
その他のSQL例
このワークフローの構造化フィールドに対してクエリを実行し、結果の例を検査して、有用な回答をダッシュボードまたはアラートに変換します。
機能とモデルごとに LLM コストを計算する
LLM の支出を促進しているのはどの製品機能とモデルですか?
レシピを開くLLM キャッシュの節約と再試行コストを測定する
再試行とキャッシュミスに関連するモデルコストはどれくらいですか?
レシピを開く最初のトークンまでの LLM 時間を測定する
出力が開始される前に速度が遅いと感じるモデルと機能の組み合わせはどれですか?
レシピを開く1 ドルあたりの受け入れられた AI 出力を測定する
どのモデルと機能の組み合わせが、1 ドルあたり最も受け入れられる出力を生成しますか?
レシピを開くプロンプト バージョンごとに AI 品質の低下を見つける
新しいプロンプト バージョンでは、人間による引き継ぎを増やすことなく品質が向上しましたか?
レシピを開く実装ファミリーごとに参照する
関連する統合パターンを比較する
この統合と組み合わせるテンプレート
さらなる統合
Vercel AI SDK テレメトリ
ストリーミングの完了、トークンの使用状況、再試行、レイテンシ、および AI SDK ワークフローからの受け入れられた結果を追跡します。
オープンガイドOpenAI エージェント Telemetry
OpenAI エージェントの実行、ツール呼び出し、モデルの使用状況、レイテンシー、コスト、および構造化イベントによる最終結果をログに記録します。
オープンガイドGoogle ジェミニ API Telemetry
プロンプトや生成されたコンテンツを保存せずに、Gemini リクエストのレイテンシー、モデルの使用状況、トークン、終了理由、エラー、レビューされた製品の結果を追跡します。
オープンガイド