首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何限制HttpTraceFilter路径?

如何限制HttpTraceFilter路径?
EN

Stack Overflow用户
提问于 2018-07-30 22:39:59
回答 1查看 443关注 0票数 0

我正在使用spring-actuator,并希望限制跟踪请求/响应日志记录的路径。按如下方式尝试,但仍将调用的所有路径记录到http://localhost:8080/actuator/httptrace

代码语言:javascript
复制
@Bean
@ConditionalOnBean(HttpTraceFilter.class)
public FilterRegistrationBean traceFilterRegistration(HttpTraceFilter filter) {
    FilterRegistrationBean registration = new FilterRegistrationBean(filter);
    registration.setUrlPatterns("/test/*"));
    return registration;
}

在httptrace端点中,我仍然看到对http://localhost:8080/actuator/mappingshttp://localhost:8080/favicon.ico的请求。但是由于我的映射url模式,这些应该被隐藏起来,不是吗?

旁注:我注意到,当省略@ConditionalOnBean时,它可以像预期的那样使用受限制的路径。这可能与跟踪过滤器的初始化顺序有关...

EN

回答 1

Stack Overflow用户

发布于 2018-07-30 23:42:17

如果您需要截获请求,您可以这样做:

代码语言:javascript
复制
import org.springframework.web.servlet.HandlerInterceptor;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class CustomInterceptor implements HandlerInterceptor{

@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler){
    //your custom logic here.
    return true;
}
}

然后在这里注册以拦截您所需的路径:

代码语言:javascript
复制
@Configuration
@EnableWebMvc
public class WebMvcConfig implements WebMvcConfigurer {
@Override
public void addInterceptors(InterceptorRegistry registry){
    registry.addInterceptor(new 
CustomInterceptor()).addPathPatterns("/actuator/**","/test/**");
}
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51596513

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档