fastadmin调用接口的记录单独日志记录
时间: 2023-09-08 11:09:54 浏览: 50
在FastAdmin中,可以通过自定义拦截器来记录调用接口的日志。
1. 创建一个实现了HandlerInterceptor接口的拦截器类,例如:
```
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@Component
public class ApiLogInterceptor implements HandlerInterceptor {
private static final Logger logger = LoggerFactory.getLogger(ApiLogInterceptor.class);
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
logger.info("API request: {} {}", request.getMethod(), request.getRequestURI());
return true;
}
@Override
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
// do nothing
}
@Override
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
logger.info("API response: {} {}", response.getStatus(), response.getContentType());
}
}
```
这里的拦截器记录了API请求的方法、URI等信息,并在请求完成后记录了响应的状态码和内容类型。
2. 在配置文件中配置拦截器,例如:
```
spring.mvc.interceptors=org.example.ApiLogInterceptor
```
这里配置了ApiLogInterceptor拦截器。
3. 可以使用Slf4j等日志框架来记录日志,也可以使用logback等日志框架的配置文件来配置日志输出位置、格式等信息。
这样,就可以单独记录调用接口的日志了。