注意
SignalFx Instrumentation for .NETは、2024年2月21日をもって非推奨となり、2025年2月21日にサポート終了となります。それまでは、重要なセキュリティ修正とバグ修正のみが提供されます。それ以降は、ライブラリはアーカイブされ、保守されなくなります。
新規に .NET エコシステムをインストルメンテーションするお客様は、Splunk Distribution of OpenTelemetry .NET をご利用ください。既存のお客様は、同様の機能を提供する Splunk Distribution of OpenTelemetry .NET への移行をご検討ください。移行方法については、SignalFx .NET Instrumentationからの移行 を参照してください。
Splunk Observability Cloud 用に .NET アプリケーションを手動でインストルメンテーションする 🔗
SignalFx Instrumentation for .NET は、OpenTracing 互換のグローバルトレーサーを提供および登録し、Splunk Observability Cloud 用にアプリケーションを手動でインストルメンテーションするために使用できます。カスタムまたは手動インストルメンテーションは、スパンにカスタム属性を追加する必要がある場合や、スパンを手動で生成する必要がある場合に役立ちます。
注釈
SignalFx Instrumentation for .NETは、OpenTracingバージョン0.12.1以降をサポートしています。
.NETアプリケーションを手動でインストルメンテーションするには、以下の手順に従ってください:
OpenTracingの依存関係をプロジェクトに追加します:
<PackageReference Include="OpenTracing" Version="0.12.1" />
OpenTracing.Util.GlobalTracer
インスタンスを取得し、スパンを作成します:using OpenTracing; using OpenTracing.Util; namespace MyProject { public class MyClass { public static async void MyMethod() { // Obtain the automatically registered OpenTracing.Util.GlobalTracer instance var tracer = GlobalTracer.Instance; // Create an active span that automatically becomes a child span of any existing span in this context using (IScope scope = tracer.BuildSpan("MyTracedFunctionality").StartActive(finishSpanOnDispose: true)) { var span = scope.Span; span.SetTag("MyTag", "MyValue"); span.Log("My Log Statement"); var ret = await MyAppFunctionality(); span.SetTag("FunctionalityReturned", ret.ToString()); } } } }