Exemplo n.º 1
0
        //
        // GET: /Events/

		public ActionResult Index(int? page, int? pageSize, EnumServiceMessageLevel? level, bool? json)
        {
			this.ViewBag.Level = level;

			var realPageSize = pageSize.GetValueOrDefault(20);
			var query = this.Logger.GetEventList(page.GetValueOrDefault(1) - 1, realPageSize, level);
			var viewModel = new CustomPagination<ServiceMessage>
				(query, 
				page.GetValueOrDefault(1),
				realPageSize,
				this.Logger.GetEventCount(level));
			if(json.GetValueOrDefault(false))
			{
				return Json(viewModel, JsonRequestBehavior.AllowGet);
			}
			else 
			{
	            return View(viewModel);
			}
        }
Exemplo n.º 2
0
 public void PurgeData(DateTime utcNow, EnumServiceMessageLevel messageLevel, int?ageMinutes)
 {
     if (ageMinutes.HasValue)
     {
         DateTime maxDate = utcNow.AddMinutes(0 - ageMinutes.Value);
         this.EventReporter.Trace(string.Format("Deleting {0} messages older than {1}", messageLevel, maxDate));
         var query = this.DocumentSession.Advanced.LuceneQuery <ServiceMessage, ServiceMessagesByDateIndex>()
                     .WhereEquals("Level", messageLevel)
                     .AndAlso().WhereLessThan("MessageDateTimeUtc", maxDate);
         var queryString = query.ToString();
         this.DocumentSession.Advanced.DocumentStore.DatabaseCommands.DeleteByIndex
         (
             typeof(ServiceMessagesByDateIndex).Name, new IndexQuery
         {
             Query = queryString
         },
             allowStale: true
         );
         this.DocumentSession.SaveChanges();
     }
 }
Exemplo n.º 3
0
		public virtual IQueryable<ServiceMessage> GetEventList(int pageIndex, int pageSize, EnumServiceMessageLevel? level)
		{
			if(level.HasValue)
			{
				return this.DocumentSession.Query<ServiceMessage>().Where(i=>i.Level == level.Value).OrderByDescending(i => i.MessageDateTimeUtc).Skip((pageIndex) * pageSize).Take(pageSize).OrderByDescending(i=>i.MessageDateTimeUtc);
			}
			else 
			{
				return this.DocumentSession.Query<ServiceMessage>().OrderByDescending(i => i.MessageDateTimeUtc).Skip((pageIndex) * pageSize).Take(pageSize);
			}
		}
Exemplo n.º 4
0
		public virtual int GetEventCount(EnumServiceMessageLevel? level)
		{
			if (level.HasValue)
			{
				return this.DocumentSession.Query<ServiceMessage>().Where(i => i.Level == level.Value).Count();
			}
			else
			{
				return this.DocumentSession.Query<ServiceMessage>().Count();
			}
		}
		public override IQueryable<ServiceMessage> GetEventList(int pageIndex, int pageSize, EnumServiceMessageLevel? level)
		{
			throw new NotImplementedException();
		}
		public override int GetEventCount(EnumServiceMessageLevel? level)
		{
			throw new NotImplementedException();
		}