You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by ig...@apache.org on 2010/12/19 12:49:45 UTC
svn commit: r1050818 - /httpd/site/trunk/docs/dev/debugging.html
Author: igalic
Date: Sun Dec 19 11:49:45 2010
New Revision: 1050818
URL: http://svn.apache.org/viewvc?rev=1050818&view=rev
Log:
Rebuild transformations.
Modified:
httpd/site/trunk/docs/dev/debugging.html
Modified: httpd/site/trunk/docs/dev/debugging.html
URL: http://svn.apache.org/viewvc/httpd/site/trunk/docs/dev/debugging.html?rev=1050818&r1=1050817&r2=1050818&view=diff
==============================================================================
--- httpd/site/trunk/docs/dev/debugging.html [utf-8] (original)
+++ httpd/site/trunk/docs/dev/debugging.html [utf-8] Sun Dec 19 11:49:45 2010
@@ -73,7 +73,7 @@ href="/info/">Miscellaneous</a></b></p>
<tr><td>
<blockquote>
<p>This document is a collection of notes regarding tools and techniques
-for debugging Apache and Apache modules.</p>
+for debugging Apache httpd and its modules.</p>
<p>Got more tips? Send 'em to
<a href="mailto:docs@httpd.apache.org">docs@httpd.apache.org</a>. Thanks!</p>
<ol>
@@ -100,7 +100,7 @@ for debugging Apache and Apache modules.
</tr>
<tr><td>
<blockquote>
-<p>If you use the gcc or egcs compilers, it is likely that the best
+<p>If you use the gcc compiler, it is likely that the best
debugger for your system is gdb. This is only a brief summary of how
to run gdb on Apache -- you should look at the info and man files for
gdb to get more information on gdb commands and common debugging techniques.
@@ -208,10 +208,9 @@ working directory and using the server r
parameter values.</li>
<li>use the "<code>p</code>" command to print the value of a variable.</li>
</ol>
-<p>A file in the <code>src/</code> directory (1.3) or the root directory
-(2.x) called <code>.gdbinit</code> provides useful macros for printing
-out various internal structures of httpd like tables (<code>dump_table</code>),
-brigades (<code>dump_brigade</code>) and filter chains
+<p>A file in the the root directory called <code>.gdbinit</code> provides
+useful macros for printing out various internal structures of httpd like tables
+(<code>dump_table</code>), brigades (<code>dump_brigade</code>) and filter chains
(<code>dump_filters</code>).</p>
<p>If you are debugging a repeatable crash, simply run gdb as above
and make the request -- gdb should capture the crash and provide a
@@ -243,7 +242,7 @@ occurred during processing.</p>
<p>A backtrace will let you know the hierarchy of procedures that
were called to get to a particular point in the process. On some platforms
you can get a live backtrace of any process.</p>
-<p>For SVR4-based variants of Unix, the pstack command for proc can
+<p>For SVR4-based variants of Unix, the <code>pstack</code> command for proc can
be used to display a a live backtrace. For example, on Solaris it looks
like</p>
<pre>
@@ -370,7 +369,7 @@ the server must be configured and starte
dumps which can be analyzed further.</p>
<p>To ensure that a core dump is written to a directory which is
writable by the user which child processes run as (such as
-<code>apache</code>), the <a href="http://httpd.apache.org/docs/2.0/mod/mpm_common.html#coredumpdirectory"><code>CoreDumpDirectory</code></a>
+<code>apache</code>), the <a href="http://httpd.apache.org/docs/current/mod/mpm_common.html#coredumpdirectory"><code>CoreDumpDirectory</code></a>
directive must be added to <code>httpd.conf</code>; for example:</p>
<pre>
CoreDumpDirectory /tmp
@@ -510,31 +509,30 @@ At this point you can use:</p>
</tr>
<tr><td>
<blockquote>
-<p>On Solaris (at least 2.7 and up) use <b><code>coreadm</code></b> to make
+<p>On Solaris use <a href="http://docs.sun.com/app/docs/doc/816-5166/coreadm-1m"><code>coreadm(1M)</code></a> to make
<code>setuid()</code> processes actually dump core. By default a setuid()
process does not dump core. This is the reason why httpd servers started as
root with child processes running as a different user (such as
<code>apache</code>) do not coredump even when the
-<a href="http://httpd.apache.org/docs/2.0/mod/mpm_common.html#coredumpdirectory">
+<a href="http://httpd.apache.org/docs/current/mod/mpm_common.html#coredumpdirectory">
<code>CoreDumpDirectory</code></a>
directive had been set to an appropriate and writable directory and
<b><code>ulimit -c</code></b> has a sufficient size. See also
<a href="#crashes">Debugging intermittent crashes</a> above.
</p>
-<p>Jens-Uwe Mager wrote:</p>
-<blockquote>
-<p><i>For example I am using:</i></p>
-<pre>
- # coreadm
- global core file pattern: /var/core/core.%f.%p.u%u
- init core file pattern: core
- global core dumps: enabled
- per-process core dumps: enabled
- global setid core dumps: enabled
- per-process setid core dumps: enabled
- global core dump logging: disabled
+<p>Example:</p>
+<pre>
+-bash-3.00# coreadm
+ global core file pattern: /var/core/core.%f.%p.u%u
+ global core file content: default
+ init core file pattern: core
+ init core file content: default
+ global core dumps: disabled
+ per-process core dumps: enabled
+ global setid core dumps: enabled
+ per-process setid core dumps: enabled
+ global core dump logging: disabled
</pre>
-</blockquote>
</blockquote>
</td></tr>
</table>
@@ -548,11 +546,11 @@ directive had been set to an appropriate
</tr>
<tr><td>
<blockquote>
-<p>This is more difficult than I have time to describe at the moment.
+<p>This is too deep a subject to fully describe in this documentation.
Here are some pointers to useful discussions and tools:</p>
<ul>
<li>
-snoop is a packet sniffer that is part of Solaris.
+<code>snoop</code> is a packet sniffer that is part of Solaris.
</li>
<li>
<a href="http://www.tcpdump.org/">tcpdump</a> is a packet sniffer that is
@@ -570,11 +568,6 @@ allows the analysis of the sniffed data.
<li><a href="http://www.tcpshow.org/">tcpshow</a> is
another one.</li>
</ul>
-<p>There is also a simple ASCII viewer for TCP dump traces in the Apache
-repository in the file
-<code>
-<a href="http://cvs.apache.org/viewcvs.cgi/apache-1.3/src/test/tcpdumpscii.txt">
-src/test/tcpdumpscii.txt</a></code>.</p>
</blockquote>
</td></tr>
</table>