ログはアプリケーション開発の基本です。開発初期の把握に役立ち、本番で起きた問題の理解にも欠かせません。
AI Gateway のダッシュボードには、個別リクエストのログが表示されます。ユーザープロンプト、モデルの応答、プロバイダー、タイムスタンプ、リクエストのステータス、トークン使用量、コスト、所要時間、リクエスト元クライアントの User Agent を含みます。DLP ポリシーを設定している場合、DLP に一致したリクエストのログには、実行した DLP アクション(Flag または Block)、一致したポリシー ID、一致したプロファイル ID、トリガーされた検出エントリも含まれます。ログは保持されるため、希望する期間で保存し、リクエストデータを活用できます。
各ゲートウェイには、プランに応じたストレージ上限があります。ゲートウェイ設定で、ゲートウェイごとに上限を変更できます。上限に達すると、新しいログは保存されなくなります。ログの保存を続けるには、古いログを削除して空きを作る必要があります。 プランの上限について詳しくは、Limits を参照してください。
ログを保存するときは、認証済みゲートウェイの利用を推奨します。不正アクセスを防ぎ、ログ容量を不必要に増やしたり、必要なデータの発見を難しくしたりする無効なリクエストも抑えられます。設定方法は 認証済みゲートウェイ を参照してください。
メトリクスとリクエスト・応答データを含むログは、各ゲートウェイでデフォルトで有効です。このログ動作は、ゲートウェイ内のすべてのリクエストに一様に適用されます。プライバシーやコンプライアンスの観点からログ収集を止めたい場合は、設定でログをオフにできます。特定のリクエストだけログ設定を変えたい場合は、リクエスト単位で上書きできます。
ダッシュボードでデフォルトのログ設定を変更するには:
-
Cloudflare ダッシュボードで AI Gateway ページを開きます。
AI Gateway を開く ↗ -
Settings を選びます。
-
Logs の設定を希望どおりに変更します。
設定タブのデフォルトのログ動作を上書きするには、リクエスト単位でヘッダーを指定します。
cf-aig-collect-log ヘッダーで、ゲートウェイのデフォルトのログ設定を上書きできます。ゲートウェイがログを保存する設定の場合、このヘッダーでそのリクエストのログを除外できます。逆に、ゲートウェイレベルでログが無効なら、このヘッダーでそのリクエストのログを保存できます。
次の例では、cf-aig-collect-log でデフォルト設定を上書きし、ログを保存しないようにします。
# Run `wrangler whoami` to get your account ID to replace $CLOUDFLARE_ACCOUNT_ID,
# and `wrangler auth token` to get an auth token to replace $CLOUDFLARE_API_TOKEN.
curl -X POST "https://api.cloudflare.com/client/v4/accounts/$CLOUDFLARE_ACCOUNT_ID/ai/v1/chat/completions" \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--header "Content-Type: application/json" \
--header "cf-aig-collect-log: false" \
--data '{
"model": "openai/gpt-4.1-mini",
"messages": [
{
"role": "user",
"content": "What is the email address and phone number of user123?"
}
]
}'cf-aig-collect-log-payload ヘッダーで、そのリクエストの生のリクエスト本文と応答本文(ペイロード)を保存するかを制御できます。ログエントリ全体を制御する cf-aig-collect-log と違い、このヘッダーはペイロードの保存だけに作用します。トークン数、モデル、プロバイダー、ステータスコード、コスト、所要時間などのメタデータは、引き続き記録されます。
利用状況のメトリクスとリクエストのメタデータは把握しつつ、機密性の高いプロンプトや補完データは残したくない場合に使えます。
| ヘッダー値 | 動作 |
|---|---|
true |
リクエストと応答のペイロードを保存します。 |
false |
ペイロードの保存をスキップします。メタデータのみのログは保存されます。 |
次の例では、cf-aig-collect-log-payload でリクエスト本文と応答本文の保存をスキップし、メタデータのログは残します。
# Run `wrangler whoami` to get your account ID to replace $CLOUDFLARE_ACCOUNT_ID,
# and `wrangler auth token` to get an auth token to replace $CLOUDFLARE_API_TOKEN.
curl -X POST "https://api.cloudflare.com/client/v4/accounts/$CLOUDFLARE_ACCOUNT_ID/ai/v1/chat/completions" \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--header "Content-Type: application/json" \
--header "cf-aig-collect-log-payload: false" \
--data '{
"model": "openai/gpt-4.1-mini",
"messages": [
{
"role": "user",
"content": "What is the email address and phone number of user123?"
}
]
}'ゲートウェイで Data Loss Prevention(DLP、データ損失防止) ポリシーを有効にすると、DLP ポリシーに一致したリクエストのログエントリに、次の追加フィールドが含まれます。
| フィールド | 説明 |
|---|---|
| DLP Action | DLP ポリシーが実行したアクション: FLAG または BLOCK |
| DLP Policies Matched | 一致した DLP ポリシーの ID |
| DLP Profiles Matched | 一致した各ポリシー内で発動した DLP プロファイルの ID |
| DLP Entries Matched | 各プロファイル内で一致した、特定の検出エントリ ID |
| DLP Check | 一致が REQUEST、RESPONSE、またはその両方で起きたかどうか |
これらのフィールドは、ダッシュボードのログビューアーと Logs API の両方で使えます。ダッシュボードでは DLP Action でログを絞り込み、フラグ付きまたはブロックされたリクエストだけを表示できます。DLP の監視について詳しくは、DLP イベントを監視する を参照してください。
ログストレージを効率よく管理するには、次の方法があります。
- ストレージ上限を設定する: ゲートウェイ設定で、ゲートウェイあたりの保存ログ数に上限を設け、必要な分だけ課金されるようにします。
- Automatic Log Deletion を有効にする: ゲートウェイ設定で Automatic Log Deletion を有効にすると、アカウントのストレージ上限に達したとき、最も古いログが自動で削除されます。手動操作なしで新しいログを保存し続けられます。
ログストレージを管理し、継続的にログを残すには、次の方法でログを削除できます。
ゲートウェイのストレージ制約の中でログを継続するには、ゲートウェイ設定で Automatic Log Deletion を有効にします。アカウントのストレージ上限に達すると、最も古いログが自動で削除され、手動操作なしで新しいログが保存されます。
ダッシュボードから手動で削除するには、ダッシュボードの Logs タブを開きます。ステータス、キャッシュ、プロバイダー、コストなど、ドロップダウンのフィルターで削除対象を絞り込みます。絞り込んだら Delete logs を選択して削除します。
利用できるフィルターと説明は次のとおりです。
| フィルターカテゴリ | フィルターオプション | 絞り込みの説明 |
|---|---|---|
| Status | error、status | エラータイプまたはステータス。 |
| Cache | cached、not cached | キャッシュ済みかどうか。 |
| Provider | 特定のプロバイダー | 選択した AI プロバイダー。 |
| AI Models | 特定のモデル | 選択した AI モデル。 |
| Cost | less than、greater than | コスト。しきい値を指定します。 |
| Request type | Workers AI Binding、WebSockets | リクエストの種類。 |
| Tokens | Total tokens、Tokens In、Tokens Out | トークン数(未満またはより大きい)。 |
| Duration | less than、greater than | リクエストの所要時間。 |
| Feedback | equals、does not equal(thumbs up、thumbs down、no feedback) | フィードバックの種類。 |
| Metadata Key | equals、does not equal | 特定のメタデータキー。 |
| Metadata Value | equals、does not equal | 特定のメタデータ値。 |
| Log ID | equals、does not equal | 特定のログ ID。 |
| Event ID | equals、does not equal | 特定のイベント ID。 |
| DLP Action | FLAG、BLOCK | リクエストに対して実行した DLP アクション。 |
| User Agent | equals、does not equal、contains | リクエスト元クライアントの User Agent。 |
AI Gateway API でプログラムからログを削除できます。DELETE ログエンドポイントの詳細は、Cloudflare API ドキュメント を参照してください。