faulthandler imprime tracebacks de Python ante errores fatales, incluidas algunas infracciones detectadas a nivel nativo. Es útil cuando un proceso termina sin una excepción convencional.

Ejemplo práctico

import faulthandler
import sys

faulthandler.enable(file=sys.stderr, all_threads=True)
print("fatal error tracebacks enabled")
## Command-line alternative: python -X faulthandler app.py

Actívalo antes del problema

Usa -X faulthandler o PYTHONFAULTHANDLER para habilitarlo desde el inicio. En un servicio, dirige la salida a un descriptor que permanezca abierto durante todo el proceso.

Investiga bloqueos

dump_traceback_later() puede mostrar stacks tras un timeout y ayudar a localizar un deadlock. Cancela el temporizador cuando termine la operación para evitar un informe engañoso.

Seguridad operativa

Los tracebacks revelan rutas, funciones y flujo interno. Protege los archivos de diagnóstico, limita su retención y nunca los expongas directamente en respuestas HTTP.

Sigue aprendiendo

Refuerza la base con logging en Python. A documentación oficial de Python, consultada el 22 de julio de 2026, detalla la API, las limitaciones y las diferencias entre versiones.