
OpenTelemetry와 MCP를 사용하여 Go AI 서비스의 LLM 토큰 사용량을 모니터링하는 방법
요약
Go 언어로 구축된 AI 서비스에서 OpenTelemetry와 MCP를 활용해 LLM 토큰 사용량을 추적하고 모니터링하는 방법을 다룹니다. 예기치 못한 AI 비용 폭증을 방지하기 위한 텔레메트리 적용의 중요성을 강조합니다.
핵심 포인트
- OpenTelemetry를 통한 Go AI 서비스의 토큰 사용량 추적 방법 제시
- MCP를 활용하여 백엔드에서 발생하는 텔레메트리 데이터 조사
- AI 비용 관리 및 거버넌스를 위한 모니터링의 필수성 강조
LLM에 보내는 모든 프롬프트에는 비용이 발생합니다. 하지만 그 토큰들이 실제로 어디로 가고 있는지 정확히 알고 계신가요? 저는 기존의 Go AI 서비스에 OpenTelemetry를 적용하여 모든 토큰을 추적하도록 구성했으며, 이후 MCP를 사용하여 텔레메트리 (telemetry)를 조사함으로써 무대 뒤에서 실제로 어떤 일이 일어나고 있는지 밝혀냈습니다.

AI 서비스의 토큰 사용량을 모니터링해야 하는 이유
모니터링되지 않는 AI는 순식간에 예산을 초과할 수 있습니다. 최근 한 기술 기업은 내부 토큰 사용량을 아무도 추적하지 않아 단 한 달 만에 5억 달러라는 막대한 Claude AI 비용 청구서를 받았습니다.
더 읽어보기 :
직원 라이선스에 사용 제한을 두지 않아 한 달 만에 5억 달러의 Claude AI 비용을 청구받은 기업
한 기업이 직원 라이선스에 대한 지출 제한이 없다는 이유로 단 한 달 만에 AI 사용료로 5억 달러라는 충격적인 청구서를 받았습니다. AI 도구에 대한 무제한 접근의 영향과 기업 AI 지출에 대한 거버넌스 (governance)의 필요성을 살펴보세요.
복잡한 자동화 워크플로 (workflows)와 과도한 일일 프롬프트는 재무 담당자가 급증을 알아차리기도 전에 조용히 예산을 갉아먹을 것입니다.
이를 해결하기 위해 Datadog을 사용해 봅시다 (아, 잠시만요...)
AI 애플리케이션의 경우 모든 모델, 사용자, 프롬프트가 추적해야 할 데이터를 추가하기 때문에 Datadog 비용이 비싸질 수 있습니다. 또한 AI는 많은 양의 텍스트를 생성하며, 이는 저장 비용을 증가시킵니다. 또한 Datadog 전용 도구를 사용하기 때문에 나중에 다른 플랫폼으로 전환하는 것이 어렵고 많은 작업이 필요할 수 있습니다.
우리가 OpenTelemetry를 선택한 몇 가지 이유는 다음과 같습니다:
- Datadog "커스텀 메트릭 세금 (Custom Metrics Tax)": 생성형 AI (GenAI) 앱을 추적하면 너무 많은 고유 태그 (unique tags)가 생성되어 Datadog 커스텀 메트릭 비용이 증가합니다 ("Datadog 세금").
- 벤더 종속성 (Vendor Lock-In): Datadog의 LLM 기능은 독점적인 dd-trace-go 계측 (instrumentation)에 의존하므로, 다른 플랫폼으로 마이그레이션하는 데 많은 비용과 코드 작업이 필요합니다.
- 셀프 호스팅 (Self-Hosted) 옵션: 셀프 호스팅을 사용하면 AI 데이터 수집 (ingestion)을 완전히 제어할 수 있어, 대규모 LLM 페이로드 (payload)로 인한 값비싼 로그 인덱싱 (log indexing) 비용을 방지할 수 있습니다.
기존 Go AI 서비스에 OpenTelemetry 추가하기
이 블로그는 계측 (instrumentation) 자체보다는 이미 생성되고 있는 데이터를 모니터링하는 데 주로 초점을 맞춥니다. 아직 계측을 설정하지 않았다면, 먼저 이 리소스들을 확인해 보세요. 시작하는 데 도움이 될 것입니다. (또는, 솔직히 말해서 AI 어시스턴트에게 물어봐도 됩니다. 꽤 간단하거든요.)
다음 링크를 참고하세요: https://signoz.io/blog/golang-monitoring/
관측성 (Observability)를 위해 SigNoz를 선택한 이유
이 가이드에서는 관측성 (observability)을 위해 SigNoz를 사용할 것입니다. SigNoz는 오픈 소스이며, 셀프 호스팅을 지원하고, 이제 막 시작하는 단계라면 아주 좋은 선택입니다. 셀프 호스팅을 하면 비용을 낮게 유지하면서 데이터에 대해 더 많은 제어권을 가질 수 있습니다.
거대한 실수 (SIGNOZ에 대해 AI에게 도움을 요청하기)
SigNoz는 빠르게 성장하는 오픈 소스 (Open Source) 프로젝트이며, 이는 문서, 설치 단계, 사용자 인터페이스 (User Interface), 그리고 베스트 프랙티스 (Best Practices)가 끊임없이 진화하고 있음을 의미합니다. SigNoz 팀은 항상 작업을 더 쉽게 만들 수 있는 더 나은 방법을 찾아내고 있으므로, SigNoz를 사용할 때는 AI가 말하는 것을 맹목적으로 따르기보다 항상 공식 문서를 먼저 확인하십시오.
그렇지 않으면, 이미 변경된 사항들에 대해 몇 시간 동안 시간을 허비하며 미궁에 빠질 수 있으며, 결국 사람들에게 _"왜 그냥 문서를 읽었어야 했는지"_를 말하는 블로그 포스트를 쓰게 될 수도 있습니다.
...적어도 제 친구에게는 그런 일이 일어났습니다. 😉
Linux에 SigNoz 설치하기
다음 링크를 따르세요 : https://signoz.io/docs/install/docker/
실습하기
메트릭 (Metrics) 및 로그 (Logs) 수집 확인
대시보드 (Dashboard) 생성
AI 토큰 사용량 모니터링
알림 (Alert) 생성
시작하기 전에 알림 채널 (Notification Channel)을 생성했는지 확인하십시오. 저는 Slack을 선택했습니다. 이번에는 설정이 훨씬 간단했습니다.
다음 링크를 따르세요 : https://docs.slack.dev/messaging/sending-messages-using-incoming-webhooks/
이제 알림을 생성해 보겠습니다. 저는 시간이 지남에 따라 생성된 총 토큰 수를 측정하는 llm_token_total을 사용했습니다.
이 예시에서는 1분 이내에 llm_token_total > 1000일 때 알림이 트리거되도록 구성했습니다. 이것은 단지 예시일 뿐입니다. 먼저 며칠 동안 토큰 사용량을 모니터링하여 일반적인 사용 패턴을 이해한 다음, 예산에 맞는 알림 임계값 (Threshold)을 설정하는 것이 좋습니다.
결과: 토큰 사용량 급증 후 Slack 알림
알림 조건이 충족되면—예를 들어, 토큰 예산을 초과하는 경우—Slack으로 사용자 정의 메시지가 전송됩니다. 이를 통해 사용량을 더 쉽게 추적하고 예산을 더욱 효과적으로 계획할 수 있습니다.
MCP를 사용하여 더 깊이 탐색하기
저는 VS Code + Cline + 무료 DeepSeek 모델 설정을 사용했는데, 그 이유는 음, _무료(free)_였기 때문입니다. 하지만 여러분이 선호하는 스택이 무엇이든 자유롭게(feel free) 사용하세요—언어유희(pun)를 의도한 것이 맞습니다. 최신 업데이트를 통해, 어떤 도구를 선택하든 MCP 서버에 연결하는 것이 놀라울 정도로 간단해졌습니다.
보너스 챌린지
만약 여기까지 실제로 읽으셨다면, 한 걸음 더 나아가 보세요. 몇 가지 사용자 정의 메트릭 (Custom Metrics)을 추가한 다음, OpenTelemetry와 SigNoz를 사용하여 AI 스택을 관찰한 방법에 대해 블로그를 작성해 보세요. 그리고 그 블로그에 이 글을 참조(reference)로 꼭 추가하시고요!
무엇이 잘 작동했는지, 무엇이 그렇지 않았는지, 그리고 그 과정에서 익힌 관찰성 (Observability) 트릭들을 공유해 주세요. 서로에게서 배워봅시다.
결론
이 모든 것을 설정하는 데는 3~4시간밖에 걸리지 않았는데, 얻게 되는 가시성 (Visibility)과 통찰력 (Insights)을 고려하면 솔직히 그리 많은 시간은 아닙니다. 여기까지 오셨다면 이미 어려운 부분은 다 하신 셈입니다. 그러니 여러분의 프로젝트에 OpenTelemetry를 추가하고 관찰성 (Observability) 여정을 시작해 보세요.
마지막으로, 오픈 소스에 지속적으로 투자하고 있는 SigNoz에 큰 감사를 표합니다. 만약 이 가이드가 도움이 되었거나 그들이 구축하고 있는 것을 응원하고 싶다면, 그들의 GitHub 저장소에 스타(star)를 주는 것을 고려해 보세요. 이는 이러한 프로젝트를 지원하는 데 있어 작지만 큰 힘이 되는 행동입니다.
GitHub logo SigNoz / signoz
SigNoz는 여러분의 팀과 AI 에이전트를 위한 오픈 소스 기반의 OpenTelemetry 네이티브 관찰성 (Observability) 플랫폼입니다. APM, 분산 트레이싱 (Distributed Tracing), 로그 관리 (Log Management), 인프라 모니터링 (Infra Monitoring) 등의 기능을 통해 로그 (Logs), 메트릭 (Metrics), 트레이스 (Traces)를 하나의 도구에서 확인할 수 있습니다. SigNoz MCP 및 네이티브 AI 팀원 (SigNoz Cloud 내)과 결합하여 더욱 탄력적인 애플리케이션을 구축할 수 있도록 도와줍니다.

AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기





