การตรวจสอบการใช้งาน
เรียนรู้วิธีเปิดใช้งานและกำหนดค่า OpenTelemetry สำหรับ Claude Code
ติดตามการใช้งาน Claude Code, ต้นทุน และ tool activity ทั่วทั้งองค์กรโดยการ export telemetry data ผ่าน OpenTelemetry (OTel) Claude Code export metrics เป็น time series data ผ่าน metrics protocol มาตรฐาน events ผ่าน logs/events protocol และ traces แบบ distributed ผ่าน traces protocol
Quick Start
กำหนดค่า OpenTelemetry โดยใช้ environment variables:
# 1. เปิดใช้งาน telemetry
export CLAUDE_CODE_ENABLE_TELEMETRY=1
# 2. เลือก exporters
export OTEL_METRICS_EXPORTER=otlp # ตัวเลือก: otlp, prometheus, console, none
export OTEL_LOGS_EXPORTER=otlp # ตัวเลือก: otlp, console, none
# 3. กำหนดค่า OTLP endpoint
export OTEL_EXPORTER_OTLP_PROTOCOL=grpc
export OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4317
# 4. ตั้งค่า authentication (หากจำเป็น)
export OTEL_EXPORTER_OTLP_HEADERS="Authorization=Bearer your-token"
# 5. สำหรับ debugging: ลด export intervals
export OTEL_METRIC_EXPORT_INTERVAL=10000 # 10 วินาที (ค่าเริ่มต้น: 60000ms)
export OTEL_LOGS_EXPORT_INTERVAL=5000 # 5 วินาที (ค่าเริ่มต้น: 5000ms)
# 6. รัน Claude Code
claude
ค่าเริ่มต้นของ export intervals คือ 60 วินาทีสำหรับ metrics และ 5 วินาทีสำหรับ logs ในระหว่างการตั้งค่า คุณอาจต้องใช้ intervals สั้นกว่าเพื่อ debug อย่าลืมรีเซ็ตสำหรับการใช้งานจริง
การกำหนดค่าสำหรับผู้ดูแลระบบ
การกำหนดค่าผ่าน Managed Settings
สำหรับ deployment ทั่วทั้งองค์กร กำหนดค่า telemetry ใน managed settings:
{
"env": {
"CLAUDE_CODE_ENABLE_TELEMETRY": "1",
"OTEL_METRICS_EXPORTER": "otlp",
"OTEL_LOGS_EXPORTER": "otlp",
"OTEL_EXPORTER_OTLP_ENDPOINT": "https://your-collector.example.com:4317",
"OTEL_EXPORTER_OTLP_HEADERS": "Authorization=Bearer your-org-token"
}
}
Metrics
Claude Code export metrics ต่อไปนี้:
Token Usage Metrics
| Metric | คำอธิบาย |
|---|---|
claude_code.token.input | Input tokens ที่ใช้ต่อ request |
claude_code.token.output | Output tokens ที่สร้างต่อ request |
claude_code.token.cache_read | Cache read tokens ต่อ request |
claude_code.token.cache_creation | Cache creation tokens ต่อ request |
Session Metrics
| Metric | คำอธิบาย |
|---|---|
claude_code.session.count | จำนวน sessions ทั้งหมด |
claude_code.session.duration | ระยะเวลา session |
Events (Logs)
Claude Code export log events ที่มีรายละเอียดเกี่ยวกับ:
- Tool invocations
- Model requests
- Skill activations
- Permission decisions
ดู Tool Details
ตั้งค่า OTEL_LOG_TOOL_DETAILS=1 เพื่อรวมชื่อ MCP server และ tool ใน tool events:
export OTEL_LOG_TOOL_DETAILS=1
Traces (Beta)
ใช้ traces protocol สำหรับ distributed tracing:
export OTEL_TRACES_EXPORTER=otlp
Prometheus Integration
สำหรับการ scrape metrics ด้วย Prometheus:
export OTEL_METRICS_EXPORTER=prometheus
export OTEL_PROMETHEUS_PORT=9090
Grafana Dashboard
เพิ่ม datasource ของ Prometheus ใน Grafana แล้ว import dashboard ที่รวม metrics ของ Claude Code เพื่อดู:
- Token usage over time
- Cost per user/project
- Most used tools and commands
- Session counts and durations
แหล่งข้อมูลเพิ่มเติม
- OpenTelemetry specification
- Settings: การกำหนดค่าเพิ่มเติม