Arize-ai

Claude Code Otlp Collector — Development skill for Claude Code

Development community

OTLP bridge that forwards Claude Code telemetry to Arize.

How to install Claude Code Otlp Collector

This entry records only its repository, not the path inside it, so there is no exact command to give. Open Arize-ai/claude-code-otlp-collector and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Claude Code Otlp Collector does

OTLP bridge that forwards Claude Code telemetry to Arize.

Alternatives in Development

  • MCP Proxy — A bridge between Streamable HTTP and stdio MCP transports 2.4k ★
  • 13 Bridge IDE — Prompt 13: Bridge Layer (VS Code / JetBrains IDE Integration) 2.3k ★
  • Cyberboss — 一个接入微信的本地生活 Agent Bridge,让 Codex / Claude Code 拥有时间感、行踪感、随机唤醒和自主唤醒能力,用主动陪伴替代所有番茄钟和效率工具,自动记录日记、维护生活时间轴、发送文件和表情包 1.3k ★

README

Claude Collector

`claude-collector` is an OTLP/HTTP bridge for Claude Code telemetry. It receives Claude Code native OpenTelemetry traces/logs, adds OpenInference/Arize-compatible attributes for LLM and TOOL spans, and forwards the result to Arize or another OTLP/HTTP destination.

It preserves Claude Code's native trace tree:

claude_code.interaction       -> openinference.span.kind=AGENT
├── claude_code.llm_request   -> openinference.span.kind=LLM
└── claude_code.tool          -> openinference.span.kind=TOOL

Start With Debug Setup

The recommended first step is to run the repo-local Claude skill:

Use the debug-setup skill.

The skill lives at:

.agents/skills/debug-setup/SKILL.md

`debug-setup` does the full validation path:

  1. Checks Claude settings files for telemetry env vars that could override local exports.
  2. Starts an isolated local collector on a debug port.
  3. Sends a Claude marker prompt.
  4. Verifies local JSONL output contains mapped TOOL and LLM spans.
  5. Starts a fresh debug collector with Arize forwarding enabled.
  6. Sends another marker prompt.
  7. Verifies both local JSONL output and upstream OTLP success, normally:
forwarded telemetry path=/v1/traces status=200

For testing an already-running collector instead of starting an isolated debug collector, use:

Use the debug-live-collector skill.

Required `.env`

Create a local `.env` file:

ARIZE_API_KEY=...
ARIZE_SPACE_ID=...
ARIZE_PROJECT_NAME=claude-oltp-direct
ARIZE_OTLP_ENDPOINT=https://otlp.arize.com/v1/traces

CLAUDE_COLLECTOR_LISTEN=:14318
CLAUDE_COLLECTOR_ALLOW_BODY_REF=true
CLAUDE_COLLECTOR_BODY_REF_CLEANUP_ROOTS=/tmp/claude-code-otel-bodies
CLAUDE_COLLECTOR_EXPORT_FILE=/tmp/claude-collector-latest.jsonl

`CLAUDE_COLLECTOR_BODY_REF_CLEANUP_ROOTS` is required whenever `CLAUDE_COLLECTOR_ALLOW_BODY_REF=true`: the collector only reads `body_ref` files whose resolved path lies inside one of these directories