Ejemplo n.º 1
0
        internal ReliableWrapper(ReliableWrapperConfiguration config, ILoggingEventWriter logger)
        {
            Contract.Requires(config != null);
            Contract.Requires(logger != null);

            _logger = logger;

            string newFolderForTemporaryStore = TemporaryStoreLockFile.FindNotLockedDirectory(config.FolderForTemporaryStore, out _tempStoreLock);

            _reader      = new TemporaryStoreReader(newFolderForTemporaryStore);
            _writer      = new TemporaryStoreWriter(newFolderForTemporaryStore, config.MaxFileSize);
            _tokenSource = new CancellationTokenSource();

            _readerThread = new Thread(new ParameterizedThreadStart(TemporaryReaderLoop));
            _readerThread.IsBackground = true;
            _readerThread.Name         = "AsyncQueueWithReliableSending (reader loop) for logger";

            _readerThread.Start(_tokenSource.Token);
        }
Ejemplo n.º 2
0
 public ReliableWrapper(ReliableWrapperConfiguration config)
     : this(config, LoggerFactory.CreateWriter(config.InnerWriter))
 {
 }