Redigera

Dela via


LatencyRecorderMiddlewareExtensions.AddLatencyContextMiddleware Method

Definition

Overloads

AddLatencyContextMiddleware(IAsyncProcessingPipelineBuilder)

Adds the IMessageMiddleware to register the Microsoft.Extensions.Telemetry.Latency.ILatencyContextProvider in IMessageMiddleware pipeline to create and set Microsoft.Extensions.Telemetry.Latency.ILatencyContext with the MessageContext.

AddLatencyContextMiddleware<T>(IAsyncProcessingPipelineBuilder, Func<IServiceProvider,T>)

Adds the IMessageMiddleware to reuse the existing Microsoft.Extensions.Telemetry.Latency.ILatencyContext registered with the ASP.NET pipeline and set it in the MessageContext.

AddLatencyContextMiddleware<T>(IAsyncProcessingPipelineBuilder, Func<IServiceProvider,T>, Func<IServiceProvider,IEnumerable<ILatencyDataExporter>>)

Adds the IMessageMiddleware to register the provided Microsoft.Extensions.Telemetry.Latency.ILatencyContextProvider in the IMessageMiddleware pipeline to create and set Microsoft.Extensions.Telemetry.Latency.ILatencyContext with the MessageContext.

AddLatencyContextMiddleware(IAsyncProcessingPipelineBuilder)

Adds the IMessageMiddleware to register the Microsoft.Extensions.Telemetry.Latency.ILatencyContextProvider in IMessageMiddleware pipeline to create and set Microsoft.Extensions.Telemetry.Latency.ILatencyContext with the MessageContext.

public:
[System::Runtime::CompilerServices::Extension]
 static System::Cloud::Messaging::IAsyncProcessingPipelineBuilder ^ AddLatencyContextMiddleware(System::Cloud::Messaging::IAsyncProcessingPipelineBuilder ^ pipelineBuilder);
public static System.Cloud.Messaging.IAsyncProcessingPipelineBuilder AddLatencyContextMiddleware(this System.Cloud.Messaging.IAsyncProcessingPipelineBuilder pipelineBuilder);
static member AddLatencyContextMiddleware : System.Cloud.Messaging.IAsyncProcessingPipelineBuilder -> System.Cloud.Messaging.IAsyncProcessingPipelineBuilder
<Extension()>
Public Function AddLatencyContextMiddleware (pipelineBuilder As IAsyncProcessingPipelineBuilder) As IAsyncProcessingPipelineBuilder

Parameters

pipelineBuilder
IAsyncProcessingPipelineBuilder

The builder for async processing pipeline.

Returns

IAsyncProcessingPipelineBuilder to chain additional calls.

Exceptions

Any argument is null.

Remarks

If the Microsoft.Extensions.Telemetry.Latency.ILatencyContext is already available in the workflow, use the AddLatencyContextMiddleware<T>(IAsyncProcessingPipelineBuilder, Func<IServiceProvider,T>) variant.

Applies to

AddLatencyContextMiddleware<T>(IAsyncProcessingPipelineBuilder, Func<IServiceProvider,T>)

Adds the IMessageMiddleware to reuse the existing Microsoft.Extensions.Telemetry.Latency.ILatencyContext registered with the ASP.NET pipeline and set it in the MessageContext.

public:
generic <typename T>
 where T : class, Microsoft::Extensions::Telemetry::Latency::ILatencyContext[System::Runtime::CompilerServices::Extension]
 static System::Cloud::Messaging::IAsyncProcessingPipelineBuilder ^ AddLatencyContextMiddleware(System::Cloud::Messaging::IAsyncProcessingPipelineBuilder ^ pipelineBuilder, Func<IServiceProvider ^, T> ^ implementationFactory);
public static System.Cloud.Messaging.IAsyncProcessingPipelineBuilder AddLatencyContextMiddleware<T>(this System.Cloud.Messaging.IAsyncProcessingPipelineBuilder pipelineBuilder, Func<IServiceProvider,T> implementationFactory) where T : class, Microsoft.Extensions.Telemetry.Latency.ILatencyContext;
static member AddLatencyContextMiddleware : System.Cloud.Messaging.IAsyncProcessingPipelineBuilder * Func<IServiceProvider, 'T (requires 'T : null and 'T :> Microsoft.Extensions.Telemetry.Latency.ILatencyContext)> -> System.Cloud.Messaging.IAsyncProcessingPipelineBuilder (requires 'T : null and 'T :> Microsoft.Extensions.Telemetry.Latency.ILatencyContext)
<Extension()>
Public Function AddLatencyContextMiddleware(Of T As {Class, ILatencyContext}) (pipelineBuilder As IAsyncProcessingPipelineBuilder, implementationFactory As Func(Of IServiceProvider, T)) As IAsyncProcessingPipelineBuilder

