コード例 #1
0
 public RollingFileAlternativeSink(ITextFormatter formatter, TemplatedPathRoller roller, long fileSizeLimitBytes,
                                   Encoding encoding = null) : this(formatter, roller, fileSizeLimitBytes, roller.GetLatestOrNew(), encoding)
 {
     _formatter          = formatter;
     _roller             = roller;
     _fileSizeLimitBytes = fileSizeLimitBytes;
     EnableLevelLogging  = roller.PathIncludesLevel;
     _output             = OpenFileForWriting(roller.LogFileDirectory, roller.GetLatestOrNew(), encoding ?? Encoding.UTF8);
 }
        private RollingFileAlternativeSink GetLatestSink()
        {
            EnsureDirectoryCreated(_roller.LogFileDirectory);

            var logFile = _roller.GetLatestOrNew();

            return(new RollingFileAlternativeSink(
                       _formatter,
                       _roller,
                       _fileSizeLimitBytes,
                       logFile,
                       _encoding));
        }