public IActionResult Counts() { Hangfire.Storage.IMonitoringApi monitor = JobStorage.Current.GetMonitoringApi(); var succeeded = monitor.SucceededListCount(); var failed = monitor.FailedCount(); var processing = monitor.ProcessingCount(); var jobs = monitor.ScheduledJobs(0, 100).Count; var queues = monitor.Queues().ToList(); var queued = new Dictionary <string, long>(); long enqueued = 0; foreach (var q in queues) { var count = monitor.EnqueuedCount(q.Name); queued.Add(q.Name, count); enqueued += count; } var list = new List <DashboardCount>(); list.Add(new DashboardCount() { Label = "Succeeded", Count = succeeded }); list.Add(new DashboardCount() { Label = "Failed", Count = failed }); list.Add(new DashboardCount() { Label = "Processing", Count = processing }); list.Add(new DashboardCount() { Label = "Jobs", Count = jobs }); list.Add(new DashboardCount() { Label = "Enqueued", Count = enqueued }); return(Json(list)); }