liveBook · Manning

Cold exploration

As explained in The Art of Code

Cold exploration is an investigative technique that reconstructs an unreproducible failure from residual evidence such as logs, metrics, and traces.

Cold exploration reconstructs an unreproducible failure from what remains after it occurs. Instead of watching the error unfold, build a timeline around the initial report and piece together the sequence from logs, metrics, and other traces. section 10.3.2

A practical cold-exploration investigation:

  • Establish when the error was first reported. section 10.3.2
  • Collect logs, metrics, console output, network traces, monitoring data, recent code changes, and dependency information. section 10.3.2
  • Reconstruct the events leading up to the failure, using experience, intuition, and creativity to connect incomplete clues. section 10.3.2
  • Form and evaluate hypotheses until the likely root cause is supported by the available evidence. section 10.4

Cold versus hot exploration

A web form failure that can be triggered supports hot exploration: follow the browser error, network trace, and backend logs while the failure unfolds. When the same failure cannot be reproduced, use the remaining logs, metrics, and traces to reconstruct its timeline instead. section 10.3.2

How The Art of Code covers it

How deep it goes
Outlines timeline building, evidence gathering, and clue reconstruction without detailing a complete cold-exploration case.
Examples
Uses logs, metrics, monitoring traces, and a web-form HTTP 500 investigation to contrast cold and hot exploration.
What it assumes
Assumes an initial failure report and available diagnostic evidence, while distinguishing unreproducible cases from reproducible ones.
What you can do after
Diagnose/debug with it by reconstructing a failure timeline from residual evidence when reproduction is unavailable.
How it connects
Connects logs, metrics, traces, timelines, reproducibility, hot exploration, hypotheses, and root-cause analysis.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of The Art of Code. The section links point to the parts of the book it draws on.