Initial commit of OpenSPARC T2 architecture model.
[OpenSPARC-T2-SAM] / sam-t2 / devtools / v9 / html / python / lib / module-cgitb.html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<link rel="STYLESHEET" href="lib.css" type='text/css' />
<link rel="SHORTCUT ICON" href="../icons/pyfav.png" type="image/png" />
<link rel='start' href='../index.html' title='Python Documentation Index' />
<link rel="first" href="lib.html" title='Python Library Reference' />
<link rel='contents' href='contents.html' title="Contents" />
<link rel='index' href='genindex.html' title='Index' />
<link rel='last' href='about.html' title='About this document...' />
<link rel='help' href='about.html' title='About this document...' />
<link rel="next" href="module-urllib.html" />
<link rel="prev" href="module-cgi.html" />
<link rel="parent" href="internet.html" />
<link rel="next" href="module-urllib.html" />
<meta name='aesop' content='information' />
<title>11.3 cgitb -- Traceback manager for CGI scripts</title>
</head>
<body>
<DIV CLASS="navigation">
<div id='top-navigation-panel' xml:id='top-navigation-panel'>
<table align="center" width="100%" cellpadding="0" cellspacing="2">
<tr>
<td class='online-navigation'><a rel="prev" title="11.2.10 Common problems and"
href="node479.html"><img src='../icons/previous.png'
border='0' height='32' alt='Previous Page' width='32' /></A></td>
<td class='online-navigation'><a rel="parent" title="11. Internet Protocols and"
href="internet.html"><img src='../icons/up.png'
border='0' height='32' alt='Up One Level' width='32' /></A></td>
<td class='online-navigation'><a rel="next" title="11.4 urllib "
href="module-urllib.html"><img src='../icons/next.png'
border='0' height='32' alt='Next Page' width='32' /></A></td>
<td align="center" width="100%">Python Library Reference</td>
<td class='online-navigation'><a rel="contents" title="Table of Contents"
href="contents.html"><img src='../icons/contents.png'
border='0' height='32' alt='Contents' width='32' /></A></td>
<td class='online-navigation'><a href="modindex.html" title="Module Index"><img src='../icons/modules.png'
border='0' height='32' alt='Module Index' width='32' /></a></td>
<td class='online-navigation'><a rel="index" title="Index"
href="genindex.html"><img src='../icons/index.png'
border='0' height='32' alt='Index' width='32' /></A></td>
</tr></table>
<div class='online-navigation'>
<b class="navlabel">Previous:</b>
<a class="sectref" rel="prev" href="node479.html">11.2.10 Common problems and</A>
<b class="navlabel">Up:</b>
<a class="sectref" rel="parent" href="internet.html">11. Internet Protocols and</A>
<b class="navlabel">Next:</b>
<a class="sectref" rel="next" href="module-urllib.html">11.4 urllib </A>
</div>
<hr /></div>
</DIV>
<!--End of Navigation Panel-->
<H1><A NAME="SECTION0013300000000000000000">
11.3 <tt class="module">cgitb</tt> --
Traceback manager for CGI scripts</A>
</H1>
<P>
<A NAME="module-cgitb"></A>
<P>
<span class="versionnote">New in version 2.2.</span>
<a id='l2h-3182' xml:id='l2h-3182'></a>
<P>
The <tt class="module">cgitb</tt> module provides a special exception handler for Python
scripts. (Its name is a bit misleading. It was originally designed to
display extensive traceback information in HTML for CGI scripts. It was
later generalized to also display this information in plain text.) After
this module is activated, if an uncaught exception occurs, a detailed,
formatted report will be displayed. The report
includes a traceback showing excerpts of the source code for each level,
as well 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.
<P>
To enable this feature, simply add one line to the top of your CGI script:
<P>
<div class="verbatim"><pre>
import cgitb; cgitb.enable()
</pre></div>
<P>
The options to the <tt class="function">enable()</tt> function control whether the
report is displayed in the browser and whether the report is logged
to a file for later analysis.
<P>
<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
<td><nobr><b><tt id='l2h-3178' xml:id='l2h-3178' class="function">enable</tt></b>(</nobr></td>
<td><var></var><big>[</big><var>display</var><big>[</big><var>, logdir</var><big>[</big><var>,
context</var><big>[</big><var>, format</var><big>]</big><var></var><big>]</big><var></var><big>]</big><var></var><big>]</big><var></var>)</td></tr></table></dt>
<dd>
This function causes the <tt class="module">cgitb</tt> module to take over the
interpreter's default handling for exceptions by setting the
value of <code><tt class="module"><a href="module-sys.html">sys</a></tt>.excepthook</code>.
<a id='l2h-3180' xml:id='l2h-3180'></a>
<P>
The optional argument <var>display</var> defaults to <code>1</code> and can be set
to <code>0</code> to suppress sending the traceback to the browser.
If the argument <var>logdir</var> is present, the traceback reports are
written to files. The value of <var>logdir</var> should be a directory
where these files will be placed.
The optional argument <var>context</var> is the number of lines of
context to display around the current line of source code in the
traceback; this defaults to <code>5</code>.
If the optional argument <var>format</var> is <code>"html"</code>, the output is
formatted as HTML. Any other value forces plain text output. The default
value is <code>"html"</code>.
</dl>
<P>
<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
<td><nobr><b><tt id='l2h-3181' xml:id='l2h-3181' class="function">handler</tt></b>(</nobr></td>
<td><var></var><big>[</big><var>info</var><big>]</big><var></var>)</td></tr></table></dt>
<dd>
This function handles an exception using the default settings
(that is, show a report in the browser, but don't log to a file).
This can be used when you've caught an exception and want to
report it using <tt class="module">cgitb</tt>. The optional <var>info</var> argument
should be a 3-tuple containing an exception type, exception
value, and traceback object, exactly like the tuple returned by
<code><tt class="module"><a href="module-sys.html">sys</a></tt>.exc_info()</code>. If the <var>info</var> argument
is not supplied, the current exception is obtained from
<code><tt class="module"><a href="module-sys.html">sys</a></tt>.exc_info()</code>.
</dl>
<DIV CLASS="navigation">
<div class='online-navigation'>
<p></p><hr />
<table align="center" width="100%" cellpadding="0" cellspacing="2">
<tr>
<td class='online-navigation'><a rel="prev" title="11.2.10 Common problems and"
href="node479.html"><img src='../icons/previous.png'
border='0' height='32' alt='Previous Page' width='32' /></A></td>
<td class='online-navigation'><a rel="parent" title="11. Internet Protocols and"
href="internet.html"><img src='../icons/up.png'
border='0' height='32' alt='Up One Level' width='32' /></A></td>
<td class='online-navigation'><a rel="next" title="11.4 urllib "
href="module-urllib.html"><img src='../icons/next.png'
border='0' height='32' alt='Next Page' width='32' /></A></td>
<td align="center" width="100%">Python Library Reference</td>
<td class='online-navigation'><a rel="contents" title="Table of Contents"
href="contents.html"><img src='../icons/contents.png'
border='0' height='32' alt='Contents' width='32' /></A></td>
<td class='online-navigation'><a href="modindex.html" title="Module Index"><img src='../icons/modules.png'
border='0' height='32' alt='Module Index' width='32' /></a></td>
<td class='online-navigation'><a rel="index" title="Index"
href="genindex.html"><img src='../icons/index.png'
border='0' height='32' alt='Index' width='32' /></A></td>
</tr></table>
<div class='online-navigation'>
<b class="navlabel">Previous:</b>
<a class="sectref" rel="prev" href="node479.html">11.2.10 Common problems and</A>
<b class="navlabel">Up:</b>
<a class="sectref" rel="parent" href="internet.html">11. Internet Protocols and</A>
<b class="navlabel">Next:</b>
<a class="sectref" rel="next" href="module-urllib.html">11.4 urllib </A>
</div>
</div>
<hr />
<span class="release-info">Release 2.4.2, documentation updated on 28 September 2005.</span>
</DIV>
<!--End of Navigation Panel-->
<ADDRESS>
See <i><a href="about.html">About this document...</a></i> for information on suggesting changes.
</ADDRESS>
</BODY>
</HTML>