Skip to main content

การตรวจสอบการใช้งาน

เรียนรู้วิธีเปิดใช้งานและกำหนดค่า 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
note

ค่าเริ่มต้นของ 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.inputInput tokens ที่ใช้ต่อ request
claude_code.token.outputOutput tokens ที่สร้างต่อ request
claude_code.token.cache_readCache read tokens ต่อ request
claude_code.token.cache_creationCache 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

แหล่งข้อมูลเพิ่มเติม