示例#1
0
        /// <summary>
        ///     Enqueues the supplied <see cref="RealtimeLoggerEventArgs"/> instance to the LogHistory queue. If the queue exceeds
        ///     200 entries, the oldest log is first de-queued before the new log is enqueued.
        /// </summary>
        /// <param name="eventArgs">The event args instance to enqueue.</param>
        private static void AppendLogHistory(RealtimeLoggerEventArgs eventArgs)
        {
            LogHistory.Enqueue(eventArgs);

            if (LogHistory.Count > LogHistoryLimit)
            {
                PruneLogHistory();
            }
        }
示例#2
0
        private void Enqueue(IConsoleLogMessage message)
        {
            if (message.Type > MaxLogLevel)
            {
                return;
            }

            if (LogHistory.Count > MaxLogRegister)
            {
                LogHistory.Dequeue();
            }
            LogHistory.Enqueue(message);

            OnReceiveMessage?.Invoke(message);
        }