public QueueLogger(Log4ALAAppender appender) { this.tokenSource = new CancellationTokenSource(); this.cToken = tokenSource.Token; this.manualResetEvent = new ManualResetEvent(false); this.appender = appender; Queue = new BlockingCollection <string>(appender.LoggingQueueSize != null && appender.LoggingQueueSize > 0 ? (int)appender.LoggingQueueSize : ConfigSettings.DEFAULT_LOGGER_QUEUE_SIZE); SharedKeyBytes = Convert.FromBase64String(appender.SharedKey); WorkerThread = new Thread(new ThreadStart(Run)); WorkerThread.Name = $"Azure Log Analytics Log4net Appender ({appender.Name})"; WorkerThread.IsBackground = true; WorkerThread.Priority = (ThreadPriority)Enum.Parse(typeof(ThreadPriority), appender.ThreadPriority); if (ConfigSettings.IsLogQueueSizeInterval) { CreateLogQueueSizeTimer(); } }
public LoggingEventSerializer(Log4ALAAppender appender) { this.appender = appender; }