我想自定义Hangfire Dashboard以显示作业列表以及它们曾经,将要或将要排队的队列及其状态。
我没有在IMonitoringApi界面中找到任何方法为多个作业执行此操作,我就越接近:
- 使用IMonitoringApi的 JobDetails 方法:它获得了一个作业以及它的队列,但它只为一个作业做到了,我不想循环它,因为它会生成请求太多了。
- 使用 SucceededJobs,FailedJobs等,IMonitoringApi的方法。它们都返回包含一个方法及其详细信息的工作对象,其中包括它将被排队的队列。但是代码不是非常强大,而且它是一种扭曲的方式来获取某些东西,当它应该非常简单。
- 使用 EnqueuedJobs 方法:它返回指定队列中的所有作业,但据我了解,如果作业不再“排队”,则会被忽略。
醇>
所以,现在,我的猜测是我创建自己的IMonitoringApi实现并添加一个派生JobDetails方法的方法,或者我尝试以更健壮的方式获取Job的方法信息。
有什么我错过的吗?你的做法是什么?