Jazyk

DiagnosticSource.OnActivityExport(Activity, Object) Metoda

Definice

Přenese stav z aktivity na nějakou událost nebo operaci, například odchozí požadavek HTTP, ke kterému dojde mimo proces.

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

Parametry

activity
Activity

Aktivita ovlivněná externí událostí.

payload
Object

Objekt, který představuje odchozí požadavek.

Poznámky

Pokud je lokalita instrumentace v umístění, kde aktivity opouštějí proces (například odchozí požadavky HTTP), bude tato lokalita chtít přenést stav z aktivity na odchozí požadavek.

V rozsahu, který je možný, by to měla provést lokalita instrumentace, protože existuje smlouva mezi Activity a logikou žádosti ougoing v lokalitě instrumentace. Web instrumentace ale nemůže zpracovat zásady (například jestli by se informace o aktivitě měly zakázat nebo zapisovat ve starším formátu z důvodů kompatibility). V takovém případě musí lokalita instrumentace zavolat zpět do systému protokolování a požádat ji, aby vyřešila zásady. Toto je účel OnActivityExport metody.

Metoda OnActivityExport je udělena Activity i datové části objekt, který představuje odchozí požadavek. DiagnosticSource Odběratel pak má možnost aktualizovat odchozí požadavek před odesláním.

Všimněte si, že tato metoda se zřídka používá v lokalitách instrumentace (pouze ty lokality, které jsou na odchozí hranici procesu). Kromě toho je pravděpodobné, že výchozí zásada, kterou lokalita instrumentace provádí (například pro přenos stavu všech aktivit v konkrétní odchozí konvenci), bude pravděpodobně v pořádku. Tato metoda je pouze v případech, kdy se jedná o problém. Proto by tato metoda měla být použita velmi zřídka a je zde většinou pro symetry s OnActivityImport a budoucí testování.

Všimněte si, že payload je zde zadán jako zde Object , ale každý konkrétní instrumentační web a odběratel by měli znát typ datové části, a proto ji v případě potřeby přetypovat a dekódovat.

Platí pro