我想自定义 Hangfire 仪表板来显示作业列表以及它们曾经、现在或将要排队的队列及其状态。 我还没有在 IMonitoringApi 接口中找到任何方法来执行多个作业,我越接近:
有什么我错过的吗?你会采取什么方式来做到这一点?
IMonitoringApi
来获取预定的工作,事实证明它对我来说非常可靠。我正在查询特定职位的结果,但没有理由使用它来显示所有职位。以下是获取所有当前安排的作业的方法:
Hangfire.Storage.Monitoring.JobList<Hangfire.Storage.Monitoring.ScheduledJobDto> scheduledJobs =
_monitoringApi.ScheduledJobs(0, int.MaxValue);
然后用它做任何你想做的事。有多个列表,也许这让您烦恼,但是将它们全部调用起来很简单。以下是您可以从
IMonitoringApi
获得的工作列表以及其他属性:
JobList<EnqueuedJobDto> EnqueuedJobs(string queue, int from, int perPage);
JobList<FetchedJobDto> FetchedJobs(string queue, int from, int perPage);
JobList<ProcessingJobDto> ProcessingJobs(int from, int count);
JobList<ScheduledJobDto> ScheduledJobs(int from, int count);
JobList<SucceededJobDto> SucceededJobs(int from, int count);
JobList<FailedJobDto> FailedJobs(int from, int count);
JobList<DeletedJobDto> DeletedJobs(int from, int count);