본문 바로가기
Tech Notes

Vercel 모니터링

by miracle-tech 2025. 9. 23.
728x90
반응형

아직 외부에 공개하지도 않았는데 requests 가 800건 이상 들어온 것을 보고 의아함이 들었다.

어디서,

누가,

왔는지 알아보자.

 

vercel 의 overview

 

  1. Edge Requests: 

       HTTP 상태코드별 분포:

  • 2XX (성공): 파란색 - 대부분의 요청이 정상 처리
  • 4XX (클라이언트 에러): 주황색 - 소량 발생
  • 5XX (서버 에러): 빨간색 - 거의 없음
  • 3XX (리다이렉트): 회색 - 일부 발생

     => 최근 3시간 동안 트래픽이 집중되었고, 대부분 정상적으로 처리됨

 

Edge Requests

 

정상적인 사용자 방문 패턴:

  • 실제 누군가가 사이트를 체계적으로 탐색
  • 홈 → about → faq 순서로 페이지 방문
  • 각 페이지마다 동일한 28회의 정적 파일 요청 (브라우저가 자동 로드)
1명이 페이지 방문
    ↓
HTML 로드 (1회)
    ↓
HTML 안의 <script>, <link> 태그들이
각각의 /_next/static/ 파일들을 요청 (27회)
    ↓
총 28회 요청 발생

 

실제 방문자 추정

약 2-3명 정도가 사이트를 방문했고:

  • 1명은 홈 → About → FAQ 순서로 탐색
  • 1-2명은 홈페이지만 방문
  • /api/stats는 각 페이지에서 호출되는 API인 것 같음

총 935 Edge Requests의 구성:

  • 실제 페이지 요청: ~200회 정도
  • 정적 파일 요청: ~700회 정도
  • 기타 (favicon 등): 나머지

=> 이는 매우 정상적인 웹사이트 방문 패턴이고, Next.js 앱의 전형적인 리소스 로딩 동작입니다.

 

   2. Fast Data Transfer:

   

       데이터 전송량:

  • Outgoing: 11MB (파란색) - 서버에서 클라이언트로 보낸 데이터
  • Incoming: 1MB (주황색) - 클라이언트에서 서버로 받은 데이터

  => Outgoing이 훨씬 많은 것은 정상 (이미지, CSS, JS 파일 전송)

 

   3. Vercel Functions:

 

      함수 실행 상태:

  • Error Rate: 12.5% (빨간 점들) - 함수 실행 중 일부 에러 발생
  • Timeout: 0% - 타임아웃은 없음

=> 12.5% 에러율은 다소 높은 편입니다. 어떤 함수에서 에러가 발생하는지 확인이 필요

 

Vercel Functions

=> api/stats 에서 에러가 발생했다.

main 화면에 통계데이터를 가져오는 부분인데, 생각해보니 매번 main 에 올때마다 여러 테이블들을 count 하는 건 별로 효율적이지 못하다는 생각이 들어서, 통계테이블을 만들고 하루 한번 배치로 하도록 바꿈.

또, service 가 기동될때 메모리에 넣어놓으면 DB I/O를 줄일 수 있어 속도나 cost도 절약할 수 있을 것으로 생각되어 방법을 바꿈.

 

 

   4. Compute:

 

       CPU 사용량:

  • Active CPU: 9초 - 실제 CPU가 작동한 시간
  • 최대 1초까지 스파이크 발생

=> CPU 사용량이 적절한 수준으로, 성능 최적화가 잘 되어 있습니다.

 

 

728x90