EventDataDiagnosticExtensions.ExtractActivity(EventData, String) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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
Parameter
- eventData
- EventData
- activityName
- String
Gibt zurück
Beispiele
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}")
}
}
Beachten Sie, dass jedes Protokoll mit Currentgestempelt wird. ID, die in einem beliebigen geschachtelten Methodenaufruf (Synchronisierung oder asynchron) verwendet werden kann. Current Hierbei handelt es sich um einen Umgebungskontext, der mit asynchronen Methodenaufrufen fließt.
Hinweise
Der Ablaufverfolgungskontext wird verwendet, um Telemetriedaten zwischen Producer und Consumer zu korrelieren und durch die Eigenschaften "Diagnostic-Id" und "Correlation-Context" in Propertiesdargestellt.
Das .NET SDK fügt beim Senden von Nachrichten an den ServiceBus automatisch Kontext ein (wenn Diagnose durch das Ablaufverfolgungssystem aktiviert ist).
"Diagnostic-Id" identifiziert eindeutig den Vorgang, der das Ereignis in die Warteschlange gestellt hat.
"Correlation-Context" ist eine durch Trennzeichen getrennte Liste von Zeichenfolgenschlüssel-Wertpaaren, die den optionalen Kontext für den Vorgang darstellen.
Wenn kein Ablaufverfolgungskontext im Ereignis vorhanden ist, gibt diese Methode ohne übergeordnetes Element zurück Activity .
Zurückgegeben muss Activity gestartet werden, bevor es verwendet werden kann (siehe Beispiel unten).
Gilt für:
Azure SDK for .NET