在Spring/Tomcat中记录传入和传出HTTP REST请求/响应
我有一个SpringREST服务,有时当我请求REST服务时,我会得到一个HTTP401。我正在调查这个问题,这是间歇性的,并非总是发生。(每次发送的请求都是一样的)。我还集成了swagger来提供REST文档。 我正在将我的SpringREST服务作为一个webapp部署到Tomcat7在Spring/Tomcat中记录传入和传出HTTP REST请求/响应,spring,rest,tomcat,logging,spring-4,Spring,Rest,Tomcat,Logging,Spring 4,我有一个SpringREST服务,有时当我请求REST服务时,我会得到一个HTTP401。我正在调查这个问题,这是间歇性的,并非总是发生。(每次发送的请求都是一样的)。我还集成了swagger来提供REST文档。 我正在将我的SpringREST服务作为一个webapp部署到Tomcat7 即使请求是未经验证的请求,我如何记录传入和传出的HTTP请求。我希望能够将所有传入的请求与其相应的传出响应联系起来。这也是我想在生产应用程序中推广的内容 在Spring中记录REST服务方面,我可以采用哪些最
谢谢也许最好的方法是将
日志框架
与定制的javax.servlet.Filter
结合使用。它可以独立于应用程序中使用的其他环境(例如SpringMVC或Struts)跟踪所有HTTP请求/响应
在这种情况下,日志必须与其他日志分开工作,这一点很重要
部分应用程序,否则它将依赖于某些组件,不能反映实际的低级别事件,或者根本不能被破坏
我可以建议您使用Logback,因为它有现成的组件,可以做您想要的事情
使用Logback
时,WEB应用程序的配置可能如下所示:
web.xml
<filter>
<filter-name>TeeFilter</filter-name>
<filter-class>ch.qos.logback.access.servlet.TeeFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>TeeFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
提过滤器
ch.qos.logback.access.servlet.TeeFilter
提过滤器
/*
更多详细信息可以在中找到。Spring有一个默认过滤器来执行此操作,请参见。如果您想要更多,请使用诸如集中式日志记录/跟踪之类的工具。