Grafana & Loki
Grafana와 Loki를 중심으로 한 PLG 스택은 메트릭과 로그를 통합해 시스템 가시성(Observability)을 확보합니다.
PLG 스택 전체 구조
Spring Boot
/ \
메트릭 노출 로그 출력
/actuator/prometheus stdout
│ │
▼ ▼
Prometheus Promtail
(메트릭 수집) (로그 수집)
│ │
▼ ▼
Prometheus DB Loki
(시계열 저장) (로그 저장)
│ │
└──────┬───────────┘
▼
Grafana
(통합 시각화 / 알림)
역할 분담
| 도구 | 역할 | 데이터 유형 | 쿼리 언어 |
| Prometheus | 메트릭 수집·저장 | 숫자 (시계열) | PromQL |
| Loki | 로그 수집·저장 | 텍스트 (로그) | LogQL |
| Grafana | 시각화·알림 | 메트릭 + 로그 | — |
| Promtail | 로그 에이전트 | — | — |
장애 대응 워크플로우
1. Grafana 대시보드에서 에러율 급증 감지 (메트릭 알림)
│
▼
2. 같은 시간대 Loki 로그 조회 (Explore 탭)
│
▼
3. ERROR 로그에서 스택 트레이스 확인
│
▼
4. 원인 파악 → 수정 배포
ELK vs PLG
| 항목 | ELK | PLG |
| 로그 검색 | 전문 검색 강력 | 레이블 + 내용 필터 |
| 메트릭 통합 | 별도 구성 | Prometheus와 자연 통합 |
| 운영 복잡도 | 높음 | 낮음 |
| 저장 비용 | 높음 | 낮음 |
| 적합한 규모 | 대규모, 복잡한 검색 | 중소규모, 컨테이너 환경 |