Django 웹사이트를 개발하다 보면 데이터베이스, 캐시, 스토리지 등의 상태를 손쉽게 점검할 수 있는 전용 URL 엔드포인트가 필요한 경우가 있습니다. 이럴 때 서드파티 패키지를 활용하면 시스템 성능과 각종 리소스의 상태를 실시간으로 모니터링할 수 있으며, 운영 환경(프로덕션)에서도 시스템 점검이 가능합니다.
이 글에서는 django-watchman 패키지를 사용하여 시스템 상태를 확인해 주는 URL 엔드포인트를 만드는 방법을 단계별로 살펴보겠습니다.
구현 예제
1. 기본 설정 완료
먼저 Django 프로젝트에서 앱 등록 및 URL 라우팅 등 기본적인 설정을 마쳐야 합니다.
2. django-watchman 설치
다음 명령어로 django-watchman 패키지를 설치합니다.
pip install django-watchman
3. settings.py 설정
settings.py 파일의 INSTALLED_APPS에 watchman을 추가합니다.
INSTALLED_APPS = (
...
'watchman',
)이 설정만으로 watchman이 Django 프로젝트의 앱으로 정상적으로 등록됩니다.
4. urls.py 설정
urls.py 파일에 아래 코드를 추가합니다.
urlpatterns += [path(r'watchman/',
include('watchman.urls'))]이 코드는 시스템 점검 결과를 확인할 수 있는 URL 엔드포인트를 정의하는 역할을 합니다.
여기까지 완료되면 모든 설정이 끝난 것입니다. 이제 실제 출력 결과를 확인해 보겠습니다.
실행 결과
브라우저에서 다음 주소로 접속하면 대시보드를 통해 시스템 상태를 한눈에 확인할 수 있습니다.
https://127.0.0.1/watchman/dashboard/

기본적으로 /watchman/ 엔드포인트에 접속하면 데이터베이스와 캐시 상태를 JSON 형식으로 반환하며, 대시보드 경로(/watchman/dashboard/)에서는 시각화된 화면으로 결과를 제공합니다. 이를 통해 운영 중인 서비스의 핵심 인프라가 정상적으로 작동하는지 빠르게 진단할 수 있습니다.