<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Db::set_error_stream()</title> <link rel="stylesheet" href="apiReference.css" type="text/css" /> <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" /> <link rel="start" href="index.html" title="Berkeley DB C++ API Reference" /> <link rel="up" href="db.html" title="Chapter 2. The Db Handle" /> <link rel="prev" href="dbset_errfile.html" title="Db::set_errfile()" /> <link rel="next" href="dbset_errpfx.html" title="Db::set_errpfx()" /> </head> <body> <div xmlns="" class="navheader"> <div class="libver"> <p>Library Version 11.2.5.3</p> </div> <table width="100%" summary="Navigation header"> <tr> <th colspan="3" align="center">Db::set_error_stream()</th> </tr> <tr> <td width="20%" align="left"><a accesskey="p" href="dbset_errfile.html">Prev</a> </td> <th width="60%" align="center">Chapter 2. The Db Handle </th> <td width="20%" align="right"> <a accesskey="n" href="dbset_errpfx.html">Next</a></td> </tr> </table> <hr /> </div> <div class="sect1" lang="en" xml:lang="en"> <div class="titlepage"> <div> <div> <h2 class="title" style="clear: both"><a id="dbset_error_stream"></a>Db::set_error_stream()</h2> </div> </div> </div> <pre class="programlisting">#include <db_cxx.h> void Db::set_error_stream(class ostream*); </pre> <p> When an error occurs in the Berkeley DB library, an exception is thrown or an <span class="bold"><strong>errno</strong></span> value is returned by the interface. In some cases, however, the <span class="bold"><strong>errno</strong></span> value may be insufficient to completely describe the cause of the error, especially during initial application debugging. </p> <p> The <a class="xref" href="envset_error_stream.html" title="DbEnv::set_error_stream()">DbEnv::set_error_stream()</a> and <code class="methodname">Db::set_error_stream()</code> methods are used to enhance the mechanism for reporting error messages to the application by setting the C++ ostream used for displaying additional Berkeley DB error messages. In some cases, when an error occurs, Berkeley DB will output an additional error message to the specified stream. </p> <p> The error message will consist of the prefix string and a colon ("<span class="bold"><strong>:</strong></span>") (if a prefix string was previously specified using <a class="xref" href="dbset_errpfx.html" title="Db::set_errpfx()">Db::set_errpfx()</a>, an error string, and a trailing <newline> character. </p> <p> Setting <span class="bold"><strong>stream</strong></span> to NULL unconfigures the interface. </p> <p> Alternatively, you can use the <a class="xref" href="envset_errfile.html" title="DbEnv::set_errfile()">DbEnv::set_errfile()</a> or <a class="xref" href="dbset_errfile.html" title="Db::set_errfile()">Db::set_errfile()</a> methods to display the additional information via a C Library <code class="literal">FILE *</code>, or the <a class="xref" href="envset_errcall.html" title="DbEnv::set_errcall()">DbEnv::set_errcall()</a> and <a class="xref" href="dbset_errcall.html" title="Db::set_errcall()">Db::set_errcall()</a> methods to capture the additional error information in a way that does not use either output streams or C Library <code class="literal">FILE *</code>'s. You should not mix these approaches. </p> <p> This error-logging enhancement does not slow performance or significantly increase application size, and may be run during normal operation as well as during application debugging. </p> <p> For <a class="link" href="db.html" title="Chapter 2. The Db Handle">Db</a> handles opened inside of Berkeley DB environments, calling the <code class="methodname">Db::set_error_stream()</code> method affects the entire environment and is equivalent to calling the <a class="xref" href="envset_error_stream.html" title="DbEnv::set_error_stream()">DbEnv::set_error_stream()</a> method. </p> <p> The <code class="methodname">Db::set_error_stream()</code> method may be called at any time during the life of the application. </p> <div class="sect2" lang="en" xml:lang="en"> <div class="titlepage"> <div> <div> <h3 class="title"><a id="idp559608"></a>Parameters</h3> </div> </div> </div> <div class="sect3" lang="en" xml:lang="en"> <div class="titlepage"> <div> <div> <h4 class="title"><a id="idp550568"></a>stream</h4> </div> </div> </div> <p> The <span class="bold"><strong>stream</strong></span> parameter is the application-specified output stream to be used for additional error information. </p> </div> </div> <div class="sect2" lang="en" xml:lang="en"> <div class="titlepage"> <div> <div> <h3 class="title"><a id="idp1908496"></a>Class</h3> </div> </div> </div> <p> <a class="link" href="db.html" title="Chapter 2. The Db Handle">Db</a> </p> </div> <div class="sect2" lang="en" xml:lang="en"> <div class="titlepage"> <div> <div> <h3 class="title"><a id="idp1752256"></a>See Also</h3> </div> </div> </div> <p> <a class="xref" href="db.html#dblist" title="Database and Related Methods">Database and Related Methods</a> </p> </div> </div> <div class="navfooter"> <hr /> <table width="100%" summary="Navigation footer"> <tr> <td width="40%" align="left"><a accesskey="p" href="dbset_errfile.html">Prev</a> </td> <td width="20%" align="center"> <a accesskey="u" href="db.html">Up</a> </td> <td width="40%" align="right"> <a accesskey="n" href="dbset_errpfx.html">Next</a></td> </tr> <tr> <td width="40%" align="left" valign="top">Db::set_errfile() </td> <td width="20%" align="center"> <a accesskey="h" href="index.html">Home</a> </td> <td width="40%" align="right" valign="top"> Db::set_errpfx()</td> </tr> </table> </div> </body> </html>