繁体   English   中英

Unitils @SpringApplicationContext-如何找到初始化Spring上下文所花费的时间?

[英]Unitils @SpringApplicationContext - how to find time taken to initialize spring context?

我正在使用unitils进行测试。 我在故障安全测试报告中看到了90多个spring上下文刷新消息。 我需要知道花了多少时间来初始化这些spring上下文。 Unitils没有正确的日志记录,因此无法使用框架日志进行跟踪。

@SpringApplicationContext在测试类的顶部,因此无法在我自己的测试类中使用logger

编写建议或感知类或拦截器将无济于事,因为所有这些类都必须在spring xml中注册,而那些在spring xml中注册的bean仅在上下文初始化后才加载

编写应用程序侦听器类时,我们只能捕获ContextRefreshedEvent ,即加载的上下文未初始化时。

无法捕获ContextStartedEvent因为它是在ConfigurableApplicationContext interface上使用start()方法start() ApplicationContext时发布的。 unitils动态创建新的ClassPathXmlApplicationContext(..,..); 创建spring上下文(class:org.unitils.spring.util.ClassPathXmlApplicationContextFactory)

如何计算Spring上下文初始化时间?

那么简单的log4j记录器呢? 在记录Spring信息日志时,您可以看到ContexLoader初始化时间。

17:25:48信息-ContextLoader-根WebApplicationContext:开始初始化

17:25:53信息-ContextLoader-根WebApplicationContext:初始化在5325毫秒内完成

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM