> **Источник:** https://python-all.ru/3.12/library/debug.html
>
> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.

---

# Отладка и профилирование

Эти библиотеки помогают в разработке на Python: отладчик позволяет пошагово выполнять код, анализировать стековые кадры и устанавливать точки останова и т.д., а профилировщики запускают код и предоставляют детальную разбивку времени выполнения, что позволяет выявить узкие места в программах. События аудита обеспечивают прозрачность поведения во время выполнения, которое в противном случае потребовало бы интрузивной отладки или внесения исправлений.

- [Таблица событий аудита](https://python-all.ru/3.12/library/audit_events.html)
- [`bdb` – фреймворк отладчика](https://python-all.ru/3.12/library/bdb.html)
- [`faulthandler` – дамп трассировки Python](https://python-all.ru/3.12/library/faulthandler.html)

  - [Дамп трассировки](https://python-all.ru/3.12/library/faulthandler.html#dumping-the-traceback)
  - [Состояние обработчика сбоев](https://python-all.ru/3.12/library/faulthandler.html#fault-handler-state)
  - [Дамп трассировок по тайм-ауту](https://python-all.ru/3.12/library/faulthandler.html#dumping-the-tracebacks-after-a-timeout)
  - [Дамп трассировки по сигналу пользователя](https://python-all.ru/3.12/library/faulthandler.html#dumping-the-traceback-on-a-user-signal)
  - [Проблема с файловыми дескрипторами](https://python-all.ru/3.12/library/faulthandler.html#issue-with-file-descriptors)
  - [Пример](https://python-all.ru/3.12/library/faulthandler.html#example)
- [`pdb` – отладчик Python](https://python-all.ru/3.12/library/pdb.html)

  - [Команды отладчика](https://python-all.ru/3.12/library/pdb.html#debugger-commands)
- [Профилировщики Python](https://python-all.ru/3.12/library/profile.html)

  - [Введение в профилировщики](https://python-all.ru/3.12/library/profile.html#introduction-to-the-profilers)
  - [Краткое руководство пользователя](https://python-all.ru/3.12/library/profile.html#instant-user-s-manual)
  - [Справочник модулей `profile` и `cProfile`](https://python-all.ru/3.12/library/profile.html#module-cProfile)
  - [Класс `Stats`](https://python-all.ru/3.12/library/profile.html#the-stats-class)
  - [Что такое детерминированное профилирование?](https://python-all.ru/3.12/library/profile.html#what-is-deterministic-profiling)
  - [Ограничения](https://python-all.ru/3.12/library/profile.html#limitations)
  - [Калибровка](https://python-all.ru/3.12/library/profile.html#calibration)
  - [Использование пользовательского таймера](https://python-all.ru/3.12/library/profile.html#using-a-custom-timer)
- [`timeit` – Измерение времени выполнения небольших фрагментов кода](https://python-all.ru/3.12/library/timeit.html)

  - [Основные примеры](https://python-all.ru/3.12/library/timeit.html#basic-examples)
  - [Интерфейс Python](https://python-all.ru/3.12/library/timeit.html#python-interface)
  - [Интерфейс командной строки](https://python-all.ru/3.12/library/timeit.html#command-line-interface)
  - [Примеры](https://python-all.ru/3.12/library/timeit.html#examples)
- [`trace` – Трассировка или отслеживание выполнения операторов Python](https://python-all.ru/3.12/library/trace.html)

  - [Использование командной строки](https://python-all.ru/3.12/library/trace.html#command-line-usage)

    - [Основные параметры](https://python-all.ru/3.12/library/trace.html#main-options)
    - [Модификаторы](https://python-all.ru/3.12/library/trace.html#modifiers)
    - [Фильтры](https://python-all.ru/3.12/library/trace.html#filters)
  - [Программный интерфейс](https://python-all.ru/3.12/library/trace.html#programmatic-interface)
- [`tracemalloc` – Трассировка выделений памяти](https://python-all.ru/3.12/library/tracemalloc.html)

  - [Примеры](https://python-all.ru/3.12/library/tracemalloc.html#examples)

    - [Отображение первых 10](https://python-all.ru/3.12/library/tracemalloc.html#display-the-top-10)
    - [Вычисление различий](https://python-all.ru/3.12/library/tracemalloc.html#compute-differences)
    - [Получение трассировки для блока памяти](https://python-all.ru/3.12/library/tracemalloc.html#get-the-traceback-of-a-memory-block)
    - [Удобный вывод топа](https://python-all.ru/3.12/library/tracemalloc.html#pretty-top)

      - [Запись текущего и пикового размера всех отслеживаемых блоков памяти](https://python-all.ru/3.12/library/tracemalloc.html#record-the-current-and-peak-size-of-all-traced-memory-blocks)
  - [API](https://python-all.ru/3.12/library/tracemalloc.html#api)

    - [Функции](https://python-all.ru/3.12/library/tracemalloc.html#functions)
    - [DomainFilter](https://python-all.ru/3.12/library/tracemalloc.html#domainfilter)
    - [Filter](https://python-all.ru/3.12/library/tracemalloc.html#filter)
    - [Frame](https://python-all.ru/3.12/library/tracemalloc.html#frame)
    - [Snapshot](https://python-all.ru/3.12/library/tracemalloc.html#snapshot)
    - [Statistic](https://python-all.ru/3.12/library/tracemalloc.html#statistic)
    - [StatisticDiff](https://python-all.ru/3.12/library/tracemalloc.html#statisticdiff)
    - [Trace](https://python-all.ru/3.12/library/tracemalloc.html#trace)
    - [Traceback](https://python-all.ru/3.12/library/tracemalloc.html#traceback)
