private static LogResponse Get(string stack, WorkerType workerType, string startTime = null, string endTime = null, string timeGrain = null) { DateTime startTimeUtc, endTimeUtc; TimeSpan timeGrainTimeSpan; string errorMessage; if (!PrepareStartEndTimeUtc(startTime, endTime, timeGrain, out startTimeUtc, out endTimeUtc, out timeGrainTimeSpan, out errorMessage)) { throw new WebException(HttpStatusCode.BadRequest.ToString() + ": " + errorMessage); } LogParserParameters p = new LogParserParameters(); p.StartTime = startTimeUtc; p.EndTime = endTimeUtc; p.TimeGrain = timeGrainTimeSpan; p.WorkerType = workerType; Parser parser = ParserFactory.GetParser(stack); if (parser == null) { throw new WebException("Stack " + stack + " has no log parser implimintation"); } return(parser.GetHistogramAsync(p).Result); }
private async Task <LogResponse> Get(string stack, WorkerType workerType, string startTime = null, string endTime = null, string timeGrain = null) { Util.WriteLog("Get(string stack, WorkerType workerType, string startTime = null, string endTime = null, string timeGrain = null)"); DateTime startTimeUtc, endTimeUtc; TimeSpan timeGrainTimeSpan; string errorMessage; if (!PrepareStartEndTimeUtc(startTime, endTime, timeGrain, out startTimeUtc, out endTimeUtc, out timeGrainTimeSpan, out errorMessage)) { if (Request == null) { throw new WebException(HttpStatusCode.BadRequest.ToString() + ": " + errorMessage); } throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.BadRequest, errorMessage)); } LogParserParameters p = new LogParserParameters(); p.StartTime = startTimeUtc; p.EndTime = endTimeUtc; p.TimeGrain = timeGrainTimeSpan; p.WorkerType = workerType; var parser = workerType == WorkerType.Windows ? ParserFactory.GetParser(stack) : ParserFactory.GetLinuxParser(stack); Util.WriteLog("Parser type: " + parser.GetType().Name); if (parser == null) { throw new WebException("Stack " + stack + " has no log parser implimintation"); } return(await parser.GetHistogramAsync(p)); }