EventProvider.WriteEvent Método

Definición

Escribe un evento.

Sobrecargas

WriteEvent(EventDescriptor, Object[])

Escribe un evento. Los datos de evento se especifican como una matriz de objetos.

WriteEvent(EventDescriptor, String)

Escribe un evento. Los datos del evento se especifican como una cadena.

WriteEvent(EventDescriptor, Int32, IntPtr)

Escribe un evento. Los datos del evento se especifican como un bloque de memoria.

Comentarios

Use estos métodos si usa un manifiesto para definir los eventos.

WriteEvent(EventDescriptor, Object[])

Escribe un evento. Los datos de evento se especifican como una matriz de objetos.

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

Parámetros

eventDescriptor
EventDescriptor

Instancia de EventDescriptor que identifica el evento que se va a escribir.

eventPayload
Object[]

Matriz de objetos que contiene los datos del evento que se va a escribir. El objeto debe estar en el orden especificado en el manifiesto. La matriz se limita a 32 objetos, de los que sólo ocho pueden ser cadenas. El tamaño de datos máximo del evento se limita a 64 KB menos el tamaño de los encabezados de evento. El tamaño del evento será menor si el tamaño de búfer de la sesión es menor y la sesión incluye elementos de datos extendidos con el evento.

Este parámetro puede ser NULL.

Devoluciones

Es true si se escribe el evento; de lo contrario, es false. Si su valor es false, llame al método GetLastWriteEventError() para determinar la causa del error.

Atributos

Excepciones

El parámetro eventPayload contiene demasiados objetos o cadenas.

Ejemplos

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();  

Comentarios

Si llama al SetActivityId método para especificar un identificador de actividad para el evento, este método recupera el identificador del contexto del subproceso e lo incluye con el evento .

Si no se admite el tipo de objeto, el método escribe el valor del método del Object.ToString objeto en la carga útil. Para obtener una lista de los tipos de objeto admitidos, vea los comentarios de la EventProvider clase .

Se aplica a

WriteEvent(EventDescriptor, String)

Escribe un evento. Los datos del evento se especifican como una cadena.

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

Parámetros

eventDescriptor
EventDescriptor

Instancia de EventDescriptor que identifica el evento que se va a escribir.

data
String

Cadena que se va a escribir como los datos del evento.

Devoluciones

Es true si se escribe el evento; de lo contrario, es false. Si su valor es false, llame al método GetLastWriteEventError() para determinar la causa del error.

Atributos

Excepciones

Si data es null.

Ejemplos

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();  

Comentarios

Si llama al SetActivityId método para especificar un identificador de actividad para el evento, este método recupera el identificador del contexto del subproceso e lo incluye con el evento .

La longitud máxima de la cadena se limita a 64 KB menos el tamaño de los encabezados de evento. El tamaño del evento será menor si el tamaño de búfer de la sesión es menor y la sesión incluye elementos de datos extendidos con el evento.

Se aplica a

WriteEvent(EventDescriptor, Int32, IntPtr)

Escribe un evento. Los datos del evento se especifican como un bloque de memoria.

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

Parámetros

eventDescriptor
EventDescriptor

Instancia de EventDescriptor que identifica el evento que se va a escribir.

dataCount
Int32

Tamaño de los datos del evento a los que apunta el parámetro data. El tamaño de datos máximo del evento se limita a 64 KB menos el tamaño de los encabezados de evento. El tamaño del evento será menor si el tamaño de búfer de la sesión es menor y la sesión incluye elementos de datos extendidos con el evento.

data
IntPtr

nativeint

Puntero a los datos del evento que se va escribir.

Devoluciones

Es true si se escribe el evento; de lo contrario, es false. Si su valor es false, llame al método GetLastWriteEventError() para determinar la causa del error.

Atributos

Comentarios

Si llama al SetActivityId método para especificar un identificador de actividad para el evento, este método recupera el identificador del contexto del subproceso e lo incluye con el evento .

Se aplica a