Beispiel #1
0
        virtual protected void UpdateOptions(BatchingLoggerOptions options)
        {
            if (options.BatchSize <= 0)
            {
                if (_options == null)
                {
                    throw new ArgumentOutOfRangeException(nameof(options.BatchSize), $"{nameof(options.BatchSize)} must be a positive number.");
                }
                return;
            }
            if (options.FlushPeriod <= TimeSpan.Zero)
            {
                if (_options == null)
                {
                    throw new ArgumentOutOfRangeException(nameof(options.FlushPeriod), $"{nameof(options.FlushPeriod)} must be longer than zero.");
                }
                return;
            }
            var oldIsEnabled = IsEnabled;

            _options = options;
            if (oldIsEnabled == IsEnabled)
            {
                return;
            }
            if (IsEnabled)
            {
                Start();
            }
            else
            {
                Stop();
            }
        }
        override protected void UpdateOptions(BatchingLoggerOptions options)
        {
            base.UpdateOptions(options);
            var newOptions = options as FileLoggerOptions;

            if (newOptions != null)
            {
                _path     = newOptions.LogDirectory ?? "./Log";
                _fileName = newOptions.FileName ?? "";
            }
        }