Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
06/20/14 16:20:02 (10 years ago)
Author:
mroscoe
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/HiveStatistics/sources/HeuristicLab.Services.Hive.Statistics/3.3/Controllers/AdminDataController.cs

    r11020 r11030  
    2424    }
    2525
    26     public JsonResult UserTaskStats(string userName, DateTime start, DateTime end)
     26    public JsonResult TaskStats(DateTime start, DateTime end, string userName=null)
    2727    {
    2828      using (var db = new HiveDataContext(Settings.Default.HeuristicLab_Hive_LinqConnectionString))
     
    3131                        join jobs in db.DimJobs
    3232                          on tasks.JobId equals jobs.JobId
    33                         where jobs.UserName == userName &&
    34                         tasks.StartTime >= start &&
    35                         tasks.EndTime < end
     33                        where tasks.StartTime >= start &&
     34                        tasks.EndTime < end &&
     35                        (string.IsNullOrEmpty(userName) || jobs.UserName == userName)
    3636                        select new { tasks.TotalWaitingTime, tasks.TotalTransferTime, tasks.TotalRuntime, tasks.NumCalculationRuns,
    3737                          tasks.CoresRequired, tasks.MemoryRequired, tasks.TaskSize, tasks.ResultSize})
     
    5151      }
    5252    }
    53 
    54     public JsonResult AllTaskStats(DateTime start, DateTime end)
    55     {
    56       using (var db = new HiveDataContext(Settings.Default.HeuristicLab_Hive_LinqConnectionString))
    57       {
    58         var taskStats = (from tasks in db.FactTasks
    59                          where tasks.StartTime >= start &&
    60                          tasks.EndTime < end
    61                          select new
    62                          {
    63                            tasks.TotalWaitingTime,
    64                            tasks.TotalTransferTime,
    65                            tasks.TotalRuntime,
    66                            tasks.NumCalculationRuns,
    67                            tasks.CoresRequired,
    68                            tasks.MemoryRequired,
    69                            tasks.TaskSize,
    70                            tasks.ResultSize
    71                          })
    72                           .ToList();
    73 
    74         List<double> FullStats = new List<double>();
    75         FullStats.Add(taskStats.Sum(w => w.TotalWaitingTime));
    76         FullStats.Add(taskStats.Sum(t => t.TotalTransferTime));
    77         FullStats.Add(taskStats.Sum(r => r.TotalRuntime));
    78         FullStats.Add(taskStats.Sum(n => n.NumCalculationRuns));
    79         FullStats.Add(taskStats.Sum(c => c.CoresRequired));
    80         FullStats.Add(taskStats.Sum(m => m.MemoryRequired));
    81         FullStats.Add(taskStats.Sum(ts => ts.TaskSize));
    82         FullStats.Add(taskStats.Sum(rs => Convert.ToDouble(rs.ResultSize)));
    83 
    84         return Json(FullStats, JsonRequestBehavior.AllowGet);
    85       }
    86     }
    8753  }
    8854}
Note: See TracChangeset for help on using the changeset viewer.