コンテンツにスキップ
Zenn Dev Ai CLI Otel Grafana

Claude CodeとCodex CLIのテレメトリーをGrafana Cloudで見る

  • URL: https://zenn.dev/ymotongpoo/articles/20260616-ai-cli-otel-grafana
  • 日付: 2026-06-16
  • Tier: Tier 3
  • 要旨: Claude CodeとCodex CLIのOTelテレメトリーをGrafana Alloy経由でGrafana Cloudに送り、コスト・トークン・TTFT・レイテンシーを可視化した実践報告。両CLIともdelta temporalityでメトリクスを送るためMimirに弾かれるという罠があり、Claude Codeは環境変数で、CodexはAlloyのプロセッサで変換対応している。

詳細

アーキテクチャはClaude Code+Codex→127.0.0.1:4318(OTLP)→Grafana Alloy→Grafana Cloud OTLP gateway。認証トークンをCLI設定に置かない設計のために中継Alloyを1段挟んでいる。

Claude CodeはsettingsのenvブロックでOTel環境変数を設定し、CLAUDE_CODE_ENHANCED_TELEMETRY_BETA=1でトレースも有効化。トレースはclaude_code.interaction→claude_code.llm_request→claude_code.toolのスパンツリー構造。Codexは~/.codex/config.toml[otel]セクションで設定するが、環境変数展開が機能しない(${VAR}が文字列のまま送信される)という実証済みのバグがある。

メトリクスのdelta→cumulative変換はClaude CodeはOTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE=cumulativeで対応し、Codexは設定がないためAlloyのotelcol.processor.deltatocumulative(experimentalコンポーネント)で変換する。Grafana Cloud AI Observabilityはgen_ai.*規約前提のためclaude_code.*/codex.*は非表示となり、CLIごとの専用ダッシュボードをgcx CLIで作成して対応した。