我的Rest Api是在Spring Boot中开发的,为了进行日志记录,我们使用Splunk和Spring AOP。我的问题是如何计算所有内部服务被调用的响应时间。现在,我能够获得端到端的响应时间。 我们需要在Splunk中创建仪表板来跟踪Api的性能。
答案 0 :(得分:0)
这是一个使用AspectJ的@Around注释的示例。
@Aspect
@Configuration
public class MethodExecutionCalculationAspect {
private Logger logger = LoggerFactory.getLogger(this.getClass());
@Around("@annotation(com.in28minutes.springboot.tutorial.basics.example.aop.TrackTime)")
public void around(ProceedingJoinPoint joinPoint) throws Throwable {
long startTime = System.currentTimeMillis();
joinPoint.proceed();
long timeTaken = System.currentTimeMillis() - startTime;
logger.info("Time Taken by {} is {}", joinPoint, timeTaken);
}
}
所以,我认为这是您想要做的。