DiagnosticSource.OnActivityExport(Activity, Object) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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.