문서 본문으로 이동
문서API 참조서버 모니터링 지표 조회
GETBearer 토큰

서버 모니터링 지표 조회

/api/v1/servers/:id/metrics

저장된 서버 모니터링 지표를 조회합니다. latest는 최신 보고이며 samples는 과거 데이터 포인트로, 서로 구조가 다릅니다.

API 필드명, 자료형, 코드는 모든 언어에서 그대로 유지됩니다.

요청 예시

cURL
curl "https://tovahub.com/api/v1/servers/507f1f77bcf86cd799439012/metrics?period=24hr" \
  -H "Authorization: Bearer $TOVAHUB_TOKEN"

예시만 표시합니다. 이 페이지는 API 요청을 보내지 않습니다.

응답 예시
JSON
{
  "period": "24hr",
  "serverStatus": "running",
  "metrics": {
    "online": false,
    "reportingMode": 1,
    "reportInterval": 60,
    "lastReportedAt": null,
    "lastSampledAt": null,
    "bootChangedAt": null,
    "shutdownAt": null
  },
  "latest": null,
  "samples": []
}

매개변수

id경로 · 필수

string

리소스 ID로, 24자리 16진수 문자열입니다. 공급업체 인스턴스 ID가 아니라 해당 목록 엔드포인트에서 반환한 플랫폼 ID를 사용하세요.

period쿼리 · 선택

"1hr" | "24hr" | "7d"

기본값은 24hr입니다.

응답

HTTP 상태 200

저장된 호스트 지표, 최신 보고, 과거 샘플을 조회합니다.

periodstring ('1hr' | '24hr' | '7d')

요청한 이력 기간입니다.

serverStatusstring

정규화된 저장 서버 상태입니다.

metricsobject

모니터링의 동작 여부에 관한 메타데이터입니다.

metrics.onlineboolean

최근 보고를 기준으로 에이전트가 온라인인지 나타냅니다.

metrics.reportingModenumber

현재 설정된 보고 모드로, 기본값은 1입니다.

metrics.reportIntervalnumber

예상 보고 간격으로, 단위는 초입니다.

metrics.lastReportedAtstring (ISO 8601) | null

마지막 보고 수신 타임스탬프입니다.

metrics.lastSampledAtstring (ISO 8601) | null

마지막 샘플 타임스탬프입니다.

metrics.bootChangedAtstring (ISO 8601) | null

마지막으로 감지된 부팅 식별 변경입니다.

metrics.shutdownAtstring (ISO 8601) | null

마지막으로 보고된 종료 시각입니다.

latestobject | null

가장 최근에 저장된 지표 또는 종료 보고입니다. 보고가 없으면 null이며, 필드는 과거 샘플과 다릅니다.

latest.version1

보고 형식 버전입니다.

latest.kind"metrics" | "shutdown"

보고 유형입니다.

latest.bootIdstring (UUID)

보고 대상 부팅의 식별자입니다.

latest.intervalnumber

샘플링 간격으로, 5–300초입니다.

latest.uptimenumber

가동 시간으로, 단위는 초입니다.

latest.sampledAtnumber (optional)

클라이언트 샘플 타임스탬프로, Unix epoch 이후 밀리초입니다.

latest.cpunumber | null

0–100%의 CPU 사용률이며, 확인할 수 없으면 null입니다.

latest.memoryUsednumber

사용 중인 메모리의 바이트 수입니다.

latest.memoryTotalnumber

전체 메모리의 바이트 수입니다.

latest.swapUsednumber

사용 중인 스왑 공간의 바이트 수입니다.

latest.swapTotalnumber

전체 스왑 공간의 바이트 수입니다.

latest.diskReadnumber | null

디스크 읽기 속도로, 단위는 초당 바이트입니다.

latest.diskWritenumber | null

디스크 쓰기 속도로, 단위는 초당 바이트입니다.

latest.netInnumber | null

네트워크 수신 속도로, 단위는 초당 바이트입니다.

latest.netOutnumber | null

네트워크 송신 속도로, 단위는 초당 바이트입니다.

latest.disksobject[]

최대 32개의 마운트된 디스크입니다. mount (문자열), total (바이트), used (바이트)를 포함합니다.

samplesarray

시간순으로 정렬된 최대 600개의 이력 지점입니다. 수치는 시간 구간별 평균이며 low와 high는 각 지표의 최솟값과 최댓값을 보존합니다.

samples[].atstring (ISO 8601)

이력 샘플 타임스탬프입니다.

samples[].cpunumber | null

CPU 사용률(%)이며, 확인할 수 없으면 null입니다.

samples[].memoryUsednumber | null

바이트 단위 용량이며, 확인할 수 없으면 null입니다.

samples[].memoryTotalnumber | null

바이트 단위 용량이며, 확인할 수 없으면 null입니다.

samples[].swapUsednumber | null

바이트 단위 용량이며, 확인할 수 없으면 null입니다.

samples[].swapTotalnumber | null

바이트 단위 용량이며, 확인할 수 없으면 null입니다.

samples[].diskReadnumber | null

초당 바이트 단위 전송 속도이며, 확인할 수 없으면 null입니다.

samples[].diskWritenumber | null

초당 바이트 단위 전송 속도이며, 확인할 수 없으면 null입니다.

samples[].netInnumber | null

초당 바이트 단위 전송 속도이며, 확인할 수 없으면 null입니다.

samples[].netOutnumber | null

초당 바이트 단위 전송 속도이며, 확인할 수 없으면 null입니다.

samples[].uptimenumber | null

초 단위 가동 시간이며, 확인할 수 없으면 null입니다.

samples[].disksarray

마운트된 디스크: {mount: string, used: number, total: number}. 용량은 바이트 단위입니다.

samples[].lowobject

동일한 10개 수치 지표 이름을 키로 사용하는 지표별 최솟값입니다.

samples[].highobject

동일한 10개 수치 지표 이름을 키로 사용하는 지표별 최댓값입니다.