홍드로이드의 야매코딩

Claude Code 사용량 측정 — 비용을 스킬·플러그인별로 쪼갤 수 있고, 내가 만든 에이전트만 이름이 가려집니다 본문

AI & Vibe Coding

Claude Code 사용량 측정 — 비용을 스킬·플러그인별로 쪼갤 수 있고, 내가 만든 에이전트만 이름이 가려집니다

홍드로이드 2026. 8. 17. 07:47
반응형

"이번 달에 얼마 나갔지"까지는 청구서로 알 수 있는데, 그 돈이 어디로 갔는지는 안 나옵니다. 공식 문서에 사용량과 비용을 내보내는 방법이 정리돼 있어서 읽어 봤더니, 생각보다 잘게 쪼갤 수 있더군요 — 스킬별로, 플러그인별로, 서브에이전트가 쓴 것만 따로요. 그런데 같은 문서에 어떤 이름은 그대로 적히고 어떤 이름은 뭉뚱그려진다는 규칙이 같이 적혀 있었고, 그 경계가 항목마다 다릅니다. 재는 법보다 재고 나서 안 보이는 것을 아는 게 더 중요해 보여 그쪽을 중심으로 정리했습니다.

📌 30초 요약

  • 환경 변수 몇 개로 켜집니다. 지표 여덟 개가 나오고 비용은 달러 단위로 찍힙니다.
  • 비용 항목에 붙는 꼬리표가 열 개 가까이됩니다 — 본편·서브에이전트·보조 호출을 나눠서 볼 수 있습니다.
  • 스킬은 직접 만든 것도 이름이 그대로 나옵니다. 그런데 에이전트는 직접 만든 것이면 뭉뚱그려집니다. 같은 문서 안에서 규칙이 다릅니다.
  • 남의 플러그인은 이름 대신 "서드파티"로만 찍힙니다. 공식 마켓플레이스 것만 이름이 보입니다.
  • 버전을 올리면 MCP 관련 수치가 계단처럼 떨어집니다. 줄어든 게 아니라 세는 기준이 바뀐 것입니다.
  • 끌 수 있는 꼬리표와 못 끄는 꼬리표가 갈립니다. 이메일은 끄는 스위치가 목록에 없습니다.

켜는 건 환경 변수 몇 개입니다

표준 규격을 그대로 씁니다. 측정을 켜는 스위치 하나를 올리고, 지표를 내보낼 방식과 이벤트를 내보낼 방식을 각각 고른 뒤, 받을 주소를 적으면 됩니다. 둘 다 켤 필요는 없고 필요한 쪽만 골라도 됩니다.

# 1) 측정 켜기
export CLAUDE_CODE_ENABLE_TELEMETRY=1

# 2) 내보낼 방식 고르기 (둘 다 선택 사항)
export OTEL_METRICS_EXPORTER=otlp
export OTEL_LOGS_EXPORTER=otlp

# 3) 받을 주소
export OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4317

# 4) 확인이 안 되면 진단 로그로
claude --debug

확인 방법도 문서가 알려줍니다 — 지표 쪽은 세션이 시작될 때 나오는 세션 카운터가 받는 쪽에 찍히는지 보고, 이벤트 쪽은 프롬프트를 하나 보낸 뒤 사용자 프롬프트 이벤트가 오는지 보면 됩니다. 아무것도 안 오면 진단 로그를 켜고 내보내기 오류를 확인하라고 하고요. 내보내는 주기는 지표가 기본 60초, 이벤트가 5초인데, 디버깅 때만 줄이고 운영에서는 되돌리라는 단서가 붙어 있습니다.

지표 여덟 개, 비용은 달러로 나옵니다

지표 세는 것 단위
비용 요청마다 누적 달러
토큰 입력·출력·캐시 읽기·캐시 생성으로 갈림 토큰
실사용 시간 노는 시간 빼고, 타자와 처리로 나눠서 초
세션 새로 시작·재개·이어가기·대시보드 실행 구분 개수
코드 줄 수 추가·삭제를 모델별로 개수
편집 승인·거절 언어별·결정 출처별 개수
커밋 · PR 도구가 만든 것만 개수

