DiagnosticListener.Subscribe Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Estos métodos permiten agregar un suscriptor y algunos de ellos proporcionan métodos de filtrado de eventos opcionales.
Sobrecargas
Subscribe(IObserver<KeyValuePair<String,Object>>) |
Agrega un suscriptor. |
Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>) |
Agrega un suscriptor y, opcionalmente, filtra los eventos en función de su nombre y hasta dos objetos de contexto. |
Subscribe(IObserver<KeyValuePair<String,Object>>, Predicate<String>) |
Agrega un suscriptor y, opcionalmente, filtra los eventos en función de su nombre. |
Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>, Action<Activity,Object>, Action<Activity,Object>) |
Agrega un suscriptor, opcionalmente filtra los eventos en función de su nombre y hasta dos objetos de contexto, y especifica los métodos a los que se va a llamar cuando los proveedores importen o exporten actividades externas al proceso. |
Subscribe(IObserver<KeyValuePair<String,Object>>)
- Source:
- DiagnosticListener.cs
- Source:
- DiagnosticListener.cs
- Source:
- DiagnosticListener.cs
Agrega un suscriptor.
public:
virtual IDisposable ^ Subscribe(IObserver<System::Collections::Generic::KeyValuePair<System::String ^, System::Object ^>> ^ observer);
public virtual IDisposable Subscribe (IObserver<System.Collections.Generic.KeyValuePair<string,object?>> observer);
public IDisposable Subscribe (IObserver<System.Collections.Generic.KeyValuePair<string,object>> observer);
public virtual IDisposable Subscribe (IObserver<System.Collections.Generic.KeyValuePair<string,object>> observer);
abstract member Subscribe : IObserver<System.Collections.Generic.KeyValuePair<string, obj>> -> IDisposable
override this.Subscribe : IObserver<System.Collections.Generic.KeyValuePair<string, obj>> -> IDisposable
Public Overridable Function Subscribe (observer As IObserver(Of KeyValuePair(Of String, Object))) As IDisposable
Public Function Subscribe (observer As IObserver(Of KeyValuePair(Of String, Object))) As IDisposable
Parámetros
- observer
- IObserver<KeyValuePair<String,Object>>
Suscriptor.
Devoluciones
Referencia a una interfaz que permite a los clientes de escucha dejar de recibir notificaciones antes de que el elemento DiagnosticSource haya terminado de enviarlas.
Implementaciones
Se aplica a
Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>)
- Source:
- DiagnosticListener.cs
- Source:
- DiagnosticListener.cs
- Source:
- DiagnosticListener.cs
Agrega un suscriptor y, opcionalmente, filtra los eventos en función de su nombre y hasta dos objetos de contexto.
public:
virtual IDisposable ^ Subscribe(IObserver<System::Collections::Generic::KeyValuePair<System::String ^, System::Object ^>> ^ observer, Func<System::String ^, System::Object ^, System::Object ^, bool> ^ isEnabled);
public virtual IDisposable Subscribe (IObserver<System.Collections.Generic.KeyValuePair<string,object?>> observer, Func<string,object?,object?,bool>? isEnabled);
public virtual IDisposable Subscribe (IObserver<System.Collections.Generic.KeyValuePair<string,object>> observer, Func<string,object,object,bool> isEnabled);
abstract member Subscribe : IObserver<System.Collections.Generic.KeyValuePair<string, obj>> * Func<string, obj, obj, bool> -> IDisposable
override this.Subscribe : IObserver<System.Collections.Generic.KeyValuePair<string, obj>> * Func<string, obj, obj, bool> -> IDisposable
Public Overridable Function Subscribe (observer As IObserver(Of KeyValuePair(Of String, Object)), isEnabled As Func(Of String, Object, Object, Boolean)) As IDisposable
Parámetros
- observer
- IObserver<KeyValuePair<String,Object>>
Suscriptor.
Delegado que filtra los eventos en función de su nombre y hasta dos objetos de contexto (que pueden ser null
), o bien null
si un filtro de evento no es deseable.
Devoluciones
Referencia a una interfaz que permite a los clientes de escucha dejar de recibir notificaciones antes de que el elemento DiagnosticSource haya terminado de enviarlas.
Comentarios
Si isEnabled
no null
es , indica que algunos eventos no son de interés se pueden omitir para mejorar la eficacia.
Un sitio de instrumentación determinado tiene la opción de llamar a una o varias IsEnabled sobrecargas en las que pasa el nombre del evento y hasta otros dos objetos (específicos del sitio de instrumentación) como argumentos. Si se realiza alguna de estas IsEnabled llamadas, este isEnabled
predicado se invoca con valores pasados (si se usan sobrecargas más cortas, null
se pasa para los objetos de contexto que faltan).
Esto proporciona a cualquier sitio de instrumentación concreto la capacidad de pasar hasta dos fragmentos de información al suscriptor para realizar un filtrado sofisticado y eficaz. Esto requiere más acoplamiento entre el sitio de instrumentación y el código de suscriptor.
Se espera que un sitio de instrumentación determinado llame a diferentes sobrecargas de IsEnabled
para el mismo evento, llamando primero a IsEnabled(String), que llama al filtro con dos null
objetos de contexto. Si isEnabled
devuelve true
, llama de nuevo con objetos de contexto. El isEnabled
filtro debe diseñarse teniendo esto en cuenta.
Tenga en cuenta que el isEnabled
predicado es una optimización opcional para permitir que el sitio de instrumentación evite configurar la carga y llamar a Write(String, Object) cuando no le importa ningún suscriptor. En concreto, el sitio de instrumentación tiene la opción de omitir el IsEnabled predicado (no llamarlo) y simplemente llamar a Write(String, Object). Por lo tanto, si el suscriptor requiere el filtrado, debe hacerlo a sí mismo.
Si este parámetro es null
, no se realiza ningún filtrado (todas las sobrecargas de IsEnabled devolución true
).
Se aplica a
Subscribe(IObserver<KeyValuePair<String,Object>>, Predicate<String>)
- Source:
- DiagnosticListener.cs
- Source:
- DiagnosticListener.cs
- Source:
- DiagnosticListener.cs
Agrega un suscriptor y, opcionalmente, filtra los eventos en función de su nombre.
public:
virtual IDisposable ^ Subscribe(IObserver<System::Collections::Generic::KeyValuePair<System::String ^, System::Object ^>> ^ observer, Predicate<System::String ^> ^ isEnabled);
public virtual IDisposable Subscribe (IObserver<System.Collections.Generic.KeyValuePair<string,object?>> observer, Predicate<string>? isEnabled);
public virtual IDisposable Subscribe (IObserver<System.Collections.Generic.KeyValuePair<string,object>> observer, Predicate<string> isEnabled);
abstract member Subscribe : IObserver<System.Collections.Generic.KeyValuePair<string, obj>> * Predicate<string> -> IDisposable
override this.Subscribe : IObserver<System.Collections.Generic.KeyValuePair<string, obj>> * Predicate<string> -> IDisposable
Public Overridable Function Subscribe (observer As IObserver(Of KeyValuePair(Of String, Object)), isEnabled As Predicate(Of String)) As IDisposable
Parámetros
- observer
- IObserver<KeyValuePair<String,Object>>
Suscriptor.
Delegado que filtra los eventos en función de su nombre (String). El delegado debe devolver true
si el evento está habilitado.
Devoluciones
Referencia a una interfaz que permite a los clientes de escucha dejar de recibir notificaciones antes de que el elemento DiagnosticSource haya terminado de enviarlas.
Comentarios
Si isEnabled
no null
es , algunos eventos no son de interés y se pueden omitir para mejorar la eficacia. El isEnabled
predicado es una optimización opcional para permitir que el sitio de instrumentación evite configurar la carga y llamar a Write(String, Object) cuando ningún suscriptor le interese. En particular, el sitio de instrumentación tiene la opción de omitir el IsEnabled() predicado (no llamarlo) y simplemente llamar a Write(String, Object). Por lo tanto, si el suscriptor requiere el filtrado, debe hacerlo a sí mismo.
Si isEnabled
es null
, no se realiza ningún filtrado (todas las sobrecargas de IsEnabled devolución true
).
Se aplica a
Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>, Action<Activity,Object>, Action<Activity,Object>)
- Source:
- DiagnosticSourceActivity.cs
- Source:
- DiagnosticSourceActivity.cs
- Source:
- DiagnosticSourceActivity.cs
Agrega un suscriptor, opcionalmente filtra los eventos en función de su nombre y hasta dos objetos de contexto, y especifica los métodos a los que se va a llamar cuando los proveedores importen o exporten actividades externas al proceso.
public virtual IDisposable Subscribe (IObserver<System.Collections.Generic.KeyValuePair<string,object?>> observer, Func<string,object?,object?,bool>? isEnabled, Action<System.Diagnostics.Activity,object?>? onActivityImport = default, Action<System.Diagnostics.Activity,object?>? onActivityExport = default);
public virtual IDisposable Subscribe (IObserver<System.Collections.Generic.KeyValuePair<string,object>> observer, Func<string,object,object,bool> isEnabled, Action<System.Diagnostics.Activity,object> onActivityImport = default, Action<System.Diagnostics.Activity,object> onActivityExport = default);
abstract member Subscribe : IObserver<System.Collections.Generic.KeyValuePair<string, obj>> * Func<string, obj, obj, bool> * Action<System.Diagnostics.Activity, obj> * Action<System.Diagnostics.Activity, obj> -> IDisposable
override this.Subscribe : IObserver<System.Collections.Generic.KeyValuePair<string, obj>> * Func<string, obj, obj, bool> * Action<System.Diagnostics.Activity, obj> * Action<System.Diagnostics.Activity, obj> -> IDisposable
Public Overridable Function Subscribe (observer As IObserver(Of KeyValuePair(Of String, Object)), isEnabled As Func(Of String, Object, Object, Boolean), Optional onActivityImport As Action(Of Activity, Object) = Nothing, Optional onActivityExport As Action(Of Activity, Object) = Nothing) As IDisposable
Parámetros
- observer
- IObserver<KeyValuePair<String,Object>>
Suscriptor.
Delegado que filtra eventos según su nombre y hasta dos objetos de contexto (que pueden ser null
), o bien null
si no quiere usarse un filtro de evento.
Delegado de acción que recibe la actividad afectada por un evento externo y un objeto que representa la solicitud entrante.
Delegado de acción que recibe la actividad afectada por un evento externo y un objeto que representa la solicitud saliente.
Devoluciones
Referencia a una interfaz que permite a los clientes de escucha dejar de recibir notificaciones antes de que el elemento DiagnosticSource haya terminado de enviarlas.
Comentarios
Si isEnabled
no es null, se pueden omitir algunos eventos sin interés para mejorar la eficacia.
También puede proporcionar métodos "onActivityImport" y "onActivityExport" a los que se llama cuando los proveedores importan o exportan actividades desde fuera del proceso (por ejemplo, desde solicitudes HTTP). Se llama a estos métodos después de importar o exportar la actividad y se puede usar para modificar la actividad o la solicitud saliente para agregar la directiva.