Two services generating their own request identifiers means two traces for one request and no way to connect them. Deciding where the identifier originates is the whole conversation,…
A long window detects a sustained problem and keeps firing for hours after it ends, which trains people to ignore the alert. The long window is doing the…
A pipeline that reports its result by making somebody open the log is a pipeline whose result nobody reads. Writing the failure explanation into the summary rather than…
Deciding where to coordinate during an incident is a decision made badly under pressure, and automating the creation removes it. The timeline being captured automatically is the part…
A log line saying that an order was updated answers none of the questions asked during a dispute. Recording only the changed fields rather than the whole model…
A latency histogram tells you the 99th percentile is four seconds and cannot tell you which request that was, and an exemplar attaches a trace id to a…
An error boundary catches errors thrown during rendering, in lifecycle methods and in constructors, and nothing thrown from a click handler or a promise. Handlers and promises need…