我设法成功地实现了什么,我想创建一个新的类中实现ApplicationListener<ContextRefreshedEvent>
public class StartEventListener implements
ApplicationListener<ContextRefreshedEvent> {
Logger logger = Logger.getLogger(StartEventListener.class);
// Module launched by the applications using this Listener
final Module module;
public StartEventListener(Module module) {
super();
this.module = module;
}
@Override
public void onApplicationEvent(ContextRefreshedEvent applicationEvent) {
logger.warn("Module " + module.getName() + " started");
}
}
我增加了模块的信息,但我们可以添加我们想要的任何信息。
2015-07-13 10:41:19,564 GMT [main] (StartEventListener.java:31) WARN spring.StartEventListener: Module parsing started
2015-07-13 10:41:19,567 GMT [main] (StartupInfoLogger.java:56) INFO parsing.Parsing: Started Parsing in 2.154 seconds (JVM running for 2.476)
和做的时候,你想要什么:
我在
@Configuration
类获得正确的日志在启动时间结束之前具有此日志行的结果注册的
StartEventListener
登录? –关于我启动的应用程序的一些信息可以通过日志分析工具来触发,以提高自动化程度。当我想要记录可能在应用程序启动后,创建所有的bean。 –
扩展'StartupInfoLogger'不会做任何事情。您可以创建一个'ApplicationListener'监听器,当应用程序启动并准备使用时将会调用该监听器。 –