여기서 하나 짚을 게 있습니다 — 토큰이 네 갈래로 나뉜다는 점입니다. 입력·출력만이 아니라 캐시를 읽은 양과 캐시를 만든 양이 따로 찍힙니다. 제가 공급사 세 곳의 캐시 요금을 비교하면서 쓰기 요금을 받는 곳이 한 곳뿐이라는 걸 정리했는데, 그 요금이 실제로 얼마나 발생하는지는 이 갈래를 봐야 알 수 있습니다. 요금표만으로는 계산이 안 되는 부분이죠.

비용을 무엇으로 쪼갤 수 있나

여기가 이 문서의 값어치입니다. 비용 지표에 꼬리표가 열 개 가까이 붙습니다. 모델은 물론이고 — 요청을 낸 주체가 본편인지 서브에이전트인지 보조 호출인지, 빠른 모드를 썼는지, 추론 강도가 다섯 단계 중 어디였는지까지요. 여기에 어떤 에이전트·어떤 스킬·어떤 플러그인·어떤 마켓플레이스·어떤 MCP 서버와 도구가 관여했는지가 붙습니다.

실무적으로 번역하면 이렇습니다 — "이번 달 요금의 몇 퍼센트가 서브에이전트에서 나왔나", "추론 강도를 한 단계 내리면 얼마가 줄어드나", "저 스킬 하나가 실제로 돈을 얼마나 쓰나"를 추측이 아니라 수치로 답할 수 있게 됩니다. 특히 보조 호출이라는 갈래가 따로 있다는 게 눈에 띕니다 — 내가 직접 시키지 않았는데 도는 것들이 한 덩어리로 분리돼 보인다는 뜻이니까요.

그런데 이름이 다 나오지는 않습니다

쪼갤 수 있다고 해서 다 읽히는 건 아닙니다. 문서가 항목마다 "어떤 경우에 이름이 그대로 적히고 어떤 경우에 대체되는지"를 밝혀놨는데, 그 기준이 항목마다 다릅니다. 이게 제일 헷갈리는 부분이라 표로 정리했습니다.

꼬리표 이름이 그대로 나오는 경우 뭉뚱그려지는 경우
스킬 내장 · 번들 · 직접 만든 것 · 공식 마켓플레이스 서드파티 플러그인의 스킬
에이전트 내장 · 공식 마켓플레이스 직접 만든 것 전부
MCP 서버 · 도구 내장 · 중계되는 것 · 공식 등록소 직접 설정한 것 전부
플러그인 · 마켓플레이스 공식 마켓플레이스만 그 밖은 전부 서드파티 표기

🔍 스킬과 에이전트의 규칙이 왜 다를까

표에서 첫 두 줄만 다시 보면 이상합니다. 내가 만든 스킬은 이름이 그대로 나오는데, 내가 만든 에이전트는 뭉뚱그려집니다. 문서는 이유를 밝히지 않았지만, 대체되는 쪽을 모아 보면 결이 보이긴 합니다 — 직접 만든 에이전트·직접 설정한 MCP 서버·손댄 워크플로가 전부 대체 대상이고, 이것들은 이름 자체에 사내 시스템명이나 프로젝트명이 들어가기 쉬운 것들입니다. 반면 스킬은 작업 절차서에 가까워 상대적으로 덜 민감하다고 본 걸까요. 어디까지나 제 추측이고, 확실한 건 "쪼갤 수 있다"와 "누가 썼는지 읽힌다"가 같은 말이 아니라는 점입니다. 직접 만든 스킬로 절차를 관리하고 계신다면 스킬을 만드는 이야기가 여기서 한 번 더 유리하게 작용하는 셈입니다. 대신 남에게 배포한 플러그인은 상대 대시보드에 이름이 안 남습니다 — 마켓플레이스로 배포하는 쪽을 생각한다면 알아둘 만한 비대칭입니다.

숫자가 흔들리는 자리 셋

① 버전을 올리면 MCP 수치가 뚝 떨어집니다. 문서가 직접 경고하는데, 특정 버전 이전에는 MCP 도구를 한 번 부른 뒤의 모든 요청에 서버 이름을 붙였고, 그 이후로는 그 도구 결과를 실제로 쓴 요청에만 붙입니다. 그래서 업그레이드 시점에 대시보드가 계단처럼 내려앉습니다. 아껴서 줄어든 게 아니라 세는 기준이 바뀐 것이죠. 이걸 모르고 보면 "MCP 정리했더니 비용이 줄었다"는 잘못된 결론이 나옵니다.

② 내보내는 방식에 따라 단위가 사라집니다. 프로메테우스 하나만 쓰면 달러·토큰·초 같은 단위가 빠진 채 나갑니다. 형식을 맞추기 위해서고 지표 이름은 그대로이며, 다른 방식과 같이 쓰면 단위가 유지됩니다. 즉 같은 수치인데 어디로 보내느냐에 따라 "단위 없는 숫자"가 되는 셈이라, 대시보드에서 달러인지 토큰인지 헷갈릴 여지가 생깁니다.

③ 켜짐과 꺼짐의 기본값이 비대칭입니다. 꼬리표 중 세션 식별자와 계정 식별자는 기본으로 붙고, 앱 버전과 실행 경로는 기본으로 안 붙습니다. 즉 "누가 썼나"는 기본으로 남고 "어느 버전에서 썼나"는 기본으로 안 남습니다. 그런데 ①번 문제가 바로 버전 차이 때문에 생기는 것이니, 이 조합은 좀 얄궂습니다. 원인을 추적하려면 기본으로 꺼져 있는 쪽을 일부러 켜둬야 합니다. 그리고 끄는 스위치가 따로 있는 꼬리표는 다섯 개인데, 이메일은 그 목록에 없습니다 — 로그인 방식에 따라 붙으면 그대로 나갑니다.

🙋 정직하게 밝혀둘 것

  • 제가 받는 쪽을 세워 실제로 찍어보지 않았습니다. 지표가 얼마나 촘촘히 오는지, 저장 비용이 얼마나 드는지는 제가 잰 값이 없습니다.
  • 이벤트 목록은 스물다섯 개가 넘어 옮기지 않았습니다. 훅 실행·압축·스킬 활성화·보존 정리까지 항목이 따로 있는데, 실제로 쓸 때는 문서의 목록을 직접 보셔야 합니다.
  • "이름이 가려지니 안전하다"는 뜻이 아닙니다. 뭉뚱그려지는 건 지표에 붙는 꼬리표이고, 이벤트 쪽은 설정에 따라 더 자세한 내용이 나갑니다. 무엇이 나가는지는 별도로 따져야 합니다.
  • 반대로 "측정이 쓸모없다"도 아닙니다. 가려지는 건 이름이지 금액이 아닙니다. 항목별 합계는 그대로 나오니 어디가 큰지는 알 수 있습니다.

🗺️ AI 지출 전체 지도

재는 것은 줄이기 위한 첫 단계일 뿐입니다. 어디가 큰지 확인한 다음에는 요금제를 고르고, 캐시를 걸고, 모델을 조합하고, 상한을 걸어야 하죠. 지금까지 확인한 것들을 일곱 단계 지도 한 장으로 묶어뒀습니다.

플러그인 이름이 사용 기록에서 가려지는 기준은 마켓플레이스 등급입니다. 공식 등급은 이름이 그대로 찍히고, 커뮤니티와 제3자 등급은 불러온 이벤트에서 「제3자」로 바뀌며 설치 이벤트에서는 이름 칸이 빠집니다. 등급을 나누는 기준과 설치 전 점검을 따로 정리했습니다. 비용을 플러그인별로 쪼개 보는 이 글의 방법은 그대로이니, 이름이 안 보이면 등급부터 확인해 보세요.

