Monitoring
115 bites tagged Monitoring — interview questions with model answers, and 60-second explainers.
Data Drift vs. Concept Drift: When Models Go Stale
Your ML model's accuracy decays when the real world no longer matches its training data. This is drift. It happens when user behavior changes (concept drift) or input data distributions shift (data drift).
PromQL: Querying Time Series Data as Vectors
PromQL treats metrics as vectors of values over time, letting you slice and aggregate system state. It's used for Grafana dashboards and Alertmanager rules. The footgun: applying `rate()` to a gauge instead of a counter produces silent, nonsensical results.
cAdvisor: A Task Manager for Containers
cAdvisor is like a task manager for your containers, giving you a live view of their resource usage. It's used to track performance, historical usage, and network stats for every container on a host.
Prometheus Exporters: Translating Metrics for Monitoring
A Prometheus Exporter is a translator, converting metrics from third-party systems like databases or hardware into the format Prometheus can scrape. Use one when you can't modify an app's code directly.
Prometheus Architecture: A Pull-Based Monitoring System
Prometheus is a monitoring system that actively pulls metrics from your services, rather than waiting for them to push data. It's the standard for tracking performance in dynamic environments like Kubernetes.
Kubernetes Metrics Server: The Engine for Autoscaling
Metrics Server is the dedicated speedometer for your cluster's pods, feeding CPU and memory usage to Kubernetes's autoscalers. It powers the Horizontal and Vertical Pod Autoscalers and the `kubectl top` command. The footgun: it's *only* for autoscaling.
The Three Pillars of Observability
Observability isn't one tool; it's a three-legged stool of metrics, logs, and traces. Metrics give the 'what' (CPU is high), logs the 'why' (an error loop), and traces the 'where' (which service is slow). The footgun is treating them as separate silos.
Time Series Database: A Logbook, Not a Filing Cabinet
A Time Series Database (TSDB) is a specialized logbook for data that happens over time, like server metrics or sensor readings. It's built for high-speed writes and fast range queries. The footgun: don't use it for relational data like user profiles.
Data Drift: Why Good Models Go Bad
Data drift is when a model's accuracy decays because the real-world data it was trained on has changed. This happens in fraud detection as scams evolve or in e-commerce as trends shift.
Cloud Alerting: Your System's Automated Smoke Detector
Cloud alerting is your system's smoke detector, watching key metrics and screaming when something's wrong before it becomes a fire. It's used to flag high CPU, failing health checks, or security anomalies.
Cloud Monitoring: Metrics, Time Series, and Resources
Cloud monitoring metrics are numerical measurements of a resource over time. They are used to build dashboards, trigger alerts when a threshold is crossed, and analyze performance for services like VMs or databases.
Model Drift: When Good Models Go Bad
A model is a snapshot of the world; model drift is the alarm that fires when the world changes but your snapshot has not. It detects when production data no longer statistically matches the training data, a common issue for models predicting user behavior.
SLIs & SLOs: Measuring What Matters for Service Reliability
SLIs are what you measure (e.g., latency); SLOs are the target you aim for (e.g., 99% success). They replace vague feelings about service health with concrete numbers. This is how SREs define and manage reliability.
Pipeline Analytics: Measuring Your CI/CD Health
Pipeline analytics is a fitness tracker for your CI/CD, revealing if builds are getting slower or less reliable. Use it to spot bottlenecks, track failure rates, and compare branches. The footgun is ignoring the P95 duration, which hides worst-case outliers.
Synthetic Monitoring: Probing Your App Like a Robot User
Synthetic monitoring is like having a robot user click through your app's critical paths 24/7 to catch issues before real users do. It tests key flows like login or checkout, providing a consistent baseline for performance.
Real User Monitoring (RUM): See Your App Through Users' Eyes
Real User Monitoring (RUM) is like a flight recorder for your app, capturing real user clicks, load times, and errors. It's used to measure actual performance and diagnose slowdowns, revealing issues that lab testing misses.
Service Level Objective (SLO): A Measurable Promise
An SLO is a precise, measurable promise about your service's performance, like "99.9% of requests will succeed." It's the internal engineering target that backs up a customer-facing SLA. The footgun is setting a 100% SLO, which leaves no room for failure.
Observability: Seeing Inside Your System
Observability is the ability to ask new questions about your system's health without shipping new code. It's crucial for debugging distributed systems and is the first step in triaging an outage.
Outlier Detection: Finding Data That Doesn't Belong
Outlier detection finds data points that don't fit the pattern, signaling an error, fraud, or a new event. It's used to spot faulty sensor readings or fraudulent transactions.
Get Monitoring bites daily.
Five a day, five minutes, offline. With quizzes so it sticks.
Open testing — you’ll join as an early tester.