我設法成功地實現了什麼,我想創建一個新的類中實現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'監聽器,當應用程序啓動並準備使用時將會調用該監聽器。 –