Пример #1
0
        private static IRollingStrategy CreateHybridStrategy(Func <FileLogSettings> settingsProvider, IFileSystem fileSystem)
        {
            var sizeSuffixFormatter   = new SizeBasedSuffixFormatter();
            var timeSuffixFormatter   = new TimeBasedSuffixFormatter(() => settingsProvider().RollingStrategy.Period);
            var hybridSuffixFormatter = new HybridSuffixFormatter(timeSuffixFormatter, sizeSuffixFormatter, () => settingsProvider().RollingStrategy.SuffixSeparator);
            var sizeStrategy          = CreateSizeBasedStrategy(settingsProvider, fileSystem, sizeSuffixFormatter);

            return(new HybridRollingStrategy(fileSystem, sizeStrategy, () => DateTime.Now, timeSuffixFormatter, hybridSuffixFormatter, () => settingsProvider().RollingStrategy.SuffixSeparator));
        }
Пример #2
0
        private static IRollingStrategy CreateSizeBasedStrategy(Func <FileLogSettings> settingsProvider, IFileSystem fileSystem, SizeBasedSuffixFormatter suffixFormatter = null)
        {
            suffixFormatter = suffixFormatter ?? new SizeBasedSuffixFormatter();

            return(new SizeBasedRollingStrategy(fileSystem, suffixFormatter, new SizeBasedRoller(fileSystem, () => settingsProvider().RollingStrategy.MaxSize), () => settingsProvider().RollingStrategy.SuffixSeparator));
        }
 public void TestSetup()
 {
     suffixFormatter = new SizeBasedSuffixFormatter();
 }