TraceFilter.ShouldTrace Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
En cas de substitution dans une classe dérivée, détermine si l'écouteur doit tracer l'événement.
public:
abstract bool ShouldTrace(System::Diagnostics::TraceEventCache ^ cache, System::String ^ source, System::Diagnostics::TraceEventType eventType, int id, System::String ^ formatOrMessage, cli::array <System::Object ^> ^ args, System::Object ^ data1, cli::array <System::Object ^> ^ data);
public abstract bool ShouldTrace (System.Diagnostics.TraceEventCache? cache, string source, System.Diagnostics.TraceEventType eventType, int id, string? formatOrMessage, object?[]? args, object? data1, object?[]? data);
public abstract bool ShouldTrace (System.Diagnostics.TraceEventCache cache, string source, System.Diagnostics.TraceEventType eventType, int id, string formatOrMessage, object[] args, object data1, object[] data);
abstract member ShouldTrace : System.Diagnostics.TraceEventCache * string * System.Diagnostics.TraceEventType * int * string * obj[] * obj * obj[] -> bool
Public MustOverride Function ShouldTrace (cache As TraceEventCache, source As String, eventType As TraceEventType, id As Integer, formatOrMessage As String, args As Object(), data1 As Object, data As Object()) As Boolean
Paramètres
- cache
- TraceEventCache
TraceEventCache qui contient des informations pour l'événement de trace.
- source
- String
Nom de la source.
- eventType
- TraceEventType
Une des valeurs de TraceEventType spécifiant le type d'événement qui a déclenché la trace.
- id
- Int32
Numéro d'identification de trace.
- formatOrMessage
- String
Format à utiliser pour écrire un tableau d'arguments spécifié par le paramètre args
, ou un message à écrire.
- args
- Object[]
Tableau d'objets d'argument.
- data1
- Object
Objet des données de trace.
- data
- Object[]
Tableau des objets de données de trace.
Retours
true
pour tracer l'événement spécifié ; sinon, false
.
Exemples
L’exemple de code suivant montre comment remplacer la méthode pour indiquer que le ShouldTrace suivi doit se produire lorsque le type d’événement de trace de l’événement est égal à TraceEventType.Error.
public ref class ErrorFilter : TraceFilter
{
public:
virtual bool ShouldTrace(TraceEventCache^ cache, String^ source,
TraceEventType eventType, int id, String^ formatOrMessage,
array<Object^>^ args, Object^ data, array<Object^>^ dataArray) override
{
return eventType == TraceEventType::Error;
}
};
public class ErrorFilter : TraceFilter
{
override public bool ShouldTrace(TraceEventCache cache, string source,
TraceEventType eventType, int id, string formatOrMessage,
object[] args, object data, object[] dataArray)
{
return eventType == TraceEventType.Error;
}
}
Public Class ErrorFilter
Inherits TraceFilter
Public Overrides Function ShouldTrace ( cache As TraceEventCache, _
source As String, eventType As TraceEventType, _
id As Integer, formatOrMessage As String, _
args As Object(), data As Object, _
dataArray As Object() ) As Boolean
If eventType = TraceEventType.Error Then
Return True
Else
Return False
End If
End Function
End Class
Notes pour les responsables de l’implémentation
Les implémentations de cette méthode doivent être retournées true
si l’événement spécifié par les paramètres passés doit être suivi. Sinon, la méthode doit retourner false
. Par exemple, un filtre qui autorise uniquement les événements d’erreur à passer à l’écouteur doit inspecter le eventType
paramètre et retourner true
si le niveau de type d’événement de trace est défini Error sur ou supérieur ; sinon, il doit retourner false
.
Les implémentations de la méthode doivent être préparées pour être gérées null
dans les paramètres suivants : args
, data1
, data
, formatOrMessage
et cache
. Si la valeur du paramètre est null
, le paramètre ne fait pas partie de l’événement. Par exemple, si le args
paramètre est null
, cela signifie que l’événement n’a pas d’arguments. Si le data
paramètre est null
, il existe un ou aucun objet de données. S’il existe un objet de données, il se trouve dans le data1
paramètre . La raison de la distinction entre un objet de données unique et un tableau d’objets de données tient aux performances. Il n’y a aucune raison de créer un tableau d’objets si un seul objet est suivi, comme c’est normalement le cas. Si le data
paramètre n’est pas null
, le data1
paramètre ne doit pas non plus être null
.
Il est garanti que le source
paramètre n’est pas null
une chaîne vide (« »).
Les implémentations de la méthode peuvent éventuellement lever les exceptions suivantes :
ArgumentNullException, si
source
a la valeurnull
.ArgumentException si
eventType
n’est pas l’une des TraceEventType valeurs.Exceptions non liées à l’implémentation de la méthode. Par exemple, un ThreadAbortException.