Merge in Ping's changes to the cgitb documentation, and add a version

annotation as well.
This closes SF patch #494582.
This commit is contained in:
Fred Drake 2001-12-18 15:51:55 +00:00
parent 6f4f8c7fe1
commit e088970ce0
1 changed files with 40 additions and 18 deletions

View File

@ -3,38 +3,60 @@
\declaremodule{standard}{cgitb} \declaremodule{standard}{cgitb}
\modulesynopsis{Configurable traceback handler for CGI scripts.} \modulesynopsis{Configurable traceback handler for CGI scripts.}
\moduleauthor{Ka Ping Yee}{ping@lfw.org} \moduleauthor{Ka-Ping Yee}{ping@lfw.org}
\sectionauthor{Fred L. Drake, Jr.}{fdrake@acm.org} \sectionauthor{Fred L. Drake, Jr.}{fdrake@acm.org}
\versionadded{2.2}
\index{CGI!exceptions}
\index{CGI!tracebacks} \index{CGI!tracebacks}
\index{exception!in CGI scripts}
\index{traceback!in CGI scripts} \index{traceback!in CGI scripts}
The \module{cgitb} module provides a special exception handler for CGI The \module{cgitb} module provides a special exception handler for CGI
scripts. Using this module, an exception raised and left uncaught in scripts. After this module is activated using the \function{enable()}
a CGI script can be presented as colorized HTML in the user's Web function, if an uncaught exception occurs, a detailed, formatted
browser. The options to the \function{enable()} function can be used report will be sent to the Web browser. The report includes a
to control whether the colorized traceback is presented and whether traceback showing excerpts of the source code for each level, as well
the traceback is logged to a file for later analysis. as the values of the arguments and local variables to currently
running functions, to help you debug the problem. Optionally, you can
save this information to a file instead of sending it to the browser.
To enable this feature, simply add one line to the top of your CGI script:
\begin{verbatim}
import cgitb; cgitb.enable()
\end{verbatim}
The options to the \function{enable()} function control whether the
report is displayed in the browser and whether the report is logged
to a file for later analysis.
\begin{funcdesc}{enable}{\optional{display\optional{, logdir\optional{, \begin{funcdesc}{enable}{\optional{display\optional{, logdir\optional{,
context}}}} context}}}}
This function causes the \module{cgitb} module to take over the This function causes the \module{cgitb} module to take over the
interpreters default handling for exceptions that propogate out of interpreter's default handling for exceptions by setting the
the top level of a script. The causes \module{cgitb} to set the
value of \code{\refmodule{sys}.excepthook}. value of \code{\refmodule{sys}.excepthook}.
\withsubitem{(in module sys)}{\ttindex{excepthook()}}
The optional argument \var{display} defaults to true and can be set The optional argument \var{display} defaults to \code{1} and can be set
to false to suppress sending the traceback to the browser. to \code{0} to suppress sending the traceback to the browser.
\var{logdir}, if given, should be a directory to cause tracebacks to If the argument \var{logdir} is present, the traceback reports are
be written to files there; by default tracebacks will not be written written to files. The value of \var{logdir} should be a directory
to files. \var{context} is the number of lines of context around where these files will be placed.
the offending line in a traceback display; this defaults to The optional argument \var{context} is the number of lines of
\code{5}. context to display around the current line of source code in the
traceback; this defaults to \code{5}.
\end{funcdesc} \end{funcdesc}
\begin{funcdesc}{handler}{\optional{info}} \begin{funcdesc}{handler}{\optional{info}}
This function handles an exception using the default settings. This This function handles an exception using the default settings
can be used when you've caught an exception and want to report it (that is, show a report in the browser, but don't log to a file).
using \module{cgitb}, but need to continue processing. This can be used when you've caught an exception and want to
report it using \module{cgitb}. The optional \var{info} argument
should be a 3-tuple containing an exception type, exception
value, and traceback object, exactly like the tuple returned by
\code{\refmodule{sys}.exc_info()}. If the \var{info} argument
is not supplied, the current exception is obtained from
\code{\refmodule{sys}.exc_info()}.
\end{funcdesc} \end{funcdesc}