Java日志记录方法调用?
是否有任何工具可用于记录运行java应用程序的所有方法调用?
例如。
String str = "..."; String anotherString = str.trim();
应该记录这样的事情:
..method call trim() from class java.lang.String
你需要的是一个分析器。
一些流行的分析器是: JProfiler ,它有不同的方法来进行方法调用记录,包括CPU和内存级别。
VisualVM是另一个
许多IDE(我知道Netbeans和Eclipse)都有自己可以使用的分析器。
一种方法是使用AspectJ并编写拦截方法调用的建议。 有一个如何在程序员指南中执行“跟踪”日志记录的示例。
您可以使用@Loggable
-aspects中的 @Loggable
注释,它使用简单的日志记录机制包装您要调试的所有方法:
@Loggable(Loggable.DEBUG) public String load(URL url) { return url.openConnection().getContent(); }
它通过SLF4J登录。