Quartz Scheduler Administration Page:有关失火触发器的信息
Quartz Scheduler Administration Page: Information about misfired triggers
我们有一个使用 quartz 2.2.1 的 Java 应用程序 (ESB),我们用它来安排数百个用户作业。
我想在我的应用程序中为我们的用户构建监控页面(或调度程序管理页面),以便他们可以查看 quartz 调度程序是否 运行 正常或此组件是否存在任何问题。
quartz 是否为此目的提供任何监控 API?任何人都可以根据您的经验告诉我们应该在此监控(或管理)页面中显示哪些所有数据点?我能想到的几点:
- 调度器状态(运行 | 暂停 | 关闭)。
- 职位数 运行 "Previous Fire Time" 和 "Next FireTime" 信息。
- 线程池实现及其大小。
- JDBCJobStore 配置详细信息。
有没有办法显示有关未触发的触发器的信息?我没有看到任何 API 向我提供有关未触发触发器的信息。谁能告诉我如何从调度程序获取此信息?
在这方面的任何帮助都将不胜感激。
你在这里命名了许多不同的问题
调度程序状态(1) :
Scheduler sched =...
sched.isInStandbyMode();
sched.isStarted();
sched.isShutdown();
职位数量 运行...(2) 请参阅 here
Scheduler scheduler = new StdSchedulerFactory().getScheduler();
for (String groupName : scheduler.getJobGroupNames()) {
for (JobKey jobKey : scheduler.getJobKeys(GroupMatcher.jobGroupEquals(groupName))) {
String jobName = jobKey.getName();
String jobGroup = jobKey.getGroup();
//get job's trigger
List<Trigger> triggers = (List<Trigger>) scheduler.getTriggersOfJob(jobKey);
Date nextFireTime = triggers.get(0).getNextFireTime();
System.out.println("[jobName] : " + jobName + " [groupName] : "
+ jobGroup + " - " + nextFireTime);
}
}
线程池实现及其大小。(3)
Scheduler sched =...
sched.getMetaData().getThreadPoolClass()
sched.getMetaData().getThreadPoolSize()
关于"triggers that were misfired",你可以使用listeners, specifically TriggerListener.html#triggerMisfired可能对你有帮助。
我们有一个使用 quartz 2.2.1 的 Java 应用程序 (ESB),我们用它来安排数百个用户作业。
我想在我的应用程序中为我们的用户构建监控页面(或调度程序管理页面),以便他们可以查看 quartz 调度程序是否 运行 正常或此组件是否存在任何问题。
quartz 是否为此目的提供任何监控 API?任何人都可以根据您的经验告诉我们应该在此监控(或管理)页面中显示哪些所有数据点?我能想到的几点:
- 调度器状态(运行 | 暂停 | 关闭)。
- 职位数 运行 "Previous Fire Time" 和 "Next FireTime" 信息。
- 线程池实现及其大小。
- JDBCJobStore 配置详细信息。
有没有办法显示有关未触发的触发器的信息?我没有看到任何 API 向我提供有关未触发触发器的信息。谁能告诉我如何从调度程序获取此信息?
在这方面的任何帮助都将不胜感激。
你在这里命名了许多不同的问题
调度程序状态(1) :
Scheduler sched =...
sched.isInStandbyMode();
sched.isStarted();
sched.isShutdown();
职位数量 运行...(2) 请参阅 here
Scheduler scheduler = new StdSchedulerFactory().getScheduler();
for (String groupName : scheduler.getJobGroupNames()) {
for (JobKey jobKey : scheduler.getJobKeys(GroupMatcher.jobGroupEquals(groupName))) {
String jobName = jobKey.getName();
String jobGroup = jobKey.getGroup();
//get job's trigger
List<Trigger> triggers = (List<Trigger>) scheduler.getTriggersOfJob(jobKey);
Date nextFireTime = triggers.get(0).getNextFireTime();
System.out.println("[jobName] : " + jobName + " [groupName] : "
+ jobGroup + " - " + nextFireTime);
}
}
线程池实现及其大小。(3)
Scheduler sched =...
sched.getMetaData().getThreadPoolClass()
sched.getMetaData().getThreadPoolSize()
关于"triggers that were misfired",你可以使用listeners, specifically TriggerListener.html#triggerMisfired可能对你有帮助。