사용 기록을 끄면 따라서 꺼지는 기능이 하나 있습니다. 명령줄 도구가 남기는 힌트로 플러그인 설치를 권하는 창은, 통계 끄기 변수를 켠 세션이나 외부 클라우드 사업자 세션처럼 사용 분석이 꺼진 곳에서는 뜨지 않습니다. 플러그인 설치 권유가 뜨는 조건과 끄는 법을 정리했으니, 사용 기록 설정을 바꿀 때 함께 보세요.

자주 묻는 것

Q. 혼자 쓰는데도 세울 값어치가 있나요?

솔직히 받는 쪽을 세우는 수고가 듭니다. 다만 이 문서를 읽고 나서 생각이 좀 바뀌었는데, 추론 강도와 빠른 모드 여부가 비용 항목의 꼬리표로 붙는다는 점 때문입니다. "강도를 내리면 싸진다"는 말은 많이 하지만 내 작업에서 실제로 얼마가 줄어드는지는 각자 다르니까요. 한 달만 붙여 두고 비교해도 그 답은 나옵니다. 반대로 지표를 안 보고 감으로 줄이면 품질만 깎일 수 있습니다.

Q. 회사에서 켜면 개인이 끌 수 있나요?

문서에 관리 설정으로 보낼 주소를 잠그는 방법이 따로 있습니다. 팀·부서 같은 꼬리표를 조직이 붙여 나눠 보는 구성도 안내하고요. 특히 짚어둘 게 하나 있는데 — 회사 로그인 관문을 거쳐 접속하면 신원 정보가 관문 쪽 값으로 덮어써집니다. 내가 직접 넣은 사용자 관련 값은 그 경우 무시됩니다. 순서가 정해져 있어서, 개인이 꼬리표를 바꿔 붙여도 회사 경로에서는 안 먹는 구조입니다.

Q. 꼬리표를 다 붙이면 손해는 없나요?

있습니다. 문서가 꼬리표 가짓수를 조절하는 환경 변수를 따로 두고 이유를 적어놨는데, 가짓수가 적을수록 성능이 좋고 저장 비용이 낮지만 분석은 거칠어진다는 맞바꿈입니다. 세션 식별자처럼 값의 종류가 무한히 늘어나는 꼬리표가 특히 그렇고요. 실제로 프롬프트 식별자나 작업 폴더 경로 같은 것은 지표에는 아예 안 붙이고 이벤트에만 붙입니다 — 문서가 이유를 "가짓수가 끝없이 늘어나기 때문"이라고 명시합니다. 비용을 재려고 켠 것이 저장 비용을 만드는 구조라, 처음에는 좁게 시작하는 편이 낫겠습니다.

✨ 오늘 확인한 것 정리

환경 변수 몇 개로 비용을 달러 단위로, 토큰을 네 갈래로 내보낼 수 있습니다. 비용에는 본편·서브에이전트·보조 호출 구분, 추론 강도, 스킬·플러그인·MCP 출처가 꼬리표로 붙어서 "어디가 큰지"를 수치로 답할 수 있고요. 다만 내가 만든 에이전트와 내가 설정한 MCP 서버는 이름이 뭉뚱그려지고, 스킬은 그대로 나옵니다 — 같은 문서 안에서 규칙이 갈립니다. 그리고 버전을 올리면 MCP 수치가 계단처럼 떨어지는데, 줄어든 게 아니라 세는 기준이 바뀐 것입니다.

※ 확인 경로(2026년 8월 17일 기준): code.claude.com/docs/en/monitoring-usage. 지표·꼬리표 이름과 화면 표현은 제가 우리말로 옮긴 것입니다.

※ 이름이 대체되는 규칙과 집계 기준은 버전에 따라 바뀝니다. 대시보드를 만들기 전에 문서의 해당 절을 한 번 열어 확인하시길 권합니다.

반응형
Comments