C# Class NContext.Extensions.Logging.Targets.BatchLogTargetBase

Defines a log target abstraction which supports batching.
Inheritance: ILogTarget
Exibir arquivo Open project: PowerDMS/NContext

Public Methods

Method Description
Complete ( ) : void

Signals to the T:System.Threading.Tasks.Dataflow.IDataflowBlock that it should not accept nor produce any more messages nor consume any more postponed messages.

Fault ( Exception exception ) : void

Causes the T:System.Threading.Tasks.Dataflow.IDataflowBlock to complete in a F:System.Threading.Tasks.TaskStatus.Faulted state.

OfferMessage ( DataflowMessageHeader messageHeader, LogEntry messageValue, ISourceBlock source, System.Boolean consumeToAccept ) : DataflowMessageStatus

Offers the message.

ShouldLog ( LogEntry logEntry ) : System.Boolean

Predicate which determines whether or not the target instance should log this entry.

Protected Methods

Method Description
BatchLogTargetBase ( Int32 batchSize, System.TimeSpan flushInterval ) : System

Initializes a new instance of the BatchLogTargetBase class.

BatchLogTargetBase ( Int32 batchSize, System.TimeSpan flushInterval, Int32 maxDegreeOfParallelism ) : System

Initializes a new instance of the BatchLogTargetBase class.

Log ( IEnumerable logEntries ) : void

Logs the specified log entries.

Private Methods

Method Description
FlushTimerCallback ( Object state ) : void

Method Details

BatchLogTargetBase() protected method

Initializes a new instance of the BatchLogTargetBase class.
protected BatchLogTargetBase ( Int32 batchSize, System.TimeSpan flushInterval ) : System
batchSize System.Int32 Size of the log batch.
flushInterval System.TimeSpan /// The interval with which to initiate a batching operation even if the /// number of currently queued logs is less than the . ///
return System

BatchLogTargetBase() protected method

Initializes a new instance of the BatchLogTargetBase class.
protected BatchLogTargetBase ( Int32 batchSize, System.TimeSpan flushInterval, Int32 maxDegreeOfParallelism ) : System
batchSize System.Int32 Size of the log batch.
flushInterval System.TimeSpan The flush interval. /// The interval with which to initiate a batching operation even if the /// number of currently queued logs is less than the . ///
maxDegreeOfParallelism System.Int32 The max degree of parallelism the target instance will log batch entries (ie. method).
return System

Complete() public method

Signals to the T:System.Threading.Tasks.Dataflow.IDataflowBlock that it should not accept nor produce any more messages nor consume any more postponed messages.
public Complete ( ) : void
return void

Fault() public method

Causes the T:System.Threading.Tasks.Dataflow.IDataflowBlock to complete in a F:System.Threading.Tasks.TaskStatus.Faulted state.
public Fault ( Exception exception ) : void
exception System.Exception The that caused the faulting.
return void

Log() protected abstract method

Logs the specified log entries.
protected abstract Log ( IEnumerable logEntries ) : void
logEntries IEnumerable The log entries.
return void

OfferMessage() public method

Offers the message.
public OfferMessage ( DataflowMessageHeader messageHeader, LogEntry messageValue, ISourceBlock source, System.Boolean consumeToAccept ) : DataflowMessageStatus
messageHeader DataflowMessageHeader The message header.
messageValue LogEntry The message value.
source ISourceBlock The source.
consumeToAccept System.Boolean The consume to accept.
return DataflowMessageStatus

ShouldLog() public abstract method

Predicate which determines whether or not the target instance should log this entry.
public abstract ShouldLog ( LogEntry logEntry ) : System.Boolean
logEntry LogEntry The log entry.
return System.Boolean