【发布时间】:2018-01-08 15:42:50
【问题描述】:
我有一些 Spring 批处理作业,其中的步骤数需要不同的时间来运行。我现在需要为每个步骤定义阈值,以检查其运行是否超过阈值时间。
我正在考虑以某种方式将此值传递给 StepExecution 类的 ExecutionContext。
我浏览了https://docs.spring.io/spring-batch/trunk/reference/html/configureJob.html 和其他文档以了解值是如何传递 ExecutionContext 的,但找不到任何东西。
谁能帮我理解 StepExecution 的 ExecutionContext 是如何初始化的,我可以在每个步骤定义中传递一些自定义参数吗?
【问题讨论】:
-
您的意思是要为流程中的每个步骤设置阈值吗?那么如果时间超过阈值,你希望框架做什么?
-
查找超时终止策略;它适用于块
-
@pvpkiran 是的,没错。我想将此数据视为步骤的 META 数据,并且我们有 UI 控制台使用 spring-batch-admin REST API 来监视步骤是否超过阈值,以便我们可以针对阈值生成步骤级别执行时间的报告。
-
为什么不直接配置为 Spring 属性?
-
@MichaelMinella:你能举例说明如何在每个步骤中做到这一点。
标签: java spring spring-batch spring-batch-admin spring-framework-beans