public async Task MaintainPartitionsTest()
        {
            var          utcnow      = DateTime.UtcNow.Date;
            var          sqlLogStore = new SqlServerLogStore(() => utcnow);
            const string appPath     = "###rather_not_existing_application_path3###";
            var          hash        = BitConverter.ToString(MD5.Create().ComputeHash(Encoding.UTF8.GetBytes(appPath))).Replace("-", String.Empty);


            using (var conn = new SqlConnection(ConfigurationManager.ConnectionStrings["sqlserverconn"].ConnectionString)) {
                conn.Open();

                var logrecs = new[] {
                    new LogRecord {
                        LoggerName      = "TestLogger",
                        ApplicationPath = appPath,
                        LogLevel        = LogRecord.ELogLevel.Error,
                        TimeUtc         = utcnow.AddDays(-2),
                        ProcessId       = 123,
                        ThreadId        = 456,
                        Server          = "TestServer",
                        Identity        = "TestIdentity",
                        Message         = "Test log message to store in the log",
                    },
                    new LogRecord {
                        LoggerName      = "TestLogger",
                        ApplicationPath = appPath,
                        LogLevel        = LogRecord.ELogLevel.Error,
                        TimeUtc         = utcnow,
                        ProcessId       = 123,
                        ThreadId        = 456,
                        Server          = "TestServer",
                        Identity        = "TestIdentity",
                        CorrelationId   = Guid.NewGuid().ToString(),
                        Message         = "Test log message to store in the log",
                    }
                };
                await sqlLogStore.AddLogRecordsAsync(logrecs);

                await sqlLogStore.MaintainAsync(TimeSpan.FromDays(1));

                Assert.Equal(1, conn.Query <int>("select count(1) from " + DefaultLogStore.AppLogTablePrefix + hash).Single());

                // check if configuration per table is working
                await sqlLogStore.MaintainAsync(TimeSpan.FromDays(3), new Dictionary <String, TimeSpan> {
                    { appPath, TimeSpan.FromDays(0) }
                });

                Assert.Equal(conn.Query <int>("select count(1) from " + DefaultLogStore.AppLogTablePrefix + hash).Single(), 1);
            }
        }