Spring Boot - 通过ServletRequestHandledEvent事件实现接口请求的性能监控
import org.springframework.context.ApplicationListener;
import org.springframework.boot.context.event.ServletRequestHandledEvent;
import org.springframework.stereotype.Component;
@Component
public class RequestMonitor implements ApplicationListener<ServletRequestHandledEvent> {
@Override
public void onApplicationEvent(ServletRequestHandledEvent event) {
// 获取请求处理耗时
long processingTimeMillis = event.getProcessingTimeMillis();
// 根据耗时做相应处理,例如记录到日志或数据库
logRequestHandlingTime(processingTimeMillis);
}
private void logRequestHandlingTime(long processingTimeMillis) {
// 实现日志记录或其他处理逻辑
// 例如,记录到日志系统
System.out.println("请求处理耗时: " + processingTimeMillis + " 毫秒");
}
}
这段代码实现了ApplicationListener<ServletRequestHandledEvent>
接口,用于监听Spring Boot中的ServletRequestHandledEvent
事件。当接口请求被处理完毕后,将会记录请求的处理耗时。这个例子展示了如何通过监听器模式来监控应用程序的接口性能。
评论已关闭