在spring + tomcat中记录REST API响应时间的最佳方法

问题描述 投票:2回答:1

我正在使用带有tomcat servlet容器的spring mvc用于Web服务,并希望记录API的响应时间(总执行时间),那么是否有任何spring服务或者什么是在春天记录与api执行时间相关的信息的最佳方式控制器级别。

java spring-mvc tomcat logging
1个回答
0
投票

随着观点数量的增加,这篇文章没有正确答案,所以我想回答我的发现。因此,如果您使用Spring和tomcat,有两种方法。

方法1#

实现拦截器并在请求preHandle块中的新参数(requestReceivingTime)中添加当前时间,并在postHandle块中记录当前时间和requestReceivingTime的减法。

方法2#

您可以使用tomcat访问日志记录请求时间,您必须编辑您的conf/server.xml并根据您的需要更改格式。为exp

<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"
               pattern="%{X-Forwarded-For}i , %t Bytes sent: [%B] , Time taken millis: [%D] , Time taken seconds: [%T]  &quot;%r&quot; %s" />

注意:在你的情况下可能会改变模式,这取决于tomcat版本。

希望这会有所帮助!

© www.soinside.com 2019 - 2024. All rights reserved.