Skip to content

상태 페이지

봇의 실시간 가동 상태, 샤드별 성능 지표, 그리고 API 사용량을 모니터링하는 페이지입니다.

샤드 상태 그리드

각 샤드의 현재 상태가 카드 형태로 표시됩니다. 카드 색상으로 상태를 즉시 파악할 수 있습니다.

상태조건표시
온라인최근 2분 이내 하트비트 수신녹색
오프라인2분 이상 하트비트 미수신회색

카드 정보

각 샤드 카드에 표시되는 정보입니다.

항목설명출처
WebSocket 핑게이트웨이 지연 (ms)heartbeat.wsPingMs
메모리 사용량프로세스 RSS 메모리 (MB)heartbeat.memoryMb
서버 수해당 샤드가 담당하는 서버 수heartbeat.guildCount
음성 연결활성 음성 연결 수heartbeat.voiceConnections
CPU 사용률프로세스 CPU 비율 (%)heartbeat.cpuPercent

단일 봇 모드

샤드가 1개이고 클러스터 ID가 설정되지 않은 경우 (비샤딩 단일 봇), "Cluster 0 > Shard 0" 제목 없이 카드 1장만 간결하게 표시됩니다.

클러스터 계층 구조

clusterId 옵션을 설정한 멀티클러스터 배포에서는 클러스터 > 샤드 계층으로 카드가 그룹화됩니다.

Cluster 0
├── Shard 0  ● 온라인   핑 42ms   메모리 128MB   서버 1,250
└── Shard 1  ● 온라인   핑 38ms   메모리 135MB   서버 1,248

Cluster 1
├── Shard 2  ● 온라인   핑 45ms   메모리 130MB   서버 1,251
└── Shard 3  ● 오프라인  마지막: 10분 전

각 클러스터는 접고 펼칠 수 있으며, 클러스터 제목에는 온라인 샤드 수가 요약 표시됩니다.

히스토리 탭

샤드 카드를 클릭하면 해당 샤드의 시간별 성능 추이를 확인할 수 있습니다.

차트 종류

차트설명단위
핑 추이WebSocket 게이트웨이 지연 시간 변화ms
메모리 추이RSS 메모리 사용량 변화MB
CPU 사용률프로세스 CPU 비율 변화%
이벤트 루프 P95Node.js 이벤트 루프 지연 P95ms

참고

이벤트 루프 P95가 지속적으로 높다면 (예: 100ms 이상) 봇의 메인 스레드에 병목이 있을 수 있습니다. 동기적 연산이 많거나, 대량의 캐시 갱신이 발생하는 경우 이 지표가 상승합니다.

데이터가 없는 경우

봇이 오프라인이라 히스토리 데이터가 전부 없는 경우, 다음과 같이 표시됩니다.

  • "현재 봇이 오프라인이라 측정되지 않고 있습니다"
  • 마지막 온라인 시각 표시
  • 해당 기간에 데이터가 있는 구간만 차트에 표시됩니다

API 사용량

상태 페이지에는 봇의 Discord REST API 사용량도 표시됩니다.

하트비트 기반 지표

지표설명
API 요청 수윈도우 내 총 REST API 요청 수
글로벌 429글로벌 레이트 리밋 횟수
버킷 429버킷별 레이트 리밋 횟수
잘못된 요청400/401/403 응답 횟수

API 라우트 Top 10

api_routes_snapshot 이벤트 (5분 주기)에서 가장 많이 호출된 API 라우트 10개를 보여줍니다. 라우트 경로의 스노우플레이크는 {id}로 정규화되어 표시됩니다.

POST   /channels/{id}/messages          1,234건
PATCH  /guilds/{id}/members/{id}          567건
PUT    /guilds/{id}/members/{id}/roles/{id}  234건
...

참고

글로벌 429 횟수가 지속적으로 높다면 봇이 Discord API의 전역 레이트 리밋에 걸리고 있는 것입니다. API 호출 패턴을 검토하세요.

관련 문서

Dicolytics — Discord bot analytics