示例#1
0
        private static IAppender GetFileAppender(string logFile)
        {
            var layout = new PatternLayout("[%thread] [%date] [%level] [%message] %newline %exception %newline");

            layout.ActivateOptions();

            var appender = new RollingFileAppender();

            appender.AppendToFile = true;
            appender.File         = logFile;
            appender.Layout       = layout;
            /// ek dosya en fazla kaç tane olacak örn : 11-53-18.log.1, 11-53-18.log.2 , ....
            /// şu durumda 100 * 5 MB = 500 MB her bir log için üst limit.
            appender.MaxSizeRollBackups = 100;
            appender.MaximumFileSize    = "5MB";
            appender.RollingStyle       = RollingFileAppender.RollingMode.Size;

            ///https://stackoverflow.com/a/12175475/7224210
            appender.LockingModel = new LogLockMechanism();

            appender.ActivateOptions();

            return(appender);
        }