次の方法で共有


OpenTelemetry

この機能には、 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