Class LoggerInterceptor
An interceptor that writes a log entry to an ILogger for each invocation.
public class LoggerInterceptor : IInvoker
- Inheritance
-
LoggerInterceptor
- Implements
- Inherited Members
- Extension Methods
Constructors
LoggerInterceptor(IInvoker, ILogger)
Constructs a logger interceptor.
public LoggerInterceptor(IInvoker next, ILogger logger)
Parameters
Methods
InvokeAsync(OutgoingRequest, CancellationToken)
Sends an outgoing request and returns the corresponding incoming response.
public Task<IncomingResponse> InvokeAsync(OutgoingRequest request, CancellationToken cancellationToken)
Parameters
request
OutgoingRequestThe outgoing request being sent.
cancellationToken
CancellationTokenA cancellation token that receives the cancellation requests.
Returns
- Task<IncomingResponse>
The corresponding IncomingResponse.
Remarks
When request
is a two-way request, the returned task will not complete successfully
until after the request's Payload is fully sent and the response is received from
the peer. When the request is a one-way request, the returned task completes successfully with an empty response
when the request's Payload is fully sent. For all requests (one-way and two-way),
the sending of the request's PayloadContinuation can continue in a background task
after the returned task has completed successfully.