Type Parameters

T

The type of Microsoft.Extensions.Telemetry.Latency.ILatencyContext implementation.

Parameters

pipelineBuilder
IAsyncProcessingPipelineBuilder

The builder for async processing pipeline.

implementationFactory
Func<IServiceProvider,T>

The Microsoft.Extensions.Telemetry.Latency.ILatencyContext implementation factory.

Exceptions

Any argument is null.

Applies to

AddLatencyContextMiddleware<T>(IAsyncProcessingPipelineBuilder, Func<IServiceProvider,T>, Func<IServiceProvider,IEnumerable<ILatencyDataExporter>>)

Adds the IMessageMiddleware to register the provided Microsoft.Extensions.Telemetry.Latency.ILatencyContextProvider in the IMessageMiddleware pipeline to create and set Microsoft.Extensions.Telemetry.Latency.ILatencyContext with the MessageContext.

public:
generic <typename T>
 where T : class, Microsoft::Extensions::Telemetry::Latency::ILatencyContextProvider[System::Runtime::CompilerServices::Extension]
 static System::Cloud::Messaging::IAsyncProcessingPipelineBuilder ^ AddLatencyContextMiddleware(System::Cloud::Messaging::IAsyncProcessingPipelineBuilder ^ pipelineBuilder, Func<IServiceProvider ^, T> ^ implementationFactory, Func<IServiceProvider ^, System::Collections::Generic::IEnumerable<Microsoft::Extensions::Telemetry::Latency::ILatencyDataExporter ^> ^> ^ exporterFactory);
public static System.Cloud.Messaging.IAsyncProcessingPipelineBuilder AddLatencyContextMiddleware<T>(this System.Cloud.Messaging.IAsyncProcessingPipelineBuilder pipelineBuilder, Func<IServiceProvider,T> implementationFactory, Func<IServiceProvider,System.Collections.Generic.IEnumerable<Microsoft.Extensions.Telemetry.Latency.ILatencyDataExporter>> exporterFactory) where T : class, Microsoft.Extensions.Telemetry.Latency.ILatencyContextProvider;
static member AddLatencyContextMiddleware : System.Cloud.Messaging.IAsyncProcessingPipelineBuilder * Func<IServiceProvider, 'T (requires 'T : null and 'T :> Microsoft.Extensions.Telemetry.Latency.ILatencyContextProvider)> * Func<IServiceProvider, seq<Microsoft.Extensions.Telemetry.Latency.ILatencyDataExporter>> -> System.Cloud.Messaging.IAsyncProcessingPipelineBuilder (requires 'T : null and 'T :> Microsoft.Extensions.Telemetry.Latency.ILatencyContextProvider)
<Extension()>
Public Function AddLatencyContextMiddleware(Of T As {Class, ILatencyContextProvider}) (pipelineBuilder As IAsyncProcessingPipelineBuilder, implementationFactory As Func(Of IServiceProvider, T), exporterFactory As Func(Of IServiceProvider, IEnumerable(Of ILatencyDataExporter))) As IAsyncProcessingPipelineBuilder

Type Parameters

T

The type of Microsoft.Extensions.Telemetry.Latency.ILatencyContextProvider implementation.

Parameters

pipelineBuilder
IAsyncProcessingPipelineBuilder

The builder for async processing pipeline.

implementationFactory
Func<IServiceProvider,T>

The Microsoft.Extensions.Telemetry.Latency.ILatencyContextProvider implementation factory.

exporterFactory
Func<IServiceProvider,IEnumerable<Microsoft.Extensions.Telemetry.Latency.ILatencyDataExporter>>

The factory for exporting capture latency context.

Returns

IAsyncProcessingPipelineBuilder to chain additional calls.

Exceptions

Any argument is null.

Remarks

If the Microsoft.Extensions.Telemetry.Latency.ILatencyContext is already available in the workflow, use the AddLatencyContextMiddleware<T>(IAsyncProcessingPipelineBuilder, Func<IServiceProvider,T>) variant.

Applies to