private FileInformation GetTodayLastFileOrCreateNew(IRollingFileProvider fileNameProvider) { var file = fileNameProvider.TryResolveLastFile(); if (file == null || !file.Exists || file.CreationTime.Date != Clock.Today) { file = fileNameProvider.ProduceNewFile(); } return(file); }
//12 public static BackgroundLogger BackgroundRollingFileLogger( this LoggingWizardCharms charms, IRollingFileProvider fileProvider, Action <StringLogSerializerBuilder> serializerApply, Encoding encoding = null, PipeCollection <RollingFileContext> pipes = null ) { return(BackgroundRollingFileLogger( charms, fileProvider, new MinimumLogLevelVerifier(LogLevel.Debug), serializerApply, encoding, pipes )); }
//9 public static RollingFileLogger RollingFileLogger( this LoggingWizardCharms charms, IRollingFileProvider fileProvider, IStringLogSerializer serializer = null, Encoding encoding = null, PipeCollection <RollingFileContext> pipes = null ) { return(RollingFileLogger( charms, fileProvider, new MinimumLogLevelVerifier(LogLevel.Debug), serializer, encoding, pipes )); }
//8 public static BackgroundLogger BackgroundRollingFileLogger( this LoggingWizardCharms charms, IRollingFileProvider fileProvider, LogLevel minLevel, IStringLogSerializer serializer = null, Encoding encoding = null, PipeCollection <RollingFileContext> pipes = null ) { return(BackgroundRollingFileLogger( charms, fileProvider, new MinimumLogLevelVerifier(minLevel), serializer, encoding, pipes )); }
//7 public static BackgroundLogger BackgroundRollingFileLogger( this LoggingWizardCharms charms, IRollingFileProvider fileProvider, ILogRecordVerifier recordVerifier, IStringLogSerializer serializer = null, Encoding encoding = null, PipeCollection <RollingFileContext> pipes = null ) { var baseLogger = new RollingFileLogger(fileProvider) { RecordVerifier = recordVerifier }; baseLogger.Serializer = serializer ?? baseLogger.Serializer; baseLogger.Encoding = encoding ?? baseLogger.Encoding; baseLogger.Pipes = pipes ?? baseLogger.Pipes; return(charms.BackgroundLogger(baseLogger)); }
//7 public static RollingFileLogger RollingFileLogger( this LoggingWizardCharms charms, IRollingFileProvider fileProvider, ILogRecordVerifier recordVerifier, IStringLogSerializer serializer = null, Encoding encoding = null, PipeCollection <RollingFileContext> pipes = null ) { var logger = new RollingFileLogger(fileProvider) { RecordVerifier = recordVerifier }; logger.Serializer = serializer ?? logger.Serializer; logger.Encoding = encoding ?? logger.Encoding; logger.Pipes = pipes ?? logger.Pipes; return(logger); }
//10 public static BackgroundLogger BackgroundRollingFileLogger( this LoggingWizardCharms charms, IRollingFileProvider fileProvider, ILogRecordVerifier recordVerifier, Action <StringLogSerializerBuilder> serializerApply, Encoding encoding = null, PipeCollection <RollingFileContext> pipes = null ) { var serializerBuilder = new StringLogSerializerBuilder(); serializerApply?.Invoke(serializerBuilder); var serializer = serializerBuilder.BuildSerializer(); return(BackgroundRollingFileLogger( charms, fileProvider, recordVerifier, serializer, encoding, pipes )); }