EventProvider.WriteEvent Método

Definición

Escribe un evento.

Sobrecargas

Nombre Description
WriteEvent(EventDescriptor, Object[])

Escribe un evento. Los datos del 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 del 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 contienen los datos de evento que se van a escribir. El objeto debe estar en el orden especificado en el manifiesto. La matriz está limitada a 32 objetos, de los cuales solo ocho pueden ser cadenas. El tamaño máximo de datos del evento se limita a 64 KB menos el tamaño de los encabezados de evento. El tamaño del evento es menor si el tamaño del 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, falsees . Si es false, llame al GetLastWriteEventError() método para determinar la causa del error.

Atributos

Excepciones

El eventPayload parámetro 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. 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, falsees . Si es false, llame al GetLastWriteEventError() método 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 cadena se limita a 64 KB menos el tamaño de los encabezados de evento. El tamaño del evento es menor si el tamaño del 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 de evento a los que apunta el data parámetro. El tamaño máximo de los datos de evento se limita a 64 KB menos el tamaño de los encabezados de evento. El tamaño del evento es menor si el tamaño del 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 van a escribir.

Devoluciones

Es true si se escribe el evento; de lo contrario, falsees . Si es false, llame al GetLastWriteEventError() método 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