운영 환경 모니터링 - KimGyuBek/Threadly GitHub Wiki
Threadly 서비스는 운영환경에서 모니터링을 통해서 장애 탐지, 배포 안정성 검증, 성능 최적화에 활용할 수 있다.
- Promtail: 로그를 수집하여 Loki로 푸시
- Loki: 수집된 로그를 저장/인덱싱
로그 수집 흐름

- Prometheus: 메트릭 수집 및 시계열 데이터 저장
- Spring Boot Actuator: 애플리케이션 메트릭 제공
- Node Exporter:: 시스템 메트릭 수집
- PushGateway: Spring Batch 메트릭 전달
메트립 수집 흐름

threadly-service 로그 |
notification-service 로그 |
DB 로그 |
전체 서비스 메트릭 |
트랜잭션 롤백률 |
Batch Job 메트릭 |
DB 메트릭 |
EC2 시스템 리소스 |
JVM 메트릭 |
스크립트 로그 |
Kafka Consumer 메트릭 |
Kafka Producer 메트릭 |
-
threadly-service
- blue
- green
-
notification-service
- blue
- green
- DB
- Kafka
-
모든 서비스 통합 KPI 확인
- 전체 요청 수
- 응답 시간
- 응답 지연
- 에러율
- API 별 요청 수
- HttpStatusCode(4XX, 5XX)별 에러율
-
트랜잭션 롤백률
- 전체 트랜잭션 롤백률
- 서비스별 트랜잭션 롤백률
- 예외별 롤백 현황 등
-
Batch Job 메트릭
- Item Read/Process/Wirte Count
- Item Read/Process/Write 지연
- Item Read/Process/Write 처리량
- Job/Step 실행 시간 등
-
DB 메트릭
- 현재 커넥션 수
- 캐시 히트율
- 롤백률
- TPS
- EC2 리소스
- JVM 메트릭
- 무중단 배포 스크립트 로그(
blue-green-deploy.sh) - 서비스 실행 스크립트 로그(
start-threadly-service.sh,start-notification-service.sh) - 이미지 정리 스크립트 로그(
clean-old-images.sh)