我编写了这个过滤器来测量 API 的响应时间。当我收到错误时触发 onSuccess。有什么方法可以分别登录成功和错误以更好地记录。
public class RequestTimingFilter implements WebFilter {
@Override
public Mono<Void> filter(ServerWebExchange exchange, WebFilterChain chain) {
if (exchange.getRequest().getPath().value().contains("something")) {
long startMillis = System.currentTimeMillis();
return chain
.filter(exchange)
.doOnSuccess(
success ->
log.info(
"Api call successfull: {}ms",
System.currentTimeMillis() - startMillis));
}
return chain.filter(exchange);
}
}