この機能には、 Microsoft.Testing.Extensions.OpenTelemetry NuGet パッケージが必要です。
この拡張機能は 、OpenTelemetry と Microsoft.Testing.Platform を統合し、テスト実行で標準の OpenTelemetry SDK を介してトレースとメトリックを出力できるようにします。
Important
この拡張機能は現在試験段階です。 すべてのパブリック API は、 TPEXP 診断 ID の背後にゲートされます。
Registration
注
この拡張機能では、自動登録はサポートされていません。 自動生成されたエントリ ポイント (<GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>) を無効にし、AddOpenTelemetryProvider メソッドでMainを呼び出して、手動で登録する必要があります。
var builder = await TestApplication.CreateBuilderAsync(args);
builder.AddOpenTelemetryProvider(
withTracing: tracing => tracing
.AddTestingPlatformInstrumentation()
.AddConsoleExporter(),
withMetrics: metrics => metrics
.AddTestingPlatformInstrumentation()
.AddConsoleExporter()
);
using var app = await builder.BuildAsync();
return await app.RunAsync();
API
AddOpenTelemetryProvider
ITestApplicationBuilderに OpenTelemetry プロバイダーを登録します。 次に示す2つの省略可能なコールバックを受け付けます。
-
withTracing: 分散トレースのTracerProviderBuilderを構成します。 -
withMetrics: メトリック収集のMeterProviderBuilderを構成します。
AddTestingPlatformInstrumentation
TracerProviderBuilderまたはMeterProviderBuilderを呼び出して、組み込みのMicrosoft.Testing.Platformアクティビティのソースとメーターをサブスクライブします。
アクティビティソースとメーター
拡張機能は、次の下でテレメトリを出力します。
- アクティビティ ソース:
Microsoft.Testing.Platform - メーター:
Microsoft.Testing.Platform
.NET