如何在Spring Boot中记录Rest Web服务所用的时间?

如何在Spring Boot中记录Rest Web服务所用的时间?,第1张

概述我正在使用Spring Boot编写Web Rest Web服务.我想记录我的webservice处理请求所花费的时间.另外我想记录调用的头文件,方法和URI.几个月前我使用ContainerRequestFilter和ContainerResponseFilter filter()方法在我的球衣网络服务中做了类似的工作.另外,AOP更好还是过滤?最佳答案你

我正在使用Spring Boot编写Web Rest Web服务.

我想记录我的webservice处理请求所花费的时间.
另外我想记录调用的头文件,方法和URI.

几个月前我使用ContainerRequestFilter和ContainerResponseFilter filter()方法在我的球衣网络服务中做了类似的工作.

另外,AOP更好还是过滤?

最佳答案你试过像这样的基本过滤器吗?

import java.io.IOException;import javax.servlet.*;import javax.servlet.annotation.WebFilter;import javax.servlet.http.httpServletRequest;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.stereotype.Component;@Component@WebFilter("/*")public class StatsFilter implements Filter {    private static final Logger LOGGER = LoggerFactory.getLogger(StatsFilter.class);    @OverrIDe    public voID init(FilterConfig filterConfig) throws servletexception {        // empty    }    @OverrIDe    public voID doFilter(ServletRequest req,ServletResponse resp,FilterChain chain) throws IOException,servletexception {        long time = System.currentTimeMillis();        try {            chain.doFilter(req,resp);        } finally {            time = System.currentTimeMillis() - time;            LOGGER.trace("{}: {} ms ",((httpServletRequest) req).getRequestURI(),time);        }    }    @OverrIDe    public voID destroy() {        // empty    }}
总结

以上是内存溢出为你收集整理的如何在Spring Boot中记录Rest Web服务所用的时间?全部内容,希望文章能够帮你解决如何在Spring Boot中记录Rest Web服务所用的时间?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1263158.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存