我熟悉标准的调试实践,并且在这种情况下不起作用,因为我无法手动逐步执行Spring应用程序。初始化服务时(例如到数据库的旅行,Bean初始化等),将发生许多过程。是否有一个概要分析工具可以捕获方法花费了多少时间,以及导致应用停止的问题到底在哪里?长时间做任何事情?如果可以,我可以使用任何IntelliJ Idea Ultimate工具。有什么建议吗?
wanli2527 回答:初始化Spring应用程序时,如何确定哪种方法花费的时间太长
我个人使用JProfiler一段时间来测试我编写的应用程序在渲染过程中运行缓慢的位置。它使您可以查看运行方法所需的时间,调用方法的频率以及在这种情况下可能对您真正有用的其他信息!
,打开调试级别日志记录,以便您可以遵循Spring初始化过程,例如请执行以下任一操作:
-
将JVM选项添加到
java
命令中:-Dlogging.level.org.springframework.beans.factory.support.DefaultListableBeanFactory=DEBUG
-
将JVM选项添加到
mvn
命令中:-Dspring-boot.run.arguments=--logging.level.org.springframework.beans.factory.support.DefaultListableBeanFactory=DEBUG
-
向
application.properties
文件添加选项:logging.level.org.springframework.beans.factory.support.DefaultListableBeanFactory = DEBUG
-
向
application.yml
文件添加选项:logging.level.org.springframework.beans.factory.support.DefaultListableBeanFactory: DEBUG
我建议使用最后两个选项之一,只是记得在完成后删除或注释掉该选项。