# 옵저버빌리티란? 스프레드시트 팬을 위한 쉬운 안내

URL: https://formula.dog/ko/journal/옵저버빌리티란
Type: blog
Locale: ko
Published: 2026-10-17
Updated: 2026-10-17

---

> 옵저버빌리티는 로그, 메트릭, 트레이스로 미리 정해 두지 않은 질문에도 답하는 능력이에요. 붙여넣기만 하면 되는 수식과 함께 정리했어요.

옵저버빌리티란 시스템이 내보내는 데이터, 즉 로그, 메트릭, 트레이스만으로 시스템이 지금 무엇을 하고 있고 왜 그러는지 알아내는 능력이에요. 모니터링이 "뭔가 망가졌다"고 알려 준다면, 옵저버빌리티는 그다음 질문을 던지게 해 줘요. 어디서, 어떤 고객에게, 언제부터인지요. 스프레드시트를 다루는 분이라면 이미 작은 버전을 하고 계실 거예요. 이상한 숫자를 원본 행까지 거슬러 올라가 확인할 때 말이죠.

## 1분 요약: 스프레드시트 하는 분을 위한 설명

매출 시트의 합계가 이상해 보인다고 해 볼게요. "합계가 틀렸다"고 알려 주는 대시보드가 모니터링이에요. 그런데 지역별, 날짜별, 제품별로 필터를 걸어서 400개 행을 한꺼번에 두 배로 만든 가져오기 작업을 찾아낼 수 있다면, 그게 옵저버빌리티예요.

소프트웨어 팀도 똑같은 벽에 부딪혀요. 결제 페이지가 느려지고 알림이 울려요. 그러면 어떤 서비스, 어떤 고객 구간, 어떤 배포가 원인인지 찾아야 하죠. 이걸 가능하게 해 주는 데이터를 텔레메트리라고 부르고, 그 데이터를 얼마나 잘 활용하느냐가 사람들이 말하는 옵저버빌리티예요.

비스킷도 비슷한 일을 해요. 공을 잃어버렸다는 말을 들을 필요는 없어요. 공을 마지막으로 본 곳부터 되짚어 가면 돼요.

