"cgitb" --- Controlador de rastreos para scripts CGI
****************************************************

**Código fuente:** Lib/cgitb.py

Deprecated since version 3.11, will be removed in version 3.13: El
módulo "cgitb" está obsoleto (ver **PEP 594** para más detalles).

======================================================================

El modulo "cgitb" proporciona un manejador especial de excepciones
para scripts de Python. (Su nombre es un poco engañoso. Fue diseñado
originalmente para mostrar una amplia información de rastreo en HTML
para los scripts CGI). Más tarde se generalizó para mostrar también
esta información en texto plano). Después de activar este módulo, si
se produce una excepción no capturada, se mostrará un informe
formateado y detallado. El informe incluye un rastreo que muestra
extractos del código fuente para cada nivel, así como los valores de
los argumentos y las variables locales de las funciones que se están
ejecutando actualmente, para ayudar a depurar el problema.
Opcionalmente, puedes guardar esta información en un archivo en lugar
de enviarla al navegador.

Para activar esta función, simplemente añade lo siguiente a la parte
superior de tu script CGI:

   import cgitb
   cgitb.enable()

Las opciones de la función "enable()" controlan si el informe se
muestra en el explorador y si este se registra en un archivo para su
posterior análisis.

cgitb.enable(display=1, logdir=None, context=5, format='html')

   Esta función hace que el módulo "cgitb" se haga cargo del manejo de
   excepciones por defecto del intérprete, estableciendo el valor de
   "sys.excepthook".

   El argumento opcional *display* tiene como valor predeterminado "1"
   y se puede establecer en "0" para suprimir el  rastreo al
   navegador. Si el argumento *logdir* está presente, los informes de
   rastreo se escriben en los archivos. El valor de *logdir* debe ser
   un directorio donde  estos archivos serán colocados. El argumento
   opcional *context* es el número de líneas de contexto que se
   mostrarán alrededor de la línea actual del código fuente en el
   rastreo; esto tiene como valor predeterminado "5". Si el argumento
   opcional *format* es ""html"", la salida se formatea como HTML.
   Cualquier otro valor fuerza la salida a un formato de texto plano.
   El valor predeterminado es ""html"".

cgitb.text(info, context=5)

   Esta función controla la excepción descrita por *info* (una tupla
   de 3 que contiene el resultado de "sys..exc_info()"), dando formato
   a su rastreo como texto y retornando el resultado como una cadena
   de caracteres. El argumento opcional *context* es el número de
   líneas de contexto que se mostrarán alrededor de la línea actual de
   código fuente en el rastreo; esto tiene como valor predeterminado
   "5".

cgitb.html(info, context=5)

   Esta función controla la excepción descrita por *info* (una tupla
   de 3 que contiene el resultado de "sys..exc_info()"), dando formato
   a su rastreo como HTML y retornando el resultado como una cadena de
   caracteres. El argumento opcional *context* es el número de líneas
   de contexto que se mostrarán alrededor de la línea actual de código
   fuente en el rastreo; esto tiene como valor predeterminado "5".

cgitb.handler(info=None)

   Esta función maneja una excepción utilizando la configuración
   predeterminada (es decir, muestra un informe en el navegador, pero
   no lo registra en un archivo). Esto puede ser usado cuando has
   capturado una excepción y quieres reportarla usando "cgitb". El
   argumento opcional *info* debería ser una tupla de 3 que contenga
   un tipo de excepción, un valor de excepción y un objeto de rastreo,
   exactamente como la tupla retornada por "sys.exc_info()". Si no se
   proporciona el argumento *info*, la excepción actual se obtiene de
   "sys.exc_info()".
