Partager via


DiagnosticListener.Subscribe Méthode

Définition

Ces méthodes permettent d’ajouter un abonné, et certaines d’entre elles fournissent des méthodes de filtrage d’événements facultatives.

Surcharges

Subscribe(IObserver<KeyValuePair<String,Object>>)

Ajoute un abonné.

Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>)

Ajoute un abonné et filtre éventuellement les événements en fonction de leur nom et jusqu’à deux objets de contexte.

Subscribe(IObserver<KeyValuePair<String,Object>>, Predicate<String>)

Ajoute un abonné et filtre éventuellement les événements en fonction de leur nom.

Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>, Action<Activity,Object>, Action<Activity,Object>)

Ajoute un abonné, filtre éventuellement les événements en fonction de leur nom et jusqu’à deux objets de contexte et spécifie des méthodes à appeler lorsque les fournisseurs importent ou exportent des activites en dehors du processus.

Subscribe(IObserver<KeyValuePair<String,Object>>)

Source:
DiagnosticListener.cs
Source:
DiagnosticListener.cs
Source:
DiagnosticListener.cs

Ajoute un abonné.

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

Paramètres

observer
IObserver<KeyValuePair<String,Object>>

Abonné.

Retours

Référence à une interface qui permet à l’écouteur d’arrêter de recevoir des notifications avant que le DiagnosticSource ne les envoie.

Implémente

S’applique à

Subscribe(IObserver<KeyValuePair<String,Object>>, Func<String,Object,Object,Boolean>)

Source:
DiagnosticListener.cs
Source:
DiagnosticListener.cs
Source:
DiagnosticListener.cs

Ajoute un abonné et filtre éventuellement les événements en fonction de leur nom et jusqu’à deux objets de contexte.

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

Paramètres

observer
IObserver<KeyValuePair<String,Object>>

Abonné.

isEnabled
Func<String,Object,Object,Boolean>

Délégué qui filtre les événements en fonction de leur nom et jusqu’à deux objets de contexte (qui peuvent être null), ou null si un filtre d’événements n’est pas souhaitable.

Retours

Référence à une interface qui permet à l’écouteur d’arrêter de recevoir des notifications avant que le DiagnosticSource ne les envoie.

Remarques

Si isEnabled n’est pas null, il indique que certains événements ne sont pas inintéressants peuvent être ignorés pour une efficacité.

Un site d’instrumentation particulier a la possibilité d’appeler une ou plusieurs surcharges IsEnabled dans lesquelles il passe le nom de l’événement et jusqu’à deux autres objets (spécifiques au site d’instrumentation) en tant qu’arguments. Si l’un de ces appels IsEnabled est effectué, ce prédicat isEnabled est appelé avec des valeurs passées (si des surcharges plus courtes sont utilisées, null est passée pour les objets de contexte manquants).

Cela permet à tout site d’instrumentation particulier de transmettre jusqu’à deux informations à l’abonné pour effectuer un filtrage sophistiqué et efficace. Cela nécessite davantage de couplage entre le site d’instrumentation et le code de l’abonné.

On s’attend à ce qu’un site d’instrumentation particulier appelle des surcharges différentes de IsEnabled pour le même événement, tout d’abord en appelant IsEnabled(String), qui appelle le filtre avec deux objets de contexte null. Si isEnabled retourne true, il appelle à nouveau avec des objets de contexte. Le filtre isEnabled doit être conçu à l’esprit.

Notez que le prédicat isEnabled est une optimisation facultative pour permettre au site d’instrumentation d’éviter de configurer la charge utile et d’appeler Write(String, Object) lorsqu’aucun abonné ne s’en soucie. En particulier, le site d’instrumentation a la possibilité d’ignorer le prédicat IsEnabled (pas l’appeler) et d’appeler simplement Write(String, Object). Par conséquent, si l’abonné requiert le filtrage, il doit le faire lui-même.

Si ce paramètre est null, aucun filtrage n’est effectué (toutes les surcharges de IsEnabled retournent true).

S’applique à

Subscribe(IObserver<KeyValuePair<String,Object>>, Predicate<String>)

Source:
DiagnosticListener.cs
Source:
DiagnosticListener.cs
Source:
DiagnosticListener.cs

Ajoute un abonné et filtre éventuellement les événements en fonction de leur nom.

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

Paramètres

observer
IObserver<KeyValuePair<String,Object>>

Abonné.

isEnabled
Predicate<String>

Délégué qui filtre les événements en fonction de leur nom (String). Le délégué doit retourner true si l’événement est activé.

Retours

Référence à une interface qui permet à l’écouteur d’arrêter de recevoir des notifications avant que le DiagnosticSource ne les envoie.

Remarques

Si isEnabled n’est pas null, certains événements ne sont pas inintéressants et peuvent être ignorés pour une efficacité. Le prédicat isEnabled est une optimisation facultative pour permettre au site d’instrumentation d’éviter de configurer la charge utile et d’appeler Write(String, Object) lorsqu’aucun abonné ne s’en soucie. En particulier, le site d’instrumentation a la possibilité d’ignorer le prédicat IsEnabled() (pas l’appeler) et d’appeler simplement Write(String, Object). Ainsi, si l’abonné requiert le filtrage, il doit le faire lui-même.

Si isEnabled est null, aucun filtrage n’est effectué (toutes les surcharges de IsEnabled retour true).

S’applique à

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

Ajoute un abonné, filtre éventuellement les événements en fonction de leur nom et jusqu’à deux objets de contexte et spécifie des méthodes à appeler lorsque les fournisseurs importent ou exportent des activites en dehors du processus.

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

Paramètres

observer
IObserver<KeyValuePair<String,Object>>

Abonné.

isEnabled
Func<String,Object,Object,Boolean>

Délégué qui filtre les événements en fonction de leur nom et jusqu’à deux objets de contexte (qui peuvent être null), ou null si un filtre d’événements n’est pas souhaitable.

onActivityImport
Action<Activity,Object>

Délégué d’action qui reçoit l’activité affectée par un événement externe et un objet qui représente la requête entrante.

onActivityExport
Action<Activity,Object>

Délégué d’action qui reçoit l’activité affectée par un événement externe et un objet qui représente la requête sortante.

Retours

Référence à une interface qui permet à l’écouteur d’arrêter de recevoir des notifications avant que le DiagnosticSource ne les envoie.

Remarques

Si isEnabled n’est pas null, certains événements ne sont pas inintéressants peuvent être ignorés pour une efficacité.

Vous pouvez également fournir des méthodes « onActivityImport » et « onActivityExport » appelées lorsque les fournisseurs importent ou exportent des activités en dehors du processus (par exemple, à partir de requêtes HTTP). Ces méthodes sont appelées après l’importation ou l’exportation de l’activité et peuvent être utilisées pour modifier l’activité ou la demande sortante pour ajouter une stratégie.

S’applique à