메트릭

시스템의 상태를 수치로 측정한 데이터입니다. "지금 서버가 어떤 상태인지" 숫자로 파악하고 알림을 설정하는 데 사용합니다.

왜 필요한가?

메트릭 유형

유형설명예시
Counter계속 증가하는 누적값총 요청 수, 에러 수
Gauge오르내리는 현재값CPU 사용률, 메모리
Histogram값의 분포응답 시간 분포
Summary백분위 계산p99 응답 시간

주요 메트릭 예시

# Counter - 누적 요청 수
http_requests_total{method="GET", path="/api/users"} 15234

# Gauge - 현재 CPU 사용률
cpu_usage_percent{host="server1"} 72.5

# Histogram - 응답 시간 분포
http_request_duration_seconds_bucket{le="0.1"} 8000
http_request_duration_seconds_bucket{le="0.5"} 9500

중요 메트릭 방법론

USE (인프라용)

항목설명예시
Utilization사용률CPU 80%
Saturation포화도대기 큐 길이
Errors에러 수디스크 에러

RED (서비스용)

항목설명예시
Rate초당 요청 수500 req/s
Errors에러율0.1%
Duration응답 시간p99 200ms

메트릭 수집 흐름

애플리케이션 ─── 메트릭 노출 ───▶ 수집기 ───▶ 저장소 ───▶ 시각화/알림
     │                            │           │            │
  /metrics                   Prometheus   TimeSeriesDB   Grafana

대표 도구

도구역할
Prometheus메트릭 수집 및 저장
Grafana시각화, 대시보드
Datadog통합 모니터링 (SaaS)
CloudWatchAWS 모니터링

로그 vs 메트릭

상황사용
"CPU 80% 넘으면 알림"메트릭
"왜 CPU가 올랐지?"로그
"실시간 대시보드"메트릭
"장애 원인 추적"로그

CSLOG에서 보기