原文(日本語に翻訳)
- デバッグ用に、API リクエストとレスポンスの完全なボディを OpenTelemetry ログイベントとして出力する
OTEL_LOG_RAW_API_BODIES環境変数を追加しました
原文(英語)
- Added
OTEL_LOG_RAW_API_BODIESenvironment variable to emit full API request and response bodies as OpenTelemetry log events for debugging
概要
OTEL_LOG_RAW_API_BODIES 環境変数を設定することで、Claude Code が送受信する API の完全なリクエスト・レスポンスボディを OpenTelemetry ログイベントとして出力できます。API 通信のデバッグや、プロンプト最適化のための詳細なログが必要な場合に役立ちます。
基本的な使い方
環境変数を設定して起動
bash
export OTEL_LOG_RAW_API_BODIES=1
claude "コードをレビューして"OpenTelemetry コレクターと組み合わせる
bash
# OTLP エンドポイントの設定と組み合わせ
export OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4317
export OTEL_LOG_RAW_API_BODIES=1
claude "テストを実行して"実践例
プロンプトのデバッグ
bash
# API に送られているリクエストを確認
OTEL_LOG_RAW_API_BODIES=1 claude "デバッグしたいタスク"システムプロンプト、ツール定義、コンテキストが実際にどのような形式で送信されているかを確認できます。
Jaeger での可視化
bash
# Jaeger をローカルで起動
docker run -d --name jaeger \
-p 16686:16686 \
-p 4317:4317 \
jaegertracing/all-in-one:latest
# Claude Code を OpenTelemetry 付きで起動
export OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4317
export OTEL_LOG_RAW_API_BODIES=1
claude "タスクを実行して"
# http://localhost:16686 でログを確認トークン使用量の詳細分析
bash
OTEL_LOG_RAW_API_BODIES=1 claude "大きなコードベースを分析して" 2>&1 | grep -i "usage"注意点
- セキュリティ警告: API ボディにはプロンプト内容、コードスニペット、機密情報が含まれる場合があります。本番環境での常時有効化は避けてください
- ログ量が大幅に増加するため、ストレージへの影響を考慮してください
- OpenTelemetry コレクターが設定されていない場合、ログの出力先によっては確認が難しいことがあります
- この機能は主にデバッグ・開発目的です