DiagnosticSource.OnActivityExport(Activity, Object) Метод

Определение

Передает состояние из действия в некоторое событие или операцию, например исходящий HTTP-запрос, который будет происходить вне процесса.

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)

Параметры

activity
Activity

Действие, затронутое внешним событием.

payload
Object

Объект, представляющий исходящий запрос.

Комментарии

Если сайт инструментирования находится в расположении, где действия покидают процесс (например, исходящие HTTP-запросы), этот сайт хочет передать состояние из действия в исходящий запрос.

Насколько это возможно, это необходимо сделать сайтом инструментирования, так как существует контракт между Activity логикой запроса и логикой запроса на сайте инструментирования. Однако сайт инструментирования не может обрабатывать политику (например, следует ли отключать сведения о действиях или записываться в более старый формат по соображениям совместимости). Для этого сайт инструментирования должен вернуться в систему ведения журнала и попросить его разрешить политику. Это цель OnActivityExport метода.

Метод OnActivityExport получается Activity , а также объект полезных данных, представляющий исходящий запрос. DiagnosticSource Затем подписчик может обновить исходящий запрос перед отправкой.

Обратите внимание, что этот метод редко используется на сайтах инструментирования (только те сайты, которые находятся на исходящей границе процесса). Кроме того, обычно политика по умолчанию, которую выполняет сайт инструментирования (например, для передачи всего состояния действия в определенном исходящем соглашении), скорее всего, будет оштрафован. Этот метод предназначен только для случаев, когда это проблема. Таким образом, этот метод следует использовать очень редко и в основном здесь для метрии с OnActivityImport и последующей проверкой правописания.

Обратите внимание, что payload типируется Object здесь, но любой конкретный сайт инструментирования и подписчик должны знать тип полезных данных и таким образом привести и декодировать его при необходимости.

Применяется к