백엔드/Spring

[Spring] 모니터링 환경 구성

kwang2134 2024. 10. 12. 17:40
728x90

모니터링 환경 구성 3단계

  • 대시보드
  • 애플리케이션 추적
  • 로그

1. 대시보드 

  • 시스템의 전반적인 상태를 한눈에 파악할 수 있도록 시각화  

구성 요소

  • Metric: CPU 사용량, 메모리, 네트워크 트래픽 등 지표를 포함
  • 시각화: 그래프, 차트, 게이지 등을 사용하여 데이터를 직관적으로 표현
  • 알림 및 경고: 특정 임계치를 초과할 때 경고를 표시

알림 구분

  • 경고: 일 1회 직접 확인해도 되는 수준의 문제
  • 심각: 즉시 확인해야 하는 문제 

모니터링 대상

  • 시스템 Metric
  • 애플리케이션 Metric
  • 비즈니스 Metric

  • Micrometer
  • Prometheus
  • Grafana
  • 등등

2. 애플리케이션 추적

  • 애플리케이션의 성능과 사용자 경험을 모니터링

구성 요소

  • 트랜잭션 추적: 요청 처리 시간, 응답 시간, 오류율 등을 추적하여 병목 현상을 파악
  • 사용자 행동 분석: 사용자의 행동 패턴을 분석하여 문제를 조기에 감지
  • 분산 추적: 마이크로서비스 아키텍처에서 서비스 간의 호출 관계를 추적하여 성능 저하 원인을 식별

  • pinpoint
  • 등등

3. 로그

  • 시스템과 애플리케이션의 이벤트와 상태를 기록하여 문제를 진단

구성 요소

  • 로그 수집: 다양한 소스에서 로그를 수집하고 중앙화하여 관리
  • 로그 분석: 특정 패턴이나 오류를 검색하여 문제의 원인 분석
  • 정책 설정: 로그의 보존 기간, 경고 기준 등을 설정하여 필요한 정보를 효율적으로 관리

파일 로그 저장

  • 일반 로그와 에러 로그 파일 구분

클라우드 로그 저장

  • 검색에 용이하게 구분

MDC (Mapped Diagnostic Context)

  • 로깅 프레임워크에서 제공하는 기능
  • 여러 스레드에서 발생하는 로그를 구분하고 특정 요청이나 사용자와 관련된 정보를 추가하는 데 사용

특징

  • 컨텍스트 정보 저장: 요청에 대한 특정 정보를 MDC에 저장하여 나중에 로그에 포함시킬 수 있음
  • 스레드 안전성: 각 스레드마다 독립적인 콘텍스트를 유지하므로 서로 다른 요청에 대한 정보가 섞이지 않음

스프링 부트 - 핵심 원리와 활용 강의 | 김영한 - 인프런 강의 내용 참고

 

728x90

'백엔드 > Spring' 카테고리의 다른 글

[Spring] Template Method  (0) 2024.10.31
[Spring] Thread Pool & ThreadLocal  (0) 2024.10.30
[Spring] Actuator  (0) 2024.10.08
[Spring] Spring Boot 외부 설정  (0) 2024.10.05
[Spring] Jar & SpringBoot Jar  (0) 2024.09.28