피드로 돌아가기
Dev.toBackend
원문 읽기
I Built a Website Uptime Monitor in a Weekend — Here's the Stack
개발자가 Next.js + Vercel Edge Functions + Supabase 조합으로 주말에 웹사이트 가동시간 모니터링 도구 구축
AI 요약
Context
기존 모니터링 도구들은 가격이 높거나(Pingdom $15/월), 단순한 '사이트 작동 여부' 확인에 과도한 기능을 포함하거나(Datadog), 무료 티어에서 5분 주기로만 확인 가능한 한계를 보였다(UptimeRobot).
Technical Solution
- Next.js를 Vercel 위에서 실행하고, Edge Functions으로 HTTP 핑 요청 처리
- Vercel Cron을 사용해 1분마다 자동으로 모니터링 체크 스케줄링
- Supabase PostgreSQL 데이터베이스에 모니터 설정, 체크 로그, 인시던트 기록
- 이메일, Slack, Discord, 웹훅을 통한 즉시 알림 전송
- 3회 연속 실패 시에만 알림 발생, 복구 시 자동 인시던트 해제
Impact
무료 티어에서 3개 모니터 + 이메일 알림 제공. 유료 티어(Starter $7/월)에서는 20개 모니터 + 1분 주기 체크 + Slack 알림 지원. Pro 티어($19/월)에서는 100개 모니터 + 30초 주기 체크 + 모든 통합 기능 + API 접근 제공.
Key Takeaway
Edge Functions과 Cron 기반의 서버리스 아키텍처를 통해 인프라 관리 부담 없이 분산된 위치에서의 모니터링 실행이 가능하며, 30초 내 온보딩으로 낮은 사용자 진입장벽을 달성할 수 있다.
실천 포인트
SaaS 형태의 정기 체크가 필요한 서비스(웹훅 검증, SSL 인증서 만료 감시, API 헬스 체크)를 구축할 때, Vercel Cron + Edge Functions + Supabase 조합을 사용하면 별도의 스케줄러 서버 없이 글로벌 분산 체크 구현이 가능하다.