RequireApplicationRootSpanCreation

このプロパティは、ODP.NETがアプリケーションによって作成されたルート・スパンに関連付けられている操作のみをインスツルメントするかどうかを制御します。

宣言

// C#
public bool RequireApplicationRootSpanCreation { get; set; } 

戻り値

bool

備考

新しいアクティビティ/スパンは、作成されると、自動的に現在の(進行中の)アクティビティ/スパンの子になります。ただし、進行中のスパンがなく、新しいスパンが作成されると、ルート/親なし/孤立スパンになります。

同様に、ユーザー・アプリケーションがODP.NETでインスツルメントされたメソッドをコールする前にスパンを作成すると、ユーザー・アプリケーションによって作成されたスパンがルート・スパンになり、ODP.NETによって作成されたすべてのスパンがその子になります。

ユーザー・アプリケーションがルート・スパンを作成し、ODP.NETでインスツルメントされたメソッドをコールしなかった場合、親リンクがないため、複数の親なし/孤立スパンが作成されます。これらのスパンを視覚化および分析するのは困難です。

親なし/孤立スパンも、バックグラウンド・スレッドから発生するサーバー/データベース・ラウンドトリップ・コールによって生成されます。親なし/孤立スパンでは、親リンクがないため、ほとんどのシナリオではあまり値を追加しません。このオプションを使用すると、ユーザー/クライアントは、必要に応じて親なしまたは孤立したスパン・トレースを制御できます。

デフォルトでは、親なし/孤立スパンのインスツルメンテーションは有効です。

つまり、アプリケーションは、ODP.NETインスツルメント・メソッドをコールする前にアクティビティを作成する必要はありません。ただし、ユーザーがこのオプションをtrueに設定した場合、ユーザー・アプリケーションはルート・アクティビティを作成する必要があります。そうしないと、ODP.NETスパンが生成されません。