사내에서 클라이언트 로그들을 수집해달라는 말이 있었다!
클라이언트 자체에서 로그를 기기에 담긴했었는데, 실제로 유저들이 겪는 불편함 ( VOC로 안들어오는 ) 을 체크하고, 주요 기능의 에러율을 모니터링 하고자 하는 취지였다.
그래서 우선 그냥 쉽게 생각이 든건 다음과 같았다.
클라이언트 -> 서버로 API 쏘고 서버에서 DB 받으면 매우 easy. good~~
빠르게 만들 수 있고, 조회도 쉬운 장점이 있음.
다만 바로 DB에 쌓는 방식의 고민
하지만 클라이언트 로그 특성상,
- 발생량이 많아질 수 있고
- 에러 / 이벤트 / 트래킹 로그가 뒤섞일 수 있으며
- 단순 조회보다 집계·비율·추이 분석이 더 중요함
이라는 점을 고려하면
일반 서비스 DB에 그대로 적재하는 방식은
장기적으로 부담이 될 수 있다고 판단했음.
현재 선택한 방향 (OpenSearch 활용)
현재 사내에서 OpenSearch를 사용 중이므로,
클라이언트 로그 역시 출력(Log) 형태로 수집하는 방향을 우선 고려함.
구조는 아래와 같음.
- 클라이언트 → 서버로 이벤트/로그 API 호출
- 서버는 해당 로그를 stdout / structured log(JSON) 형태로 출력
- Fluent-bit을 통해 로그 수집
- OpenSearch로 적재 후 대시보드/쿼리 기반 분석
이 방식의 장점은,
- DB 부하 없이 대량 로그 수집 가능
- 에러율, 기능별 실패 비율, 사용자 행동 패턴 분석 용이
- 기존 인프라(OpenSearch, Fluent-bit) 재사용 가능
이라는 점임.
따라서 우선 json 출력 방향으로 간다. 문제가 있으면 또 적겠음.
'TIL' 카테고리의 다른 글
| 해놓을 명령어 및 static pod 문제 (0) | 2026.01.26 |
|---|---|
| 클러스터 여러개를 조종가능? (0) | 2026.01.26 |
| 1 파드 = 1 컨테이너? (0) | 2026.01.22 |
| 트래픽 제한을 해보자. Nginx 개별 트래픽 속도 제한 (0) | 2026.01.21 |
| 트래픽 관리를 해보자. TC란? (0) | 2026.01.21 |