summaryrefslogtreecommitdiff
path: root/devdocs/python~3.12/library%2Fdebug.html
blob: 343a4d8cbf64c2e04373af980797e3c14dd0adf1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 <h1>Debugging and Profiling</h1> <p>These libraries help you with Python development: the debugger enables you to step through code, analyze stack frames and set breakpoints etc., and the profilers run code and give you a detailed breakdown of execution times, allowing you to identify bottlenecks in your programs. Auditing events provide visibility into runtime behaviors that would otherwise require intrusive debugging or patching.</p>  <ul> <li class="toctree-l1"><a class="reference internal" href="audit_events">Audit events table</a></li> <li class="toctree-l1"><a class="reference internal" href="bdb"><code>bdb</code> — Debugger framework</a></li> <li class="toctree-l1">
<a class="reference internal" href="faulthandler"><code>faulthandler</code> — Dump the Python traceback</a><ul> <li class="toctree-l2"><a class="reference internal" href="faulthandler#dumping-the-traceback">Dumping the traceback</a></li> <li class="toctree-l2"><a class="reference internal" href="faulthandler#fault-handler-state">Fault handler state</a></li> <li class="toctree-l2"><a class="reference internal" href="faulthandler#dumping-the-tracebacks-after-a-timeout">Dumping the tracebacks after a timeout</a></li> <li class="toctree-l2"><a class="reference internal" href="faulthandler#dumping-the-traceback-on-a-user-signal">Dumping the traceback on a user signal</a></li> <li class="toctree-l2"><a class="reference internal" href="faulthandler#issue-with-file-descriptors">Issue with file descriptors</a></li> <li class="toctree-l2"><a class="reference internal" href="faulthandler#example">Example</a></li> </ul> </li> <li class="toctree-l1">
<a class="reference internal" href="pdb"><code>pdb</code> — The Python Debugger</a><ul> <li class="toctree-l2"><a class="reference internal" href="pdb#debugger-commands">Debugger Commands</a></li> </ul> </li> <li class="toctree-l1">
<a class="reference internal" href="profile">The Python Profilers</a><ul> <li class="toctree-l2"><a class="reference internal" href="profile#introduction-to-the-profilers">Introduction to the profilers</a></li> <li class="toctree-l2"><a class="reference internal" href="profile#instant-user-s-manual">Instant User’s Manual</a></li> <li class="toctree-l2"><a class="reference internal" href="profile#module-cProfile"><code>profile</code> and <code>cProfile</code> Module Reference</a></li> <li class="toctree-l2"><a class="reference internal" href="profile#the-stats-class">The <code>Stats</code> Class</a></li> <li class="toctree-l2"><a class="reference internal" href="profile#what-is-deterministic-profiling">What Is Deterministic Profiling?</a></li> <li class="toctree-l2"><a class="reference internal" href="profile#limitations">Limitations</a></li> <li class="toctree-l2"><a class="reference internal" href="profile#calibration">Calibration</a></li> <li class="toctree-l2"><a class="reference internal" href="profile#using-a-custom-timer">Using a custom timer</a></li> </ul> </li> <li class="toctree-l1">
<a class="reference internal" href="timeit"><code>timeit</code> — Measure execution time of small code snippets</a><ul> <li class="toctree-l2"><a class="reference internal" href="timeit#basic-examples">Basic Examples</a></li> <li class="toctree-l2"><a class="reference internal" href="timeit#python-interface">Python Interface</a></li> <li class="toctree-l2"><a class="reference internal" href="timeit#command-line-interface">Command-Line Interface</a></li> <li class="toctree-l2"><a class="reference internal" href="timeit#examples">Examples</a></li> </ul> </li> <li class="toctree-l1">
<a class="reference internal" href="trace"><code>trace</code> — Trace or track Python statement execution</a><ul> <li class="toctree-l2">
<a class="reference internal" href="trace#command-line-usage">Command-Line Usage</a><ul> <li class="toctree-l3"><a class="reference internal" href="trace#main-options">Main options</a></li> <li class="toctree-l3"><a class="reference internal" href="trace#modifiers">Modifiers</a></li> <li class="toctree-l3"><a class="reference internal" href="trace#filters">Filters</a></li> </ul> </li> <li class="toctree-l2"><a class="reference internal" href="trace#programmatic-interface">Programmatic Interface</a></li> </ul> </li> <li class="toctree-l1">
<a class="reference internal" href="tracemalloc"><code>tracemalloc</code> — Trace memory allocations</a><ul> <li class="toctree-l2">
<a class="reference internal" href="tracemalloc#examples">Examples</a><ul> <li class="toctree-l3"><a class="reference internal" href="tracemalloc#display-the-top-10">Display the top 10</a></li> <li class="toctree-l3"><a class="reference internal" href="tracemalloc#compute-differences">Compute differences</a></li> <li class="toctree-l3"><a class="reference internal" href="tracemalloc#get-the-traceback-of-a-memory-block">Get the traceback of a memory block</a></li> <li class="toctree-l3">
<a class="reference internal" href="tracemalloc#pretty-top">Pretty top</a><ul> <li class="toctree-l4"><a class="reference internal" href="tracemalloc#record-the-current-and-peak-size-of-all-traced-memory-blocks">Record the current and peak size of all traced memory blocks</a></li> </ul> </li> </ul> </li> <li class="toctree-l2">
<a class="reference internal" href="tracemalloc#api">API</a><ul> <li class="toctree-l3"><a class="reference internal" href="tracemalloc#functions">Functions</a></li> <li class="toctree-l3"><a class="reference internal" href="tracemalloc#domainfilter">DomainFilter</a></li> <li class="toctree-l3"><a class="reference internal" href="tracemalloc#filter">Filter</a></li> <li class="toctree-l3"><a class="reference internal" href="tracemalloc#frame">Frame</a></li> <li class="toctree-l3"><a class="reference internal" href="tracemalloc#snapshot">Snapshot</a></li> <li class="toctree-l3"><a class="reference internal" href="tracemalloc#statistic">Statistic</a></li> <li class="toctree-l3"><a class="reference internal" href="tracemalloc#statisticdiff">StatisticDiff</a></li> <li class="toctree-l3"><a class="reference internal" href="tracemalloc#trace">Trace</a></li> <li class="toctree-l3"><a class="reference internal" href="tracemalloc#traceback">Traceback</a></li> </ul> </li> </ul> </li> </ul>  <div class="_attribution">
  <p class="_attribution-p">
    &copy; 2001&ndash;2023 Python Software Foundation<br>Licensed under the PSF License.<br>
    <a href="https://docs.python.org/3.12/library/debug.html" class="_attribution-link">https://docs.python.org/3.12/library/debug.html</a>
  </p>
</div>