Build1 distinct publisher3 min readUpdated
Pod availability, CPU and memory can all read healthy while inference degrades. The signals that matter are queue depth, time to first token and tokens per second.
The Engineer · Build desk

Compiled by The EngineerSomething wrong?How this is made
A dev.to writeup in the "AI Infrastructure for Cloud Engineers" series puts two readouts from the same system side by side [1]. The Kubernetes view: 5 of 5 pods running, CPU at 42 percent, memory at 58 percent, zero pod restarts [2]. The AI view for the same workload: GPU utilization at 99 percent, inference latency increasing, queue depth growing, time to first token increasing [3]. The author's summary is the useful part: the platform is technically running while the user experience is getting worse [4].
That is the operational consequence. Pod availability and restart counts are liveness signals, and liveness is not the failure mode of a saturated inference service. Nothing crashes. Requests queue.
The post organises the problem into four layers: Kubernetes infrastructure, GPU or accelerator, model inference, and the end-to-end request [5]. The first layer still earns its keep, because when inference slows you need to rule out memory pressure, a node networking fault, or an unreachable dependency before you go looking inside the model [6]. The second layer needs utilization, GPU memory, temperature, power, device health and GPU errors, which in NVIDIA environments DCGM Exporter can publish in Prometheus-compatible form for Prometheus and Grafana [7].
The important discipline is correlation, not thresholds. According to the post, a GPU at 95 percent with a low queue, stable latency and high throughput can be perfectly healthy [8]. A GPU at 95 percent with a growing queue, rising latency and rising errors is a different system entirely [9]. Same number on the tile, opposite conclusions.
The inference layer is where the actionable metrics live: request rate, inference latency, time to first token, tokens per second, queue depth, concurrent requests, model errors and timeouts [10]. Each maps to a distinct stage of the request path, from queue through model processing to first token and response generation [11]. Inference latency is the total, time to first token is what the user waits before seeing anything, and tokens per second is generation speed after processing begins [12].
Queue depth is presented as the earliest warning. The worked example runs 2 waiting requests at 09:00, 18 at 09:05, 64 at 09:10, and 140 at 09:15 [13], a 70x increase inside fifteen minutes [14] with no crash and no restart to trigger anything [15]. That is also a scaling input: queue growth signals more inference capacity, which drains the queue [16].
The fourth layer is tracing, and the numbers make the case. An 8.2 second request tells you nothing [17]. The span breakdown attributes 40 ms to the API gateway, 70 ms to the application, 420 ms to vector search, 6.4 seconds to model inference and 950 ms to an external tool [18]. Model inference is roughly 78 percent of the wall clock [20]; the spans sum to 7.88 seconds [19], leaving about 320 ms unattributed [21], which is its own small lesson about coverage gaps in a trace.
What to watch: whether your autoscaler reads queue depth or CPU, because the second one will not move during the failure described here [3][16]; whether GPU telemetry is actually wired into the same store as pod metrics, since DCGM output is only useful if it can be correlated with the rest [7]; and whether anyone has an alert on time to first token, the one number a user directly perceives [12].
Follow any of these and your For You feed starts watching them — no settings page required.
Ranked by verification strength, evidence, and original report placement.
The article is part of a dev.to series, following Part 2 of "AI Infrastructure for Cloud Engineers," which covered how GPUs, scheduling, autoscaling and model serving change the way AI workloads run on Kubernetes.
Example Kubernetes readout for an AI workload: Pods Running 5/5, CPU Usage 42%, Memory Usage 58%, Pod Restarts 0 - everything looks healthy.
For the same workload, the AI-specific view shows GPU utilization 99%, inference latency increasing, queue depth growing, and time to first token increasing.
The author concludes that in this scenario the platform is technically running but the user experience is still getting worse, and that AI observability requires connecting infrastructure health with model behavior.
The author frames AI observability in four layers: 1. Kubernetes infrastructure, 2. GPU / accelerator, 3. model inference, 4. end-to-end request.
Kubernetes metrics (pod availability, restarts, node health, CPU, memory, network, storage, deployment health) provide first-layer context: if inference becomes slow, they help establish whether the problem is inside the model or is pod memory pressure, a node networking issue, or an unreachable dependency.
Evidence-backed comparisons of source perspectives and observed adoption signals. Read the methodology
Which Builder, Operator, and Investor concerns the observed source mix emphasized—not a truth score.
Evidence, demonstrated adoption, hype gap, incentives, and confidence are assessed independently, each on its own current evidence. How these are measured.
Illustrative single-source explainer
One self-published practitioner article supplies the entire cluster. Its structural argument (pod-level metrics cannot express inference degradation; correlate infrastructure, accelerator, inference and request-path signals) is coherent and internally consistent, and the arithmetic in the examples checks out. But every quantitative element is explicitly hypothetical: the healthy/unhealthy readouts are prefaced with 'consider this', the queue ramp with 'imagine', and the trace breakdown is a constructed example. There is no benchmark, no production telemetry, no incident postmortem, no threshold derivation and no second source. The unexplained ~320 ms residual between the listed spans and the stated 8.2 second duration further marks the figures as illustrative rather than instrumented.
No adoption signal supplied
The supplied material names tooling (DCGM Exporter, Prometheus, Grafana, OpenTelemetry) and a monitoring topology, but reports no release, deployment, usage disclosure, benchmark or customer evidence for any of it. There is nothing in the cluster about who has implemented this pattern, at what scale, or with what result, so adoption cannot be scored without inventing facts.
Mildly overstated framing over hypothetical numbers
The article's own prose is measured and hedged ('consider this', 'imagine', 'may be perfectly healthy', 'the tools may differ'), and the methodological claim is a widely held operations point. The overstatement sits in how the illustrative figures are presented as if diagnostic: the cluster headline and dek convert hypothetical readouts into concrete-sounding findings (five pods green, GPU 99 percent, queue up 70x) and the derived 70x multiple is arithmetic on invented values. With zero adoption evidence and no measurement behind any number, the specificity of the framing runs modestly ahead of what the source supports; the gap is small because the underlying advice is neither novel nor contested.
Audience-building, no disclosed commercial stake
The visible incentive is authorial: the post is an installment in an ongoing 'AI Infrastructure for Cloud Engineers' series on dev.to and closes by soliciting reader comments, which rewards reach and series continuity. Tooling recommendations point to open-source or vendor-neutral components (Prometheus, Grafana, OpenTelemetry) plus NVIDIA's DCGM Exporter, and the supplied material discloses no sponsorship, employer, affiliate or vendor relationship. Score is low because the pull toward engagement is real but modest and there is no evidence of commercial pressure.
Low: one publisher, no corroboration, no adoption data
Confidence is limited by cluster structure rather than by contradiction. A single publisher and single author provide all claims; nothing in the cluster contradicts them, but nothing independently confirms them either, and the adoption dimension cannot be scored at all. The claims that would survive corroboration are the conceptual ones (layered signals, queue depth as leading indicator, trace decomposition); the numeric ones should not be carried forward as findings.
build
One alert, two causes, four green dashboards: the day the stack agreed and was wrong1 distinct publisher
build
A Prometheus that had written nothing for hours passed every health check1 distinct publisher
build
The network already knew: UPS and WAN state as keys a cluster can reconcile against1 distinct publisher
product
Sovereignty audits are moving from the region picker to the plane topology1 distinct publisher
Distinct publishers with included, body-backed reporting in this cluster.
dev.to
1 article · August 18, 2026