<PackageReference Include="NLog" Version="6.2.2" />

NLog.Targets.Wrappers.AsyncRequestQueueBase

abstract class AsyncRequestQueueBase
public abstract bool IsEmpty { get; }

Gets or sets the action to be taken when there's no more room in the queue and another request is enqueued.

public int QueueLimit { get; set; }

Gets or sets the queue max-size

Occurs when LogEvent has been dropped, because internal queue is full and OnOverflow set to Discard

Occurs when internal queue size is growing, because internal queue is full and OnOverflow set to Grow

public abstract void Clear()

public abstract AsyncLogEventInfo[] DequeueBatch(int count)

public abstract void DequeueBatch(int count, IList<AsyncLogEventInfo> result)

public abstract bool Enqueue(AsyncLogEventInfo logEventInfo)

protected void OnLogEventDropped(LogEventInfo logEventInfo)

Raise event when queued element was dropped because of queue overflow

protected void OnLogEventQueueGrows(long requestsCount)

Raise event when RequestCount overflow QueueLimit