본문으로 이동
Spring Boot Actuator의 헬스체크 살펴보기
문서

Spring Boot Actuator의 헬스체크 살펴보기

양권성 토스 · 토스 기술 블로그

원문 보기

AI 핵심 요약

Spring Boot Actuator의 헬스체크는 여러 HealthIndicator의 상태를 SimpleStatusAggregator가 합산하며, 기본 우선순위에서는 하나의 DOWN만 있어도 전체 서버 상태가 DOWN으로 판정됩니다. 이 때문에 비동기로 처리하는 로그 DB나 Elasticsearch처럼 핵심 요청 처리에 필수적이지 않은 의존성의 장애도 로드 밸런서가 서버를 제외하게 만들어 서비스 장애나 트러블슈팅 지연으로 이어질 수 있습니다. 글은 헬스체크에 포함되는 자동 설정 지표와 상태 집계 원리를 살펴보고, 필요에 따라 지표를 비활성화하거나 직접 헬스체크 API를 구현하는 방안을 제시합니다. 헬스체크를 단순한 200 OK 응답으로 여기지 말고, 서비스의 가용성 기준과 장애 격리 설계에 맞게 구성해야 한다는 점을 강조합니다.

  • Spring Boot Actuator는 의존성이 있을 때 관련 HealthIndicator를 자동 활성화하므로, 어떤 컴포넌트가 헬스 상태에 포함되는지 확인하세요.
  • 기본 상태 우선순위는 DOWN, OUT_OF_SERVICE, UP, UNKNOWN이며, 하나라도 DOWN이면 전체 상태가 DOWN으로 집계됩니다.
  • 서비스 핵심 경로에 필요하지 않은 DB나 외부 시스템의 장애가 전체 헬스체크에 전파되지 않도록 지표를 비활성화하거나 별도 엔드포인트를 설계할 수 있습니다.
  • 상세 헬스 정보는 민감한 정보를 노출할 수 있으므로 운영 환경에서 공개 범위와 접근 권한을 신중히 설정하세요.

소개

서버의 상태를 알려주는 헬스 체크에 대해 알고 계시나요? 단순히 200 OK만 내려주겠거니 하고 별로 신경을 안 쓰고 계셨나요? 해당 포스트에서는 Spring Boot Actuaor가 제공해주는 헬스 체크는 어떤 식으로 서버의 상태를 점검하는지, 어떤 부분을 주의하며 사용해야하는지 알아봅니다.

비슷한 학습 자료

컨퍼런스 SLASH

Kotlin으로 작성한 스프링 프레임워크 기반 서버 애플리케이션의 테스트 커버리지. 그것을 100%까지 올리고 1년 6개월 동안 유지하면서 배운 점과 테스트 개선 방법에 대한 고민을 공유합니다. 이응준 / 토스뱅크 Server Developer 토스 개발자 컨퍼런스 SLASH에 대한 자세한 정보는 👉🏻 https://toss.im/slash-21 컨퍼런스 및 세션에 대한 문의는 👉🏻 slash@toss.im #토스 #개발자컨퍼런스 #SLASH

소프트웨어 테스트 TDD

문서 조민규

개발자들에게 익숙해진 불편함을 해결하기 위한 사내의 Swagger MCP 서버를 구축한 이야기를 들려드립니다.

백엔드 AI에이전트 개발

문서 토스

Kafka Broker request log를 활용해서 서비스 간 의존성 파악하기

백엔드 데브옵스 · 인프라

문서 최준우

더 안전하고 안정적인 서비스 운영을 위해서 ‘gateway’를 어떻게 사용해야 할까요? 토스의 수많은 마이크로서비스 로직을 공통화하기 위한 gateway 운영 방법에 대해 소개합니다.

백엔드 네트워크

문서 이창섭

리뉴얼된 AccessBlock

백엔드 데브옵스 · 인프라

문서 고산하

자바 모듈 시스템의 변화로 인한 직렬화 문제를 분석하면서 알게된 내용을 공유합니다.

백엔드 프로그래밍 언어