Il modulo cgitb fornisce un gestore di eccezioni speciale per gli script Python. (Il suo nome può causare confusione. Originariamente è stato progettato per mostrare informazioni estensive sulle traceback in HTML per gli script CGI. Successivamente è stato generalizzato per mostrare anche informazioni in puro testo.) Dopo che questo modulo è stato attivato, se interviene un'eccezione non gestita, verrà mostrato un report, dettagliato e formattato. Il report include una traceback contentente gli estratti del codice sorgente per ogni livello, quanto il valore degli argomenti e delle variabili locali delle funzioni correntemente in esecuzione, per aiutare alla risoluzione del problema. Facoltativamente si possono salvare queste informazioni in un file invece di inviarle al browser.
Per abilitare questa funzionalità, semplicemente si aggiunga una linea all'inizio dello script CGI:
import cgitb; cgitb.enable()
Le opzioni della funzione enable() controllano quando il report viene mostrato nel browser e quando il report viene registrato in un file per un'analisi successiva.
| [display[, logdir[, context[, format]]]]) | 
sys.excepthook.
  
L'argomento facoltativo display viene impostato al valore
  predefinito 1 e può essere impostato a 0 per
  sopprimere l'invio delle traceback al browser.  Se l'argomento
  logdir è presente, il rapporto della traceback viene scritto
  in un file.  Il valore di logdir deve essere una directory
  dove questi file verranno posizionati.  L'argomento facoltativo
  context è il numero di righe di contesto da mostrare intorno
  alla riga corrente del codice sorgente nella traceback; il suo
  valore predefinito è 5.
  Se l'argomento facoltativo format è "html", l'output
  viene formattato come HTML.  Ogni altro valore forza il risultato in
  puro testo.  Il valore predefinito è "html".
| [info]) | 
sys.exc_info().  Se l'argomento
  info non viene fornito, l'eccezione corrente è ottenuta da
  sys.exc_info().