![공책에 그린 세 개의 평행한 타임라인과 황동 스톱워치](https://fdzlnqpwsaniezitwiuw.supabase.co/storage/v1/object/public/cms-media/formula-dog/2026-10/ddbb29-img1.webp)

## 모니터링과 옵저버빌리티: 알고 있던 문제와 예상 밖의 문제

모니터링은 미리 정해 둔 것을 지켜봐요. CPU 사용률 90% 초과, 오류율 2% 초과, 응답이 멈춘 페이지 같은 것들이요. 규칙을 직접 쓰고, 규칙이 깨지면 도구가 소리를 내는 방식이에요.

옵저버빌리티는 규칙을 써 둔 적 없는 문제를 위한 거예요. OpenTelemetry 프로젝트는 이를 시스템 내부를 몰라도 바깥에서 시스템을 이해하는 방법으로 설명해요. 우리가 미처 알지 못했던 미지의 문제에 도움이 되는 거죠.

둘 중 하나가 다른 하나를 대신한다고 생각하지 마세요. 모니터링은 연기 감지기이고, 옵저버빌리티는 나중에 꺼내 보는 평면도와 CCTV 영상이에요. 둘 다 필요해요.

## 로그, 메트릭, 트레이스: 세 가지 원재료

거의 모든 설명이 같은 세 가지 신호로 돌아가요. 스프레드시트 관점에서 하나씩 볼게요.

**로그**는 개별 사건에 대해 시간이 찍힌 메시지예요. 시트로 치면 사건 하나당 행 하나예요. 시간, 사용자, 행동, 결과가 들어가요. 가장 많은 세부 정보를 담지만 용량도 가장 많이 차지해요.

**메트릭**은 시간에 따라 집계한 숫자예요. 오류율, 분당 요청 수, 사용 중인 메모리 같은 값이죠. 시트로 치면 요약 탭이에요. 저장 비용이 싸고 차트로 그리기도 쉽지만, 어떤 요청 하나가 실패했는지는 알려 주지 못해요.

**트레이스**는 한 요청이 여러 서비스를 거치는 동안의 흐름을 따라가며, 각 단계에서 얼마나 걸렸는지 보여 줘요. 시트로 치면 주문 번호 하나를 탭 다섯 개에서 추적하면서 각 탭에 얼마나 머물렀는지 적는 것과 같아요.

흔히 이렇게 줄여 말해요. 메트릭은 무언가 잘못됐다고 알려 주고, 트레이스는 대략 어디인지 알려 주고, 로그는 세부 내용을 알려 준다고요. 실제 셀에서 어떻게 보이는지 바로 보여 드릴게요.

## 로그 5,000줄 파일에서 시작하기: Sheets 예제

애플리케이션 로그 5,000줄을 Google Sheets로 내보냈다고 해 볼게요. A열은 타임스탬프, B열은 서비스 이름, C열은 상태 코드, D열은 응답 시간(밀리초)이에요. 따로 표시하지 않은 수식은 Excel과 Sheets 모두에서 작동해요.

먼저 오류율이에요. 전형적인 메트릭이죠.

`=COUNTIF(C2:C5001, ">=500") / COUNTA(C2:C5001)`
- 범위 C2:C5001은 상태 코드 열이에요.

- 
조건 ">=500"은 서버 오류를 모두 세요.

- 
COUNTA로 나누면 전체 요청에서 차지하는 비율이 나와요. 셀 서식을 백분율로 지정하세요.

이건 모니터링이에요. 숫자 하나, 기준선 하나죠. 이제 옵저버빌리티 부분이에요. 어느 서비스가 원인일까요?

`=QUERY(A1:D5001, "select B, count(C) where C >= 500 group by B order by count(C) desc", 1)`이 수식은 Sheets 전용이에요. QUERY에 대응하는 Excel 함수가 없거든요. 인수는 이래요.

- 
데이터는 머리글을 포함한 A1:D5001이에요.

- 
텍스트는 SQL과 비슷한 짧은 질의예요. 서비스별 오류 수를 세고 많은 순서로 정렬해요.

- 
마지막 1은 머리글 행이 한 줄이라는 뜻이에요.

Excel 365에서는 다른 방식으로 같은 답을 얻어요.

`=LET(s, FILTER(B2:B5001, C2:C5001>=500), u, UNIQUE(s), HSTACK(u, COUNTIF(s, u)))`FILTER, UNIQUE, HSTACK은 Excel 365나 2021에서만 쓸 수 있어요. Excel 2016에서는 이 수식이 동작하지 않아요. 구버전을 쓰신다면 피벗 테이블이 더 나아요.

느린 요청을 볼 때는 평균보다 95번째 백분위수가 더 정직해요.

`=PERCENTILE(D2:D5001, 0.95)`평균 응답 시간이 180 ms인데 95번째 백분위수가 2,400 ms라면, 20명 중 1명은 나쁜 경험을 하고 있는 거예요. 평균은 이런 문제를 가려 버려요. 옵저버빌리티 도구가 피하도록 돕고자 하는 함정이 바로 이거예요.

![강아지 발이 책상 위에 놓인 채 스프레드시트가 열린 노트북](https://fdzlnqpwsaniezitwiuw.supabase.co/storage/v1/object/public/cms-media/formula-dog/2026-10/824719-img2.webp)

비스킷이 이미 찾아 놨어요. 수식이 기억나지 않을 때는 [Formula.dog](https://formula.dog)에 평범한 말로 설명하면 이런 수식으로 바꿔 줘요.

## 평범한 업무 하루에서 옵저버빌리티가 나타나는 순간

서버를 운영하지 않아도 옵저버빌리티와 마주쳐요. "화요일에 문의가 왜 두 배로 늘었지?"라고 묻는 고객지원 팀장이 그 예예요. 청구 차이를 한 건의 공급사 송장까지 거슬러 올라가 찾는 재무 분석가, 밤사이 가져오기 작업이 파일 하나를 조용히 건너뛰었다는 걸 발견한 운영 담당자도 마찬가지예요.

소프트웨어에서는 시스템이 여러 곳으로 나뉘어 있어서 질문이 더 날카로워져요. 버튼 한 번을 누르면 API 게이트웨이, 인증 서비스, 데이터베이스, 결제 제공자를 거칠 수 있어요. 실패했을 때 화면에 뜨는 오류 메시지는 대개 문제가 시작된 곳이 아니에요. 트레이스는 전체 연결 고리를 보여 주고, 느리거나 깨진 구간을 강조해서 아무도 추측하지 않게 해 줘요.

자주 나오는 용어 세 가지를 쉽게 풀어 볼게요.

- 
**계측(Instrumentation)**은 텔레메트리를 내보내는 코드를 추가하는 일이에요. 원래 타임스탬프와 ID 열이 없던 보고서에 그 열을 새로 넣는 것과 비슷해요.

- 
**카디널리티**는 한 필드가 가질 수 있는 서로 다른 값의 개수예요. 지역은 카디널리티가 낮고, 사용자 ID는 아주 높아요. 카디널리티가 높은 필드는 가장 날카로운 질문에 답해 주지만 보관 비용도 가장 많이 들어요.

- 
**SLO(서비스 수준 목표)**는 스스로에게 하는 약속이에요. 예를 들어 "결제의 99.5%가 2초 안에 끝난다"처럼요. 막연한 걱정을 지켜볼 수 있는 숫자로 바꿔 줘요.

## 대시보드가 많다고 옵저버빌리티가 되는 건 아니다

벤더들이 달가워하지 않을 의견을 하나 말할게요. 세 가지 신호를 모두 갖고 있다고 해서 옵저버빌리티가 있는 건 아니에요. 메트릭은 한 도구에, 로그는 다른 도구에, 트레이스는 또 다른 도구에 있다면, 새벽 2시에 누군가 손으로 그것들을 맞춰 봐야 해요. 공유 ID 열 없이 통합 문서 세 개를 펼쳐 놓은 것과 같아요.

테스트는 간단해요. 예상치 못한 문제가 터졌을 때, 새 코드를 배포하지 않고도 데이터에 새 질문을 던질 수 있나요? 답이 "로깅을 추가하고 다시 배포해야 해요"라면, 그건 모니터링에 부가 기능을 붙인 것뿐이에요.

실무에서 차이를 만드는 건 두 가지예요.

- 
**모든 이벤트에 맥락 붙이기.** 로그 한 줄마다 요청 ID, 서비스 이름, 버전을 넣어서 나중에 묶고 걸러 낼 수 있게 하세요. 모든 내보내기 파일에 있었으면 싶은 ID 열이에요.

- 
**충분히 오래 보관하기.** 답은 사용자 ID나 주문 ID 같은 카디널리티가 높은 데이터에 숨어 있어요. 그리고 바로 그 데이터가 청구서를 키우는 주범이기도 해요.

## 실제로 쓰는 도구와 각각의 비용

아이디어를 이해하는 데 도구를 살 필요는 없어요. 그래도 시장은 알아 둘 만해요.

[OpenTelemetry](https://opentelemetry.io/docs/concepts/observability-primer/)는 텔레메트리를 만들어 내는 공개 표준이에요. 저장하거나 보는 곳이 아니에요. 한 번 계측해 두면 원하는 곳으로 데이터를 보낼 수 있어요.

Grafana Cloud는 공개 표준을 중심으로 만들어졌어요. 매달 활성 메트릭 시리즈 10,000개와 로그, 트레이스, 프로파일 각각 50GB의 무료 티어를 제공해요. 오픈소스 스택을 직접 호스팅할 수도 있지만, 그러려면 Prometheus, Loki, Tempo를 직접 조립해야 해요.

Datadog은 올인원 선택지예요. 에이전트만 설치하면 몇 분 안에 쓸 만한 대시보드가 나오고, 인프라, APM, 로그를 한곳에서 봐요. 문제는 청구예요. 호스트당 요금(인프라만 해도 호스트당 월 $15 정도)에 로그와 커스텀 메트릭 요금이 따로 붙어서, 호스트가 50개쯤 넘으면 금방 불어나요. 영구 무료 티어도 없어요.

New Relic은 가격 면에서 그 중간쯤이에요. 월 100GB의 데이터 수집이 무료이고, 그 이후에는 GB당 $0.40이에요. 전체 플랫폼 사용자 1명이 포함돼요.

투자할 가치가 있는 경우는 이래요. 플랫폼 팀은 작은데 인프라를 돌보는 인프라를 직접 운영하고 싶지 않을 때요. 반대로 서버가 두 대이고 개발자가 한 명이라면 건너뛰어도 돼요. 좋은 로그 형식과 위의 수식만으로도 놀랄 만큼 멀리 갈 수 있어요.

![저녁 책상 램프 옆 러그 위에 쉬고 있는 골든 리트리버](https://fdzlnqpwsaniezitwiuw.supabase.co/storage/v1/object/public/cms-media/formula-dog/2026-10/a1c8e7-img3.webp)

## 엔지니어가 아니라면 월요일에 할 일

트레이스를 직접 볼 일은 없을지도 몰라요. 그래도 숫자를 보고하는 일을 하신다면 옵저버빌리티 사고방식이 잘 옮겨 가요.

- 
**모든 내보내기에 ID 붙이기.** 똑똑한 수식 하나보다 서로 연결할 수 있는 열 하나가 더 큰 힘을 가져요.

- 
**원본 행 보관하기.** 상세 탭 위에 값을 덮어쓰지 마세요. 요약은 메트릭이고, 원본 행은 로그예요.

- 
**'정상'이 무엇인지 적어 두기.** 정의하지 않은 기준선은 울릴 수가 없어요.

- 
**세 번째 질문 던지기.** "매출이 줄었어요"는 알림이에요. "어디서요?"는 메트릭이에요. "어느 행 때문에요?"가 옵저버빌리티예요.

이렇게 해 두면 다음 번에 시트에서 이상한 합계가 나와도 오후 내내 붙잡고 있을 필요 없이 10분이면 설명할 수 있어요. 잘했어, 비스킷. 스프레드시트 정리 끝!

## FAQ

### 옵저버빌리티란 쉽게 말해 무엇인가요?

로그, 메트릭, 트레이스처럼 시스템이 내보내는 데이터를 보고, 시스템을 먼저 바꾸지 않고도 무엇이 잘못되고 있는지 알아내는 능력이에요.

### 모니터링과 옵저버빌리티의 차이는 무엇인가요?

모니터링은 미리 정의한 조건을 지켜보다가 깨지면 알려 줘요. 옵저버빌리티는 나중에 데이터를 탐색해서 예상하지 못한 질문에도 답할 수 있게 해 줘요.

### 옵저버빌리티의 세 기둥은 무엇인가요?

로그는 시간이 찍힌 사건 기록, 메트릭은 시간에 따라 집계한 숫자, 트레이스는 하나의 요청이 여러 서비스를 거치는 흐름이에요. 셋을 합치면 무엇인가 잘못됐는지, 대략 어디인지, 어떤 세부 내용인지 알 수 있어요.

### 시작하려면 특별한 도구가 필요한가요?

개념을 익히는 데는 필요 없어요. 구조화된 로그 내보내기 파일과 스프레드시트만으로 오류율과 가장 느린 서비스를 확인할 수 있어요. Grafana, Datadog, New Relic은 데이터량과 조사 속도가 커질 때 의미가 생겨요.

### OpenTelemetry란 무엇인가요?

로그, 메트릭, 트레이스 같은 텔레메트리를 만들고 보내는 공개 표준이에요. 데이터를 저장하거나 보여 주지는 않아서, 원하는 백엔드와 함께 써야 해요.

### 옵저버빌리티는 왜 비싼가요?

비용은 데이터량과 사용자 ID, 주문 ID 같은 카디널리티가 높은 필드에 따라 늘어나요. 호스트별, 신호별 요금이 겹치면 빠르게 불어나서, 많은 팀이 보관 기간과 샘플링 규칙을 정해 둬요.