Debugging with RequestDumperValve
Occasionally you will want to get a more verbose look at web traffic, much like the
telnet and nc
conversations detailed in the last section. Tomcat provides a tool for this very purpose:
the RequestDumperValve. It is very easy to set up; just
uncomment a line in server.xml, or add the line within any Host or Context:
<Valve className="org.apache.catalina.valves.RequestDumperValve" />
Once you restart Tomcat, you will get a very verbose output appearing in the log for the
given Server, Host, or
Context. To get an idea of how much information
RequestDumperValve provides, Example 8-5 is a portion of a 106-line log for
one hit on a web site (every line was preceded by a timestamp, which
we've removed to save paper).
Each request begins with a line of equal signs, and a line of dashes separates the
request and the response. This particular example was a request for /index.jsp.
Example 8-5. RequestDumperValve output for request to /darwinsys/
RequestDumperValve[/darwinsys]: =============================================================== RequestDumperValve[/darwinsys]: REQUEST URI =/darwinsys/index.jsp RequestDumperValve[/darwinsys]: authType=null RequestDumperValve[/darwinsys]: characterEncoding=null RequestDumperValve[/darwinsys]: contentLength=−1 RequestDumperValve[/darwinsys]: contentType=null RequestDumperValve[/darwinsys]: contextPath=/darwinsys RequestDumperValve[/darwinsys]: cookie=JSESSIONID=C04FE083F247D0C7F24174AA8B 78B526 RequestDumperValve[/darwinsys]: ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access