DiagnosticSource.OnActivityImport(Activity, Object) Methode

Definition

Überträgt den Status von außerhalb des Prozesses stattfindenden Ereignissen oder Vorgängen, wie z.B. einer eingehenden Anfrage, auf eine Aktivität.

public:
 virtual void OnActivityImport(System::Diagnostics::Activity ^ activity, System::Object ^ payload);
public virtual void OnActivityImport (System.Diagnostics.Activity activity, object? payload);
public virtual void OnActivityImport (System.Diagnostics.Activity activity, object payload);
abstract member OnActivityImport : System.Diagnostics.Activity * obj -> unit
override this.OnActivityImport : System.Diagnostics.Activity * obj -> unit
Public Overridable Sub OnActivityImport (activity As Activity, payload As Object)

Parameter

activity
Activity

Die Aktivität, die von einem externen Ereignis betroffen ist.

payload
Object

Eine Nutzlast, die die eingehende Anforderung darstellt.

Hinweise

Wenn ein Instrumentierungsstandort eine neue Aktivität als Reaktion auf ein Ereignis außerhalb des Prozesses erstellt, z. B. eine eingehende HTTP-Anforderung), ermöglicht die OnActivityImport Methode, dass diese Website eine neue Aktivität erstellen und den Zustand von der eingehenden Anforderung an die Aktivität übertragen möchte.

Soweit möglich sollte dies vom Instrumentierungsstandort erfolgen, da zwischen der Logik der Activity eingehenden Anforderung am Instrumentierungsstandort ein Vertrag besteht. Die Instrumentierungswebsite kann jedoch keine Richtlinie verarbeiten. (Wenn z. B. die Stichprobenerstellung durchgeführt wird, sollten dann genau welche Anforderungen in die Stichprobe einbezogen werden?) In diesen Fällen muss der Instrumentierungsstandort das Protokollierungssystem zurückrufen und es bitten, die Richtlinie aufzulösen (z. B. um zu entscheiden, ob das Samplingbit der Aktivität festgelegt werden soll). Dies ist der Zweck der OnActivityImport -Methode. Sie erhält die Aktivität sowie ein Nutzlastobjekt, das die eingehende Anforderung darstellt. Die Abonnenten von DiagnosticSource haben dann die Möglichkeit, diese Aktivität wie gewünscht zu aktualisieren.

Diese Methode wird selten an Instrumentierungsstandorten verwendet (nur an den Standorten, die sich an der Grenze des Prozesses befinden), und die Instrumetationswebsite implementiert eine Standardrichtlinie (sie legt die Aktivität in irgendeiner Weise fest), sodass es nicht erforderlich ist, diese Methode zu überschreiben, wenn diese Standardrichtlinie in Ordnung ist. Mit anderen Worten, diese Methode sollte in sehr seltenen (aber häufig wichtigen) Fällen überschrieben werden.

Beachten Sie, dass payload wie Object hier eingegeben wird, aber jede bestimmte Instrumentierungswebsite und jeder Abonnent kennt den Typ der Nutzlast und kann sie bei Bedarf umwandeln und decodieren.

Gilt für: