2017-08-03 6 views
0

私はバネ積分を使用して、異なる仕事をスケジュールします。私は異なるトリガを持っており、トリガが実行されていないのを見ていますが、ログファイルにエントリが見つかりませんでした。失火の詳細をログファイルに記録する必要があります。どうやったらそれを教えてください。また、春の統合に関する失火指導を提供する方法もあります。スレッドサイズが10に設定されているため、スレッドが使用できないため実行が行えない可能性がありますが、ログファイルにエントリがないためトレースできません。バネ積分の失火指示を検出

答えて

0

ザ・春の統合は、デフォルトでは、このオプションを使用してThreadPoolTaskSchedulerを使用しています:

BeanDefinition scheduler = BeanDefinitionBuilder.genericBeanDefinition(ThreadPoolTaskScheduler.class) 
       .addPropertyValue("poolSize", IntegrationProperties.getExpressionFor(IntegrationProperties.TASK_SCHEDULER_POOL_SIZE)) 
       .addPropertyValue("threadNamePrefix", "task-scheduler-") 
       .addPropertyValue("rejectedExecutionHandler", new CallerRunsPolicy()) 
       .addPropertyValue("errorHandler", new RootBeanDefinition(MessagePublishingErrorHandler.class)) 
       .getBeanDefinition(); 

     registry.registerBeanDefinition(IntegrationContextUtils.TASK_SCHEDULER_BEAN_NAME, scheduler); 

MessagePublishingErrorHandlerは、デフォルトでグローバルerrorChannelに問題を送信します。

このグローバルの動作を変更したい場合は、適切なオプションを使用して自分自身のtaskSchedulerを宣言する必要があります。

それ以外の場合、私はあなたの質問を理解していないので、あなたは問題に関するいくつかの情報を提供する必要があります。

+0

スケジューラに複数のジョブcronトリガーがありますが、一部のジョブがトリガーされません。リソースの可用性またはその他の理由が原因である可能性があります。私は仕事がトリガーを逃している理由を知る必要があります。失火が発生した場合、失火の詳細を記録する方法があるかどうか疑問に思っていましたか?また、プールサイズについて何も言及していない場合は、デフォルトのプールサイズは何になりますか? – Hari

+0

まだ分かりません。たぶん、いくつかのコードは役に立ちますか? –

+0

あなたは本当にSpring Integration Frameworkについて話していますか?http://projects.spring.io/spring-integration/? –

関連する問題