Ali*_*ahi 8 spring triggers quartz-scheduler
在 Quartz 2.2 版中,我们如何才能找到工作是否完成以及何时完成?!我有job key。
首先,我尝试获取作业触发器并查看触发器状态。
List<? extends Trigger> triggers = sched.getTriggersOfJob(jobKey);
for (Trigger trigger : triggers) {
....
}
Run Code Online (Sandbox Code Playgroud)
但是我发现当触发器成功完成时,quartz 会从数据库中删除作业触发器。
我用谷歌搜索了一个http://forums.terracotta.org/forums/posts/list/6791.page
Quartz 会清理自己所有未使用的数据,这样管理员就不必删除填满数据库的记录(许多用户有数百万个触发器重复触发。保留所有这些数据是不切实际的,而且会影响性能)。
如果您想要触发器触发的历史记录,请实现 TriggerListener 并自己记录信息,就像 LoggingTriggerHistoryPlugin 所做的那样。
Quartz 2.2 可能会添加一个带有新 api 的历史功能来检索数据。
在另一方面,我检讨石英码(http://www.quartz-scheduler.org/api/2.2.1/org/quartz/Trigger.CompletedExecutionInstruction.html),并发现触发状态可以设置为NOOP,RE_EXECUTE_JOB,SET_TRIGGER_COMPLETE, DELETE_TRIGGER, SET_ALL_JOB_TRIGGERS_COMPLETE, SET_TRIGGER_ERROR,SET_ALL_JOB_TRIGGERS_ERROR
我认为这个枚举用于失败的触发器,但我想知道是否有办法让触发器持久化。
| 归档时间: |
|
| 查看次数: |
1253 次 |
| 最近记录: |