Observability - TypeScript SDK
client.observability reads caller-scoped cluster, Deployment, and generic
workload metrics. Snapshot methods return latest state; timeseries methods
return bounded historical points.
Overview
Available Operations
| Method | Description |
|---|---|
clusterOverview(clusterId) | Read aggregate cluster workload utilization. |
services(options?) | List observable model-serving Deployments. |
serviceSnapshot(serviceId) | Read the newest snapshot for one Deployment. |
serviceTimeseries(serviceId, options?) | Read Deployment engine/resource points. |
workloads(options?) | List observable workloads across supported domains. |
workloadSnapshot(businessType, businessId) | Read one generic workload snapshot. |
workloadTimeseries(businessType, businessId, options?) | Read generic CPU, memory, restart, and GPU points. |
history(options?) | Cursor-page workload lifecycle history. |
clusterOverview
Read aggregate cluster workload utilization.
Request
clusterId required.
Response
UserClusterObservabilityOverviewVO.
services
List observable model-serving Deployments.
Request
Optional {clusterId}.
Response
UserWorkloadObservabilityVO[].
serviceSnapshot
Read the newest snapshot for one Deployment.
Request
serviceId required.
Response
UserWorkloadObservabilityVO.
serviceTimeseries
Read Deployment engine/resource points.
Request
serviceId; optional rangeHours, maxPoints.
Response
UserServiceMetricsPointVO[].
workloads
List observable workloads across supported domains.
Request
Optional {clusterId}.
Response
UserWorkloadObservabilityVO[].
workloadSnapshot
Read one generic workload snapshot.
Request
Both strings required.
Response
UserWorkloadObservabilityVO.
workloadTimeseries
Read generic CPU, memory, restart, and GPU points.
Request
Both IDs; optional rangeHours, maxPoints.
Response
UserWorkloadMetricsPointVO[].
history
Cursor-page workload lifecycle history.
Request
Optional clusterId, cursor, limit.
Response
UserWorkloadHistoryPageVO.
Field Reference and Examples
Use the exact businessType and businessId returned by workloads() rather
than constructing generic workload identifiers.
Key response fields
| Type | Fields |
|---|---|
UserClusterObservabilityOverviewVO | clusterId, activeWorkloads, cpuUsageCores, memoryWorkingSetBytes, observedPlacements, plannedPlacements, scope |
UserWorkloadObservabilityVO | Identity, lifecycle, replicas/shards, CPU/memory/restarts, GPU allocation/utilization, serving QPS/latency/throughput, completeness, evidence |
UserServiceMetricsPointVO | snapshotTime, replicas/shards, latency percentiles, QPS/request count, TTFT/ITL, error rates, throughput, KV-cache hit rate, input/output lengths |
UserWorkloadMetricsPointVO | snapshotTime, CPU, working-set/RSS memory, restart count, GPU activity/utilization/memory, completeness states |
UserWorkloadHistoryPageVO | items, nextCursor, contractVersion, scope |
const overview = await client.observability.clusterOverview(1);
const services = await client.observability.services({ clusterId: 1 });
const snapshot = await client.observability.serviceSnapshot(42);
const servicePoints = await client.observability.serviceTimeseries(42, {
rangeHours: 1,
maxPoints: 120,
});
const workloads = await client.observability.workloads({ clusterId: 1 }) as Array<{
businessType: string;
businessId: string;
}>;
if (workloads.length > 0) {
const workload = workloads[0]!;
await client.observability.workloadSnapshot(
workload.businessType,
workload.businessId,
);
await client.observability.workloadTimeseries(
workload.businessType,
workload.businessId,
{ rangeHours: 1, maxPoints: 120 },
);
}
const history = await client.observability.history({ clusterId: 1, limit: 100 });
All methods use the shared authentication and typed error behavior described in Response Conventions and Retry and Security.