virtual-insanity
← 리포트 목록

OpenClaw OTel 모니터링 적용 방안

2026-04-10 claude [모니터링, OTel, OpenTelemetry, 비용추적, 대시보드, 인프라]

OpenClaw OTel 모니터링 적용 방안

1. 현재 모니터링 갭

있는 것

  • Bash 명령 감사 로그 (command-audit.log)
  • 스킬 사용 기록 (skill-usage.jsonl)
  • 에이전트 이벤트 DB (ops_agent_events 8,320건)
  • 에러 장부 (error-ledger/ledger.json)
  • 시스템 다이제스트 (system-digest/latest.json)

핵심 갭

빠진 메트릭 영향
토큰 사용량 (세션별/에이전트별) 비용 폭증 감지 불가
API 비용 (시간대별/작업별) 월말에야 청구서로 확인
도구 실행 시간 병목 지점 모름
크론잡 실행 시간/성공률 127개 활성 크론 중 느린 것 모름
파이프라인 처리량 223개 스크립트 처리 시간 추적 없음

핵심: OTel 엔드포인트(localhost:4318)가 settings.json에 설정돼 있지만, 수신 컬렉터가 없어서 데이터가 버려지고 있음.

2. 추천 아키텍처

Claude Code (OTel export)
     │
     ▼ OTLP/HTTP (:4318)
┌─────────────────────┐
│  OTel Collector Lite │  ← Python Flask 경량 수신기
│  (otel_collector_lite.py)
└──────┬──────────────┘
       │
       ▼
    SQLite (otel_metrics.db)
       │
       ▼
  기존 웹앱 (:3344) ops 블루프린트에 통합

3. 3단계 구현 방안

A. 즉시 (30분) — OTel Collector Lite

Flask 기반 경량 서버를 포트 4318에 띄워서 Claude Code가 내보내는 OTel 데이터를 SQLite에 저장.

  • otel_collector_lite.py → OTLP/HTTP 수신 → otel_metrics.db에 저장
  • 테이블: otel_metrics (시계열), otel_events (이벤트), cost_tracking (비용 집계)
  • LaunchAgent로 항상 실행 상태 유지
  • 기존 설정 변경 없이 즉시 데이터 수집 시작

B. 단기 (1일) — 비용 추적 + 대시보드 + 알림

  1. 비용 집계 크론 (otel_cost_aggregator.py)
  2. 4시간마다 에이전트별 일별 비용 집계
  3. Anthropic 가격표 기반 비용 추정
  4. 일비용 $50 초과 → 텔레그램 CRITICAL
  5. 일비용 $30 초과 → 텔레그램 INFO

  6. 웹앱 대시보드 통합 (otel_dashboard.py)

  7. /otel 페이지 + 4개 API 엔드포인트
  8. 일별 비용 추이 (에이전트별 누적 막대)
  9. 에이전트별 비용 파이 (도넛)
  10. 토큰 시계열 (라인)
  11. 최근 이벤트 피드 (테이블)

  12. ops 페이지에 "오늘 비용" 위젯 삽입

C. 중기 (1주) — 완전한 관측성

  • Prometheus + Grafana (Docker Compose)
  • OTel Collector 공식판 → Prometheus exporter
  • 파이프라인 계측 데코레이터 (@trace_pipeline)
  • 훅 실행시간 계측
  • 전체 223개 파이프라인 점진적 계측

4. 에이전트별 비용 추적

에이전트 식별 방법
Claude Code (메인) service.name = claude-code
Codex agent = codex (bus_commands)
Cowork agent = cowork (세션 메타)
파이프라인 LLM agent = pipeline (게이트웨이 로그)
Hermes agent = hermes (별도 계측)

5. 알림 규칙

조건 등급 목적지
일비용 > $50 CRITICAL 해리 DM
일비용 > $30 INFO 알림센터
세션 비용 > $10 CRITICAL 해리 DM
크론 실패율 > 20% CRITICAL 해리 DM
파이프라인 지연 > 5분 INFO 알림센터

6. 구현 우선순위

순서 작업 소요 효과
1 otel_collector_lite.py + LaunchAgent 30분 버려지는 데이터 수거
2 otel_cost_aggregator.py + 크론 2시간 비용 가시성
3 otel_dashboard.py + 웹앱 등록 3시간 대시보드 확인
4 otel_instrument.py + 주요 파이프라인 5개 2시간 병목 파악
5 Prometheus + Grafana 4시간 전문 대시보드
6 전체 파이프라인 계측 2~3일 완전한 관측성