Table of Contents

Class MetricsInterceptor

Namespace
IceRpc.Metrics
Assembly
IceRpc.Metrics.dll

An interceptor that publishes invocation metrics using a singleton meter named "IceRpc.Invocation".

public class MetricsInterceptor : IInvoker
Inheritance
MetricsInterceptor
Implements
Inherited Members
Extension Methods

Constructors

MetricsInterceptor(IInvoker)

Constructs a metrics interceptor.

public MetricsInterceptor(IInvoker next)

Parameters

next IInvoker

The next invoker in the invocation pipeline.

Methods

InvokeAsync(OutgoingRequest, CancellationToken)

Sends an outgoing request and returns the corresponding incoming response.

public Task<IncomingResponse> InvokeAsync(OutgoingRequest request, CancellationToken cancellationToken)

Parameters

request OutgoingRequest

The outgoing request being sent.

cancellationToken CancellationToken

A 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.

See Also