// GET: ResponseTimesBuckets/Create public ActionResult ShowPageTimes() { var listPageResponseModel = new List<PageResponseModel>(); using (var pageStatusRepository = new PageStatusRepository()) { var pageStatuses = pageStatusRepository.GetPageStatuses(); var timeZoneId = "Eastern Standard Time"; var easternZone = TimeZoneInfo.FindSystemTimeZoneById(timeZoneId); foreach (var pageStatus in pageStatuses) { var utcTime = new DateTime( pageStatus.Created.Year, pageStatus.Created.Month, pageStatus.Created.Day, pageStatus.Created.Hour, pageStatus.Created.Minute, pageStatus.Created.Second); var easternTime = TimeZoneInfo.ConvertTimeFromUtc(utcTime, easternZone); listPageResponseModel.Add( new PageResponseModel { Url = pageStatus.Url, ResponseTime = pageStatus.ResponseTime, Created = easternTime }); } } return View(listPageResponseModel); }
private static async Task <IEnumerable <PageStatus> > HitPages() { var listPageStatus = new List <PageStatus>(); try { using (var repoPages = new PagesRepository()) { using (var repoPageStatus = new PageStatusRepository()) { //Get page with Monitor bit on. var pages = repoPages.GetAllMonitor(); //var pages = repoPages.GetAllProdMonitor(); //var pages = repoPages.GetAllStgMonitor(); var pageGetter = new PageGetter(); foreach (var page in pages) { var pageStats = new PageStats { Url = page.Url }; var stats = await pageGetter.HTTP_GET(pageStats); var pageStatus = new PageStatus { Url = stats.Url, ResponseTime = stats.ResponseTime, ContentLength = stats.ContentLength, ExceptionMessage = stats.ExceptionMessage, Status = stats.Status.ToString(), Created = DateTime.Now }; repoPageStatus.Add(pageStatus); repoPageStatus.SaveChanges(); listPageStatus.Add(pageStatus); } } } } catch (Exception ex) { // ReSharper disable once UnusedVariable var msg = ex.Message; } return(listPageStatus); }
// GET: Grid public ActionResult Index(ChartViewModel model) { var listPageResponseModel = new List <PageResponseModel>(); using (var pageStatusRepository = new PageStatusRepository()) { //Default to set date for debugging var startDate = DateTime.Now.Date.AddDays(-5).ToString(CultureInfo.InvariantCulture); var endDate = DateTime.Now.Date.ToString(CultureInfo.InvariantCulture); if (model != null) { startDate = model.StartDate.ToString(CultureInfo.InvariantCulture); endDate = model.EndDate.ToString(CultureInfo.InvariantCulture); } var pageStatuses = pageStatusRepository.GetPageStatusesByDate(startDate, endDate); var timeZoneId = "Eastern Standard Time"; var easternZone = TimeZoneInfo.FindSystemTimeZoneById(timeZoneId); foreach (var pageStatus in pageStatuses) { var utcTime = new DateTime( pageStatus.Created.Year, pageStatus.Created.Month, pageStatus.Created.Day, pageStatus.Created.Hour, pageStatus.Created.Minute, pageStatus.Created.Second); var easternTime = TimeZoneInfo.ConvertTimeFromUtc(utcTime, easternZone); listPageResponseModel.Add( new PageResponseModel { Url = pageStatus.Url, ResponseTime = pageStatus.ResponseTime, Created = easternTime }); } } ViewBag.datasource = listPageResponseModel; return(View()); }
// GET: Grid public ActionResult Index(ChartViewModel model) { var listPageResponseModel = new List<PageResponseModel>(); using (var pageStatusRepository = new PageStatusRepository()) { //Default to set date for debugging var startDate = DateTime.Now.Date.AddDays(-5).ToString(CultureInfo.InvariantCulture); var endDate = DateTime.Now.Date.ToString(CultureInfo.InvariantCulture); if (model != null) { startDate = model.StartDate.ToString(CultureInfo.InvariantCulture); endDate = model.EndDate.ToString(CultureInfo.InvariantCulture); } var pageStatuses = pageStatusRepository.GetPageStatusesByDate(startDate, endDate); var timeZoneId = "Eastern Standard Time"; var easternZone = TimeZoneInfo.FindSystemTimeZoneById(timeZoneId); foreach (var pageStatus in pageStatuses) { var utcTime = new DateTime( pageStatus.Created.Year, pageStatus.Created.Month, pageStatus.Created.Day, pageStatus.Created.Hour, pageStatus.Created.Minute, pageStatus.Created.Second); var easternTime = TimeZoneInfo.ConvertTimeFromUtc(utcTime, easternZone); listPageResponseModel.Add( new PageResponseModel { Url = pageStatus.Url, ResponseTime = pageStatus.ResponseTime, Created = easternTime }); } } ViewBag.datasource = listPageResponseModel; return View(); }
private static void DirectAccess() { var repoPages = new PagesRepository(); //var pages = repoPages.GetAllProdMonitor(); var pages = repoPages.GetAllStgMonitor(); var repoPageStatus = new PageStatusRepository(); var pageGetter = new PageGetter(); var counter = 1000; while (counter > 0) { foreach (var page in pages) { Console.WriteLine($"Page: {page.Url}"); var pageStats = new PageStats { Url = page.Url }; var result = pageGetter.HTTP_GET(pageStats); var stats = result.Result; var pageStatus = new PageStatus { Url = stats.Url, ResponseTime = stats.ResponseTime, ContentLength = stats.ContentLength, ExceptionMessage = stats.ExceptionMessage, Status = stats.Status.ToString(), Created = DateTime.Now }; repoPageStatus.Add(pageStatus); repoPageStatus.SaveChanges(); Console.WriteLine($"seconds: {stats.ResponseTime} length: {stats.ContentLength} time: {DateTime.Now}"); Console.WriteLine(); } Thread.Sleep(10000); counter--; } }
public ActionResult DrawChart(string startDate, string endDate, string url) { try { //var totalPages = 0; ResponseTimes responseTimes; using (var context = new PageStatusRepository()) { var responseTimesList = context.GetPageStatusByDate(startDate, endDate, url); responseTimes = GetTimeBuckets(responseTimesList); } var urlAndPages = url + $" Total Pages: {responseTimes.TotalCount}"; var xValue = new string[responseTimes.ResponseTimeBuckets.Count]; var yValue = new string[responseTimes.ResponseTimeBuckets.Count]; for (var idx = 0; idx < responseTimes.ResponseTimeBuckets.Count; idx++) { xValue[idx] = responseTimes.ResponseTimeBuckets[idx].BucketLabel; yValue[idx] = responseTimes.ResponseTimeBuckets[idx].Count.ToString(); } var chart = GetChart2(xValue, yValue, urlAndPages); var memStream = new MemoryStream(); chart.SaveImage(memStream); return(File(memStream.GetBuffer(), "image/bytes")); //return File(chart.GetBytes(), "image/bytes"); } catch (Exception ex) { // ReSharper disable once UnusedVariable var msg = ex.Message; return(RedirectToAction("Index", "Home")); } }
public ActionResult DrawChart(string startDate, string endDate, string url) { try { //var totalPages = 0; ResponseTimes responseTimes; using (var context = new PageStatusRepository()) { var responseTimesList = context.GetPageStatusByDate(startDate, endDate, url); responseTimes = GetTimeBuckets(responseTimesList); } var urlAndPages = url + $" Total Pages: {responseTimes.TotalCount}"; var xValue = new string[responseTimes.ResponseTimeBuckets.Count]; var yValue = new string[responseTimes.ResponseTimeBuckets.Count]; for (var idx = 0; idx < responseTimes.ResponseTimeBuckets.Count; idx++) { xValue[idx] = responseTimes.ResponseTimeBuckets[idx].BucketLabel; yValue[idx] = responseTimes.ResponseTimeBuckets[idx].Count.ToString(); } var chart = GetChart2(xValue, yValue, urlAndPages); var memStream = new MemoryStream(); chart.SaveImage(memStream); return File(memStream.GetBuffer(), "image/bytes"); //return File(chart.GetBytes(), "image/bytes"); } catch (Exception ex) { // ReSharper disable once UnusedVariable var msg = ex.Message; return RedirectToAction("Index", "Home"); } }
// GET: ResponseTimesBuckets/Create public ActionResult ShowPageTimes() { var listPageResponseModel = new List <PageResponseModel>(); using (var pageStatusRepository = new PageStatusRepository()) { var pageStatuses = pageStatusRepository.GetPageStatuses(); var timeZoneId = "Eastern Standard Time"; var easternZone = TimeZoneInfo.FindSystemTimeZoneById(timeZoneId); foreach (var pageStatus in pageStatuses) { var utcTime = new DateTime( pageStatus.Created.Year, pageStatus.Created.Month, pageStatus.Created.Day, pageStatus.Created.Hour, pageStatus.Created.Minute, pageStatus.Created.Second); var easternTime = TimeZoneInfo.ConvertTimeFromUtc(utcTime, easternZone); listPageResponseModel.Add( new PageResponseModel { Url = pageStatus.Url, ResponseTime = pageStatus.ResponseTime, Created = easternTime }); } } return(View(listPageResponseModel)); }
private static async Task<IEnumerable<PageStatus>> HitPages() { var listPageStatus = new List<PageStatus>(); try { using (var repoPages = new PagesRepository()) { using (var repoPageStatus = new PageStatusRepository()) { //Get page with Monitor bit on. var pages = repoPages.GetAllMonitor(); //var pages = repoPages.GetAllProdMonitor(); //var pages = repoPages.GetAllStgMonitor(); var pageGetter = new PageGetter(); foreach (var page in pages) { var pageStats = new PageStats { Url = page.Url }; var stats = await pageGetter.HTTP_GET(pageStats); var pageStatus = new PageStatus { Url = stats.Url, ResponseTime = stats.ResponseTime, ContentLength = stats.ContentLength, ExceptionMessage = stats.ExceptionMessage, Status = stats.Status.ToString(), Created = DateTime.Now }; repoPageStatus.Add(pageStatus); repoPageStatus.SaveChanges(); listPageStatus.Add(pageStatus); } } } } catch (Exception ex) { // ReSharper disable once UnusedVariable var msg = ex.Message; } return listPageStatus; }