EventProvider.WriteEvent Méthode

Définition

Écrit un événement.

Surcharges

WriteEvent(EventDescriptor, Object[])

Écrit un événement. Les données d'événement sont spécifiées comme un tableau d'objets.

WriteEvent(EventDescriptor, String)

Écrit un événement. Les données de l'événement sont spécifiées comme une chaîne.

WriteEvent(EventDescriptor, Int32, IntPtr)

Écrit un événement. Les données de l'événement sont spécifiées comme un bloc de mémoire.

Remarques

Utilisez ces méthodes si vous utilisez un manifeste pour définir vos événements.

WriteEvent(EventDescriptor, Object[])

Écrit un événement. Les données d'événement sont spécifiées comme un tableau d'objets.

public:
 bool WriteEvent(System::Diagnostics::Eventing::EventDescriptor % eventDescriptor, ... cli::array <System::Object ^> ^ eventPayload);
[System.Security.SecurityCritical]
public bool WriteEvent (ref System.Diagnostics.Eventing.EventDescriptor eventDescriptor, params object[] eventPayload);
public bool WriteEvent (ref System.Diagnostics.Eventing.EventDescriptor eventDescriptor, params object[] eventPayload);
[<System.Security.SecurityCritical>]
member this.WriteEvent : EventDescriptor * obj[] -> bool
member this.WriteEvent : EventDescriptor * obj[] -> bool
Public Function WriteEvent (ByRef eventDescriptor As EventDescriptor, ParamArray eventPayload As Object()) As Boolean

Paramètres

eventDescriptor
EventDescriptor

Instance de EventDescriptor qui identifie l'événement à écrire.

eventPayload
Object[]

Tableau d'objets qui contient les données d'événement à écrire. L'objet doit être dans l'ordre spécifié dans le manifeste. Le tableau est limité à 32 objets, dont huit seulement peuvent être des chaînes. La taille maximale des données pour l'événement est limitée à 64 Ko, moins la taille des en-têtes de l'événement. La taille de l'événement est inférieure si la taille de la mémoire tampon de la session est inférieure et si la session inclut des éléments de données étendus à l'événement.

Ce paramètre peut avoir la valeur Null.

Retours

A la valeur true si l'événement est écrit ; sinon, false. Si la valeur est « false », appelez la méthode GetLastWriteEventError() pour déterminer la cause de l'échec.

Attributs

Exceptions

Le paramètre eventPayload contient trop d'objets ou chaînes.

Exemples

private static Guid providerId = new Guid("{FB33FDA8-45FB-4df0-8A55-EEB4BA88E7E7}");  

enum Keyword  
{  
    Read = 0x1,  
    Write = 0x2,  
    Local = 0x4,  
    Remote = 0x8  
}  

enum Level  
{  
    Critical = 1,  
    Error,  
    Warning,  
    Information,  
    Verbose  
}  

    EventProvider provider = new EventProvider(providerId);  
    EventDescriptor readEvent;  
    string path = @"<PATHGOESHERE>";  
    UInt64 bytesRead = <ASSIGNVALUE>;  

    if (provider.IsEnabled(Level.Information, (long)Keyword.Read))  
    {  
        unchecked  
        {  
            readEvent = new EventDescriptor(0x1, 0x0, 0x10, 0x4, 0x0, 0x0, (long)0x8000000000000005);  
        }  

        if (!provider.WriteEvent(ref readEvent, new object[] { path, bytesRead }))  
            Console.WriteLine(EventProvider.GetLastWriteEventError());  
    }  

    provider.Close();  

Remarques

Si vous appelez la SetActivityId méthode pour spécifier un identificateur d’activité pour l’événement, cette méthode récupère l’identificateur du contexte de thread et l’inclut avec l’événement.

Si le type d’objet n’est pas pris en charge, la méthode écrit la valeur de la méthode de Object.ToString l’objet dans la charge utile. Pour obtenir la liste des types d’objets pris en charge, consultez Les remarques de la EventProvider classe .

