如何将BlockHound添加到Spring Boot应用程序以检测阻塞调用?
我没有找到任何有关春季启动应用程序的示例: https://github.com/reactor/BlockHound/blob/master/docs/quick_start.md
任何帮助将不胜感激。
答案 0 :(得分:2)
恕我直言,最明智的选择是在JUnit测试正在执行代码时启用BlockHound。
为此,您只需要导入具有测试范围的https://mvnrepository.com/artifact/io.projectreactor.tools/blockhound-junit-platform依赖项,它就会在启动JUnit测试套件时自动初始化BlockHound:
<dependency>
<groupId>io.projectreactor.tools</groupId>
<artifactId>blockhound-junit-platform</artifactId>
<version>1.0.0.RC1</version>
<scope>test</scope>
</dependency>
或者,如果您打算一直使用BlockHound,并且不仅在测试期间使用,还应该导入以下依赖项:
<dependency>
<groupId>io.projectreactor.tools</groupId>
<artifactId>blockhound</artifactId>
<version>1.0.0.RC1</version>
</dependency>
然后在引导您的Spring Boot应用程序之前,在您的主要方法中调用BlockHound.install()
:
@SpringBootApplication
public class BlockhoundDemoApplication {
public static void main(String[] args) {
BlockHound.install();
SpringApplication.run(BlockhoundDemoApplication.class, args);
}
}
有关更多参考,您可以参考: