有什么方法可以监视Java应用程序的功能流?

时间:2019-03-08 06:41:50

标签: java performance monitoring execution

在我的新任务中,我需要了解一个中级Java应用程序。为了更快地理解流程,我有一个想法,如果我可以在运行时看到正在调用的函数,最后一个函数响应了,那么我就可以真正想到整个地图。

我已经使用了诸如AppDynamics之类的工具,该工具可以告知延迟/数据库调用等。但是我所需要的是可以告诉我运行时流程的工具。 喜欢,
Controller.getStudent() -> Service.getStudent() -> Repository.getStudent() -> ....

我想知道是否有这样的工具/技术。就像在调试模式下记录stacktrace一样。我可以想象有一种工具在做Thread.currentThread().getStackTrace()。有人对如何做到这一点有想法吗? (我正在使用Springboot和Jboss)

编辑:我并不是真正在寻找日志,调试等内容。我觉得可能有些东西可以告诉正在执行的功能。并确定是否有任何限制。

1 个答案:

答案 0 :(得分:1)

@Aspect
@Component
public class FunctionTraceAspect {
    @Before("execution(* some.package.*.*.*(..))")
    public void appendUserContext(JoinPoint joinPoint) {
        System.out.println("TRACE: " + joinPoint.getSignature());
   }
}