我想添加日志记录请求和响应到我在Tomcat 6中运行的Java webapp。其目的是生成一个类似于Wireshark将显示的输出的日志文件。例如:如何漂亮打印HttpServletRequest和HttpServletResponse
GET/HTTP/1.1
Host: www.bing.com
Connection: keep-alive
Cache-Control: max-age=0
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.204 Safari/534.16
Accept: application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-GB,en-US;q=0.8,en;q=0.6
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
我认为最好的办法是使用过滤器来捕获传入HttpServletRequest和包装HttpServletResponse的允许响应内容被捕获。
但是,一旦我有一个HttpServletRequest和HttpServletResponse有一个标准的方式来漂亮打印这些对象,因为他们出现在电线上?
我最终在Logback Access中使用了类的修改版本。 – mchr 2011-04-26 11:43:17