Skip to content

fix: 하드코딩된 헬스체크 컨트롤러로 인한 가짜 UP 응답 문제 수정 #433

Description

@pooreumjung

Fix Report

고쳐야 할 사항

  • HealthCheckController(global/handler/HealthCheckController.java:8-13)가 애플리케이션 포트(9000)의 /actuator/health를 직접 정의해서, 실제 DB 연결 등 애플리케이션 상태와 무관하게 항상 {"status":"UP"}을 반환하고 있음.
  • 반면 Spring Actuator가 관리 포트(9001, prod/dev)에서 제공하는 표준 /actuator/health는 DB 커넥션 등을 반영한 실제 상태를 보여주는데, 커스텀 컨트롤러가 앱 포트에서 같은 경로를 가로채면서 두 개의 서로 다른 /actuator/health 응답이 공존하는 상태.
  • 로드밸런서나 컨테이너 헬스체크가 앱 포트(9000)의 /actuator/health를 보고 있다면, 실제 장애(DB 다운 등) 상황에서도 "정상(UP)"으로 응답해 장애 감지가 안 될 위험이 있음.
  • 기대 동작: /actuator/health는 Spring Actuator 기본 헬스 인디케이터(DB 연결 등)를 그대로 반영해야 하며, 하드코딩된 UP 응답을 제거해야 함.
  • 영향 범위: prod/dev EC2(관리 포트 9001과 앱 포트 9000의 헬스체크 이중 구조), local 프로필(관리 포트 분리 없이 9000 공유)

첨부자료

  • 없음

Metadata

Metadata

Assignees

Labels

fix고치기

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions