Four Golden Signals, RED, USE: Monitoring Methodologies
Fast recall
Quick revision
Core answer
Knowledge of structured monitoring methodologies vs ad-hoc metrics
Listing metrics without a framework; not distinguishing service metrics from resource metrics; missing saturation/traffic signals
Discuss SLO/SLI design based on these, the difference between utilization and saturation (not the same!), and how to operationalize in Prometheus or Datadog
Interview-ready guide
Interview answer
The instinct for new engineers is to collect every metric a tool offers. The result is noisy dashboards and alert fatigue. Three structured methodologies answer 'what should I actually monitor?'
Four Golden Signals — from Google SRE
- Latency: time to serve requests; split successful vs failed
- Traffic: rate of requests (RPS, QPS)
- Errors: rate of failed requests
- Saturation: how full the service is; pending queue, utilization approaching capacity
- Applies to any user-facing service
RED — Tom Wilkie's simplification for request-driven services
- Rate: requests per second
- Errors: rate of failed requests
- Duration: distribution of request latencies (p50, p95, p99)
- Easier to remember, maps 1:1 with Golden Signals except saturation
USE — Brendan Gregg for resources, not services
- Utilization: % time busy (CPU, memory, disk, network)
- Saturation: extra work queued waiting (run queue, swap, I/O queue)
- Errors: system errors (disk errors, packet drops, OOM kills)
- Applies to infrastructure, not application logic
How I use them together
- RED for services: every Spring Boot app gets Rate, Errors, Duration automatically from Micrometer's http_server_requests
- USE for resources: node_exporter gives CPU/memory/disk USE; JVM metrics give JVM USE
- Golden Signals as the unified mental model bridging service-level and resource-level
The utilization vs saturation distinction is critical
- A CPU can be 100% utilized with 0 saturation — one task using all CPU, nothing waiting
- Or 50% utilized with high saturation — tasks alternating, lots of queue waiting
- Monitoring only utilization misses the latency signal that saturation gives
- Both matter; always instrument both
Dashboard layout per service
- Four panels in order: Latency, Traffic, Errors, Saturation
- Same layout for every service; consistency beats creativity
- Every engineer finds the answer fast in any service dashboard
SLO/SLI design flows from RED
- SLO: p99 latency less than 500ms, 99% of the time over 28 days
- SLI: the metric measuring that SLO
- RED metrics (rate, errors, duration) are the natural SLIs
- Define SLOs using RED-style metrics; alert on SLO burn rate, not raw thresholds
Common pitfalls
- Saturation metrics often missing; teams instrument latency and errors but forget thread pool queues, connection pool usage, message queue depth
- Cardinality trap: tagging metrics with per-user or per-request IDs explodes time series
- Histogram buckets not tuned; default Prometheus buckets don't fit most services
- Over-alerting on raw thresholds instead of SLO burn rate
The strategic answer
- Don't collect 'everything'; collect RED for every service, USE for every resource
- Build consistent dashboards; same panel layout per service
- Derive SLOs from RED; alert on SLO burn rate
- Saturation is the metric most teams forget; add it explicitly
Four Golden Signals, RED, USE: Monitoring Methodologies
Direct Answer
Three complementary frameworks for what to monitor: Four Golden Signals (Google SRE): Latency, Traffic, Errors, Saturation — for any user-facing service. RED (Tom Wilkie): Rate, Errors, Duration — simplification of Golden Signals for request-driven services. USE (Brendan Gregg): Utilization, Saturation, Errors — for resources (CPU, memory, disk, network). Use RED for services, USE for resources, Golden Signals as the unified vocabulary. Build dashboards and alerts per these methodologies instead of ad-hoc metrics.
Common Mistakes & Pitfalls
Listing metrics without a framework; not distinguishing service metrics from resource metrics; missing saturation/traffic signals
Check your understanding
Answer these without looking back at the article.
- How do you configure Micrometer histogram buckets for accurate percentile calculations?
- What is an SLO burn-rate alert and how does it reduce noise?
- What are common saturation metrics engineers forget to instrument?
- How do you adapt RED for batch jobs or message consumers?
Related interview prep categories
1Looking for a structured roadmap?
Every module on this page is also part of the full Java backend interview track.