EventDataDiagnosticExtensions.ExtractActivity(EventData, String) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
public static System.Diagnostics.Activity ExtractActivity (this Microsoft.Azure.EventHubs.EventData eventData, string activityName = default);
static member ExtractActivity : Microsoft.Azure.EventHubs.EventData * string -> System.Diagnostics.Activity
<Extension()>
Public Function ExtractActivity (eventData As EventData, Optional activityName As String = Nothing) As Activity
パラメーター
- eventData
- EventData
- activityName
- String
戻り値
例
async Task ProcessAsync(EventData eventData)
{
var activity = eventData.ExtractActivity();
activity.Start();
Logger.LogInformation($"Event received, Id = {Activity.Current.Id}")
try
{
// process event
}
catch (Exception ex)
{
Logger.LogError($"Exception {ex}, Id = {Activity.Current.Id}")
}
finally
{
activity.Stop();
// Activity is stopped, we no longer have it in Activity.Current
Logger.LogInformation($"Event processed, Id = {activity.Id}, Duration = {activity.Duration}")
}
}
すべてのログに がスタンプされていることに Current注意してください。入れ子になったメソッド呼び出し (同期または非同期) Current 内で使用できる ID は、非同期メソッド呼び出しで流れるアンビエント コンテキストです。
注釈
トレース コンテキストは、プロデューサーとコンシューマーの間でテレメトリを関連付けるために使用され、 の 'Diagnostic-Id' プロパティと 'Correlation-Context' プロパティで Properties表されます。
.NET SDK は、ServiceBus にメッセージを送信するときにコンテキストを自動的に挿入します (診断がトレース システムによって有効になっている場合)。
'Diagnostic-Id' は、イベントをエンキューした操作を一意に識別します
'Correlation-Context' は、操作の省略可能なコンテキストを表す文字列キー値ペアのコンマ区切りのリストです。
イベントにトレース コンテキストがない場合、このメソッドは親なしで を返します Activity 。
返される Activity は、使用する前に開始する必要があります (以下の例を参照してください)
適用対象
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
Azure SDK for .NET