# PostgreSQL/Neo4j TCP 소켓 헬스체크 구현 **날짜**: 2026-01-15 **작성자**: Auto **관련 파일**: - `admin-dashboard/backend/services/system_service.py:32-33, 346-384, 421-423` --- ## 문제 상황 PostgreSQL/Neo4j가 HTTP 체크로 실패하여 Admin Dashboard에서 오류 표시 (실제로는 정상 작동 중) --- ## 해결 방안 - `system_service.py:32-33`: PostgreSQL/Neo4j HTTP URL 제거, `check_method: "tcp"` 추가 - `system_service.py:346-384`: `check_tcp_service()` 함수 추가, 여러 호스트 시도 (`172.17.0.1` → `localhost` → `127.0.0.1`) - `system_service.py:421-423`: `check_method == "tcp"`인 경우 TCP 체크로 분기 처리 --- ## 구현 완료 - Git 커밋: `4c9f227` - API 테스트: PostgreSQL/Neo4j 모두 `check_method: "tcp"`, `status: "healthy"` 확인 --- ## 교훈 ### 데이터베이스 서비스는 TCP 소켓 체크 사용 - HTTP 프로토콜이 아닌 서비스는 TCP 소켓 체크 필수 - Docker 컨테이너에서 호스트 접근 시 여러 호스트 시도로 네트워크 격리 문제 완화 ### 브라우저 테스트 시 docs 확인 필수 - 로그인 비밀번호, API 엔드포인트 등 접근 정보는 코드 또는 docs에서 확인 (추측 금지) --- ## 참고 - `plans/251225_admin_dashboard_navigation_structure_refactoring.md` - `troubleshooting/251228_admin_서비스_헬스체크_개선.md`