liveBook · Manning

Stack trace

A stack trace is a diagnostic record of active or recently unwound function or method calls at an execution point, often including source locations.

How 7 Manning books explain it

Troubleshooting Java, Second Edition

A stack trace is a diagnostic record showing the sequence of active function or method calls at a particular execution point, typically including source locations.

How it is used
Guides debugging and log-based investigations by revealing how execution reached a method, pause point, exception, or thread state.
How deep it goes
Explains frames, callers, source lines, hidden framework logic, and thread context, but treats JVM internals only through diagnostic output.
Examples
Demonstrates controller-service calls, aspect-modified parameters, logged exception traces, non-blocking breakpoints, and thread-dump lock cycles.
What you can do after
Diagnose/debug with it by tracing callers, locating hidden execution, questioning exception causes, and inspecting thread blocking relationships.

Read how Troubleshooting Java, Second Edition explains stack trace →

Python How-To

A traceback is a diagnostic report showing the sequence of active calls and execution context when an exception occurs.

How it is used
Uses tracebacks to locate the call responsible for an exception during Python debugging.
How deep it goes
Explains call order, exception details, and console-versus-script output, but leaves step-by-step execution inspection to the debugger.
Examples
Uses a misspelled method call in a Python class, then compares its console and script tracebacks.
What you can do after
Diagnose/debug with it by inspecting the last call, then tracing upward when that call belongs to a dependency.

Read how Python How-To explains stack trace →

The Art of Code

A stack dump is a diagnostic snapshot showing the call stacks of threads or goroutines in a running or failed process.

How it is used
Supports diagnosing failure paths while keeping raw implementation details out of user-facing responses.
How deep it goes
Defines call-stack contents and uses, then shows trace-led investigation and limits during fatal failures.
Examples
Follows an HTTP 500 from browser network traces to backend logs and a faulty code line.
What you can do after
Diagnose/debug with stack traces by correlating call paths with logs, timestamps, and surrounding diagnostic evidence.

Read how The Art of Code explains stack trace →

The Well-Grounded Python Developer: How the pros use Python and Flask

A stack trace is a chronological report of the call path and source locations associated with an exception or other execution event.

How it is used
Uses execution history to locate failures and guide exception handling or debugging.
How deep it goes
Defines stack traces and demonstrates nested calls, but stops short of internals beyond call-stack traversal and source locations.
Examples
Uses division by zero, invalid numeric input, nested functions, and logged exception output.
What you can do after
Diagnose/debug with it by tracing failures to source lines and preserving exception details in logs.

Read how The Well-Grounded Python Developer: How the pros use Python and Flask explains stack trace →

The Well-Grounded Rubyist, Fourth Edition

Stack tracing is the technique of examining the sequence of active calls during program execution.

How it is used
Supports debugging and runtime introspection by locating the calls, files, and lines associated with an error or execution point.
How deep it goes
Explains call ordering, exception backtraces, caller output, and caller_locations, but does not detail the parsed location interface.
Examples
Uses URI loading errors, rescued ArgumentError output, nested x-y-z calls, and a raised exception to demonstrate trace formats.
What you can do after
Diagnose/debug with it by reading automatic traces, printing exception backtraces, and inspecting caller-generated call histories.

Read how The Well-Grounded Rubyist, Fourth Edition explains stack trace →

Learn Rust in a Month of Lunches

A backtrace is a record of the call stack showing the sequence of function calls leading to a program point or failure.

How it is used
Diagnoses failed tests and panics by tracing execution back to the function and source line involved.
How deep it goes
Explains output reading, environment configuration, runtime capture, and status handling without developing tracing internals.
Examples
Uses failed Rust assertions, RUST_BACKTRACE settings, Backtrace::capture(), and BacktraceStatus matching.
What you can do after
Diagnose/debug with Rust backtraces by enabling capture, locating application frames, and handling unavailable traces.

Read how Learn Rust in a Month of Lunches explains stack trace →

Build Applications with Local AI Models on a Mac

A Python diagnostic report showing the sequence of calls leading to an exception and where it occurred.

How it is used
Uses tracebacks to diagnose errors as part of systematic debugging.
How deep it goes
Connects reading tracebacks with isolating problems, forming hypotheses, and testing fixes, without detailing traceback internals.
What you can do after
Diagnose/debug with tracebacks by isolating problems, forming hypotheses, and testing fixes.

Read how Build Applications with Local AI Models on a Mac explains stack trace →

Related concepts

These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.