Observability for a redirect path
The metrics that tell you a link service is healthy, and the alerts that are worth waking someone for.
By ShortFreeURL Team · 11 August 2026
Redirects fail differently from applications
There is no partial degradation a user tolerates. Either the redirect resolves or the visitor hits an error, and for links printed on physical material there is no retry and no support path. That makes availability and correctness the metrics that matter, ahead of throughput.
The four signals to graph
Redirect latency at the high percentiles, not the mean; the rate of unknown-slug responses; the rate of 5xx from the redirect handler; and the click ingestion lag between a redirect being served and the click appearing in reporting. Those four cover the great majority of real incidents.
Unknown-slug rate is the most informative one
A steady low background of unknown slugs is normal — scanners probing, old links, typos. A sudden step change usually means a deployment lost data, a domain was reassigned, or someone deleted a batch of links. It is also the earliest sign that a printed campaign contains a wrong slug, and it is far cheaper to notice at 9am than from a customer email.
Separate bot traffic in the metrics, not just in reports
If a preview crawler wave inflates your traffic graph, you will misread capacity and misdiagnose spikes. Classify at ingestion and keep both series. The human series is what marketing reports on; the total is what capacity planning needs.
Alert on symptoms, not causes
Page someone when redirect availability drops or latency crosses a level users would feel. Do not page on cache hit ratio or queue depth; those are dashboards for the investigation, not reasons to wake up. Every alert that fires without requiring action trains the on-call to ignore the next one.
Synthetic checks per domain
Every custom domain is an independent point of failure — its own DNS, its own certificate. A check per domain that requests a known link and asserts both the status code and the Location header catches an expired certificate or a DNS change long before traffic patterns would reveal it.
Log enough to answer "why did this link do that"
Per-click records with slug, timestamp, resolved destination, status code, classification and request id let you reconstruct any dispute. Retention costs money, so set a policy deliberately: full detail for a few months, aggregates for longer, and a documented answer for anyone who asks how long click data is kept.
