Spring Boot3 Prometheus + Grafana 설정 시 사용한 주소 정리 Spring Boot, Prometheus, Grafana를 연동하면서 여러 URL을 다뤘다.특히 macOS·Linux·Windows·Docker Desktop 환경 차이 때문에처음에는 localhost 주소로 접근이 안 되는 문제가 있었고,해결 과정에서 왜 특정 주소를 써야만 하는지 자연스럽게 알게 되었다.이 글에서는 프로젝트 구축 과정에서 실제로 사용한 주소들을 정리한다.1. Spring Boot Actuator 주소✔ http://localhost:8081/actuator/prometheusSpring Boot가 Prometheus에게 제공하는 메트릭 엔드포인트.Prometheus는 push 방식이 아니라 pull 방식즉, Prometheus가 이 URL로 직접 접근해서 메트릭을 가져감actuato.. 2025. 11. 15. Prometheus + Grafana 모니터링 Spring Boot에 추가하기 Spring Boot 애플리케이션을 운영하다 보면, API 응답 속도 저하나 DB 커넥션 풀 부족, CPU·메모리 spike 등 다양한 장애 신호들이 발생할 수 있다.이런 문제는 로그만으로는 절대 정확히 보이지 않는다.그래서 이번 프로젝트에 Prometheus + Grafana 기반 모니터링 시스템을 직접 구축했다.1. 전체 구조 [ Spring ↔ Prometheus ↔ Grafana 데이터 흐름 ] 사용자가 API 호출 ↓Spring Boot- 요청 처리 시간 기록- HTTP metrics 생성- JVM/DB/Redis 상태 기록- 메트릭을 /actuator/prometheus 에 노출 ↓Prometheus- 5초마다 Spring Boot에서 메트릭을 pull- 시계열 DB에.. 2025. 11. 15. Spring Boot에서 요청 로그에 userId와 requestId 추가하기 (MDC + Logback) 운영 환경에서 여러 유저의 요청이 동시에 들어올 때, 특정 요청을 추적하기 위해서는 단순한 로그만으로는 부족한 경우가 많다. 특히 문제 발생 시 어떤 사용자의 요청인지, 어떤 흐름으로 API가 호출됐는지를 파악하려면 `userId`, `requestId` 등 식별 가능한 정보가 로그에 포함되어야 한다. 이 글에서는 Spring Boot 환경에서 MDC(Mapped Diagnostic Context)를 활용하여 모든 요청/응답 로그에 `userId`와 `requestId`를 출력하는 방법을 정리했다. 개발 목표- 요청/응답 로그에 userId, requestId를 자동으로 출력 - Logback 설정을 통해 로그 포맷 지정 - Spring 인터셉터로 MDC에 값 주입 - 응답 완료 후 MDC 클리어 구.. 2025. 8. 7. 이전 1 다음