LLM Observability 도입하기
LLM(Large Language Model)을 제품에 붙이기 시작하면 기존 APM으로는 보이지 않는 영역이 생깁니다. 추론 API가 HTTP 200을 반환해도 응답 품질이 깨져 있을 수 있고, 트래픽 증가가 그대로 토큰 비용 폭증으로 이어지며, 같은 프롬프트도 매번 다른 응답을 내놓아 재현이 어렵습니다. 이 가이드는 LLM Observability가 왜 별도 접근이 필요한지, WhaTap LLM Observability로 어떤 관측 흐름을 만들 수 있는지 정리합니다.
LLM 기능을 프로덕션에 투입했거나 투입 예정인 백엔드 개발자, SRE, 플랫폼 엔지니어를 대상으로 합니다. 관점·개념·메뉴 맵·활용 시나리오를 다루며, 에이전트 설치 절차나 상세 파라미터는 하위 문서로 분기합니다.
기존 APM만으로 부족한 이유
HTTP 200 뒤에 숨은 모델 이상
LLM 추론 엔진은 할루시네이션이나 비정상 응답도 HTTP 200으로 반환합니다. 서버 지표만 보면 문제가 드러나지 않기 때문에, 별도 관측이 없으면 장애 인지가 늦어집니다.
보이지 않는 토큰 비용
LLM API는 호출마다 토큰 단위로 과금합니다. 건당 비용은 모델·프롬프트 길이·응답 크기에 따라 크게 달라집니다. 에러로 실패한 요청에도 토큰이 소비되므로, 낭비 비용을 별도로 추적해야 합니다.
사용자 체감 응답 지연
LLM은 기존 API보다 수 초 느릴 수 있습니다. 스트리밍 환경의 첫 토큰 지연과 토큰 생성 속도 저하는 사용자가 "멈춘 것"으로 체감합니다. 평균값만으로는 일부 구간의 느려짐을 놓치기 쉽습니다.
프롬프트 재현 불가
같은 프롬프트라도 매번 다른 응답이 나옵니다. 문제가 발생한 시점의 프롬프트·모델·파라미터를 보존하지 않으면 이슈 재현이 불가능합니다.