DiagnosticSource.OnActivityExport(Activity, Object) Metoda

Definicja

Transferuje stan z działania do określonego zdarzenia lub operacji, takiego jak wychodzące żądanie HTTP, które wystąpi poza procesem.

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

Działanie, na które ma wpływ zdarzenie zewnętrzne.

payload
Object

Obiekt reprezentujący żądanie wychodzące.

Uwagi

Jeśli lokacja instrumentacji znajduje się w lokalizacji, w której działania opuszczają proces (np. wychodzące żądania HTTP), ta witryna będzie chciała przenieść stan z działania do żądania wychodzącego.

W miarę możliwości należy to zrobić przez lokację instrumentacji, ponieważ istnieje kontrakt między Activity a logiką żądania operacyjnego w lokacji instrumentacji. Jednak lokacja instrumentacji nie może obsłużyć zasad (na przykład tego, czy informacje o aktywności powinny być wyłączone, czy zapisane w starszym formacie ze względów zgodności). W tym celu lokacja instrumentacji musi wywołać ponownie system rejestrowania i poprosić o rozwiązanie zasad. Jest to cel OnActivityExport metody .

Metoda OnActivityExport jest podawana jako obiekt ładunku Activity , który reprezentuje żądanie wychodzące. Subskrybent DiagnosticSource może następnie zaktualizować żądanie wychodzące przed wysłaniem.

Należy pamiętać, że ta metoda jest rzadko używana w lokacjach instrumentacji (tylko te witryny, które znajdują się na granicy wychodzącej procesu). Co więcej, zazwyczaj domyślne zasady wykonywane przez lokację instrumentacji (na przykład w celu przeniesienia całego stanu działania w określonej konwencji wychodzącej) mogą być w porządku. Ta metoda dotyczy tylko przypadków, gdy jest to problem. W związku z tym ta metoda powinna być używana bardzo rzadko i jest tutaj głównie do symetrii z OnActivityImport i sprawdzania przyszłości.

Należy pamiętać, że payload element jest wpisany w Object tym miejscu, ale każda określona lokacja instrumentacji i subskrybent powinien znać typ ładunku, a tym samym rzutować i dekodować go w razie potrzeby.

Dotyczy