public SystemLog LogMessage(EnumSystemLogType logType, string userName, DateTime messageDateTime, string message, string loggerName)
		{
			var systemLog = new SystemLog
			{
				Id = Guid.NewGuid().ToString(),
				EnumSystemLogTypeID = logType,
				UserName = userName,
				MessageDateTimeUtc = messageDateTime,
				MessageText = message,
				LoggerName = loggerName
			};
			this._documentSession.StoreSaveEvict(systemLog);
			return systemLog;
		}
 public void PurgeLogMessages(DateTime utcNow, EnumSystemLogType systemLogType, int? ageMinutes)
 {
     if (ageMinutes.HasValue)
     {
         DateTime maxDate = utcNow.AddMinutes(0 - ageMinutes.Value);
         var sql = PetaPoco.Sql.Builder
                     .Append("DELETE FROM SystemLog")
                     .Append("WHERE EnumSystemLogTypeID=@0", systemLogType)
                     .Append("AND MessageDateTimeUtc < @0", maxDate);
         using(var db = _sqlConnectionInfo.GetDB())
         {
             db.Execute(sql);
         }
     }
 }
        public SystemLog LogMessage(EnumSystemLogType logType, string userName, DateTime messageDateTime, string message, string loggerName)
        {
            var item = new SystemLog
            {
                Id = Guid.NewGuid().ToString(),
                EnumSystemLogTypeID = logType,
                UserName = userName,
                MessageDateTimeUtc = messageDateTime,
                MessageText = message,
                LoggerName = loggerName 
            };

            using(var db = _sqlConnectionInfo.GetDB())
            {
                db.Insert("SystemLog", "ID", false, item);
            }
            return this.GetMessage(item.Id);
        }
        public void PurgeLogMessages(DateTime utcNow, EnumSystemLogType systemLogType, int? ageMinutes)
		{
            //if (ageMinutes.HasValue)
            //{
            //    DateTime maxDate = utcNow.AddMinutes(0 - ageMinutes.Value);
            //    this._logger.Trace(string.Format("Deleting {0} messages older than {1}", systemLogType, maxDate));
            //    var query = this._documentSession.Advanced.LuceneQuery<SystemLog, SystemLogByDateIndex>()
            //                                    .WhereEquals("EnumSystemLogTypeID", systemLogType)
            //                                    .AndAlso().WhereLessThan("MessageDateTimeUtc", maxDate);
            //    var queryString = query.ToString();
            //    this._documentSession.Advanced.DocumentStore.DatabaseCommands.DeleteByIndex
            //    (
            //        typeof(SystemLogByDateIndex).Name, new IndexQuery
            //        {
            //            Query = queryString
            //        },
            //        allowStale: true
            //    );
            //    this._documentSession.SaveChanges();
            //}

		}
 public void PurgeLogMessages(DateTime utcNow, EnumSystemLogType systemLogType, int? ageMinutes)
 {
     throw new NotSupportedException();
 }
 public SystemLog LogMessage(EnumSystemLogType logType, string userName, DateTime messageDateTime, string message, string loggerName)
 {
     string formattedMessage = String.Format("{0} {1} {2}: {3}", logType, messageDateTime, userName, message);
     _offlineDataProvider.WriteLog(formattedMessage);
     return null;
 }