S’applique à

WriteEvent(EventDescriptor, String)

Écrit un événement. Les données de l'événement sont spécifiées comme une chaîne.

public:
 bool WriteEvent(System::Diagnostics::Eventing::EventDescriptor % eventDescriptor, System::String ^ data);
[System.Security.SecurityCritical]
public bool WriteEvent (ref System.Diagnostics.Eventing.EventDescriptor eventDescriptor, string data);
[<System.Security.SecurityCritical>]
member this.WriteEvent : EventDescriptor * string -> bool
Public Function WriteEvent (ByRef eventDescriptor As EventDescriptor, data As String) As Boolean

Paramètres

eventDescriptor
EventDescriptor

Instance de EventDescriptor qui identifie l'événement à écrire.

data
String

Chaîne à écrire en tant que données de l'événement.

Retours

A la valeur true si l'événement est écrit ; sinon, false. Si la valeur est « false », appelez la méthode GetLastWriteEventError() pour déterminer la cause de l'échec.

Attributs

Exceptions

Si data est null.

Exemples

private static Guid providerId = new Guid("{FB33FDA8-45FB-4df0-8A55-EEB4BA88E7E7}");  

EventProvider provider = new EventProvider(providerId);  
EventDescriptor writeEvent;  

if (provider.IsEnabled())  
{  
     unchecked  
     {  
          writeEvent = new EventDescriptor(0x2, 0x0, 0x10, 0x3, 0x0, 0x0, (long)0x8000000000000006);  
     }  

     if (!provider.WriteEvent(ref writeEvent, "Write event."))  
          Console.WriteLine(EventProvider.GetLastWriteEventError());  
}  

provider.Close();  

Remarques

Si vous appelez la SetActivityId méthode pour spécifier un identificateur d’activité pour l’événement, cette méthode récupère l’identificateur du contexte de thread et l’inclut avec l’événement.

La longueur maximale de chaîne est limitée à 64 Ko moins la taille des en-têtes d’événement. La taille de l'événement est inférieure si la taille de la mémoire tampon de la session est inférieure et si la session inclut des éléments de données étendus à l'événement.

S’applique à

WriteEvent(EventDescriptor, Int32, IntPtr)

Écrit un événement. Les données de l'événement sont spécifiées comme un bloc de mémoire.

protected:
 bool WriteEvent(System::Diagnostics::Eventing::EventDescriptor % eventDescriptor, int dataCount, IntPtr data);
[System.Security.SecurityCritical]
protected bool WriteEvent (ref System.Diagnostics.Eventing.EventDescriptor eventDescriptor, int dataCount, IntPtr data);
[<System.Security.SecurityCritical>]
member this.WriteEvent : EventDescriptor * int * nativeint -> bool
Protected Function WriteEvent (ByRef eventDescriptor As EventDescriptor, dataCount As Integer, data As IntPtr) As Boolean

Paramètres

eventDescriptor
EventDescriptor

Instance de EventDescriptor qui identifie l'événement à écrire.

dataCount
Int32

Taille des données de l'événement sur lesquelles le paramètre data pointe. La taille maximale des données de l'événement est limitée à 64 Ko, moins la taille des en-têtes de l'événement. La taille de l'événement est inférieure si la taille de la mémoire tampon de la session est inférieure et si la session inclut des éléments de données étendus à l'événement.

data
IntPtr

nativeint

Pointeur sur les données de l'événement à écrire.

Retours

A la valeur true si l'événement est écrit ; sinon, false. Si la valeur est « false », appelez la méthode GetLastWriteEventError() pour déterminer la cause de l'échec.

Attributs

Remarques

Si vous appelez la SetActivityId méthode pour spécifier un identificateur d’activité pour l’événement, cette méthode récupère l’identificateur du contexte de thread et l’inclut avec l’événement.

S’applique à