EventProvider.WriteEvent EventProvider.WriteEvent EventProvider.WriteEvent EventProvider.WriteEvent Method

Definizione

Scrive un evento.Writes an event.

Overload

WriteEvent(EventDescriptor, Object[]) WriteEvent(EventDescriptor, Object[]) WriteEvent(EventDescriptor, Object[]) WriteEvent(EventDescriptor, Object[])

Scrive un evento.Writes an event. I dati dell'evento sono specificati come matrice di oggetti.The event data is specified as an array of objects.

WriteEvent(EventDescriptor, String) WriteEvent(EventDescriptor, String) WriteEvent(EventDescriptor, String) WriteEvent(EventDescriptor, String)

Scrive un evento.Writes an event. I dati dell'evento vengono specificati come stringa.The event data is specified as a string.

WriteEvent(EventDescriptor, Int32, IntPtr) WriteEvent(EventDescriptor, Int32, IntPtr) WriteEvent(EventDescriptor, Int32, IntPtr) WriteEvent(EventDescriptor, Int32, IntPtr)

Scrive un evento.Writes an event. I dati dell'evento vengono specificati come blocco di memoria.The event data is specified as a block of memory.

Commenti

Se si usa un manifesto per definire gli eventi, usare questi metodi.Use these methods if you use a manifest to define your events.

WriteEvent(EventDescriptor, Object[]) WriteEvent(EventDescriptor, Object[]) WriteEvent(EventDescriptor, Object[]) WriteEvent(EventDescriptor, Object[])

Scrive un evento.Writes an event. I dati dell'evento sono specificati come matrice di oggetti.The event data is specified as an array of objects.

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);
member this.WriteEvent :  * obj[] -> bool
Public Function WriteEvent (ByRef eventDescriptor As EventDescriptor, ParamArray eventPayload As Object()) As Boolean

Parametri

eventDescriptor
EventDescriptor EventDescriptor EventDescriptor EventDescriptor

Istanza di EventDescriptor che identifica l'evento da scrivere.An instance of EventDescriptor that identifies the event to write.

eventPayload
Object[]

Matrice di oggetti che contiene i dati dell'evento da scrivere.An array of objects that contain the event data to write. L'oggetto deve essere nell'ordine specificato nel manifesto.The object must be in the order specified in the manifest. La matrice è limitata a 32 oggetti dei quali solo otto possono essere stringhe.The array is limited to 32 objects, of which only eight may be strings. La dimensione massima dei dati per l'evento è limitata a 64 KB esclusa la dimensione delle intestazioni dell'evento.The maximum data size for the event is limited to 64 KB minus the size of the event headers. Se la sessione ha una dimensione del buffer ridotta e include elementi di dati estesi con l'evento, la dimensione dell'evento sarà ridotta.The event size is less if the session's buffer size is less and the session includes extended data items with the event.

Questo parametro può essere null.This parameter can be null.

Restituisce

true se l'evento viene scritto, in caso contrario false.Is true if the event is written; otherwise, false. Se è false, chiamare il metodo GetLastWriteEventError() per determinare la causa dell'errore.If false, call the GetLastWriteEventError() method to determine the cause of the failure.

Eccezioni

Il parametro eventPayload contiene un numero eccessivo di oggetti o stringhe.The eventPayload parameter contains too many objects or strings.

Esempi

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

Commenti

Se si chiama il SetActivityId metodo per specificare un identificatore di attività per l'evento, questo metodo recupera l'identificatore di contesto del thread e lo include con l'evento.If you call the SetActivityId method to specify an activity identifier for the event, this method retrieves the identifier from the thread context and includes it with the event.

Se il tipo di oggetto non è supportato, il metodo scrive il valore dell'oggetto Object.ToString metodo nel payload.If the object type is not supported, the method writes the value of the object's Object.ToString method in the payload. Per un elenco di tipi di oggetti supportati, vedere la sezione Osservazioni per il EventProvider classe.For a list of supported object types, see the Remarks for the EventProvider class.

WriteEvent(EventDescriptor, String) WriteEvent(EventDescriptor, String) WriteEvent(EventDescriptor, String) WriteEvent(EventDescriptor, String)

Scrive un evento.Writes an event. I dati dell'evento vengono specificati come stringa.The event data is specified as a string.

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);
member this.WriteEvent :  * string -> bool
Public Function WriteEvent (ByRef eventDescriptor As EventDescriptor, data As String) As Boolean

Parametri

eventDescriptor
EventDescriptor EventDescriptor EventDescriptor EventDescriptor

Istanza di EventDescriptor che identifica l'evento da scrivere.An instance of EventDescriptor that identifies the event to write.

data
String String String String

Stringa da scrivere come dati dell'evento.The string to write as the event data.

Restituisce

true se l'evento viene scritto, in caso contrario false.Is true if the event is written; otherwise, false. Se è false, chiamare il metodo GetLastWriteEventError() per determinare la causa dell'errore.If false, call the GetLastWriteEventError() method to determine the cause of the failure.

Eccezioni

Esempi

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

Commenti

Se si chiama il SetActivityId metodo per specificare un identificatore di attività per l'evento, questo metodo recupera l'identificatore di contesto del thread e lo include con l'evento.If you call the SetActivityId method to specify an activity identifier for the event, this method retrieves the identifier from the thread context and includes it with the event.

La lunghezza massima della stringa è limitata a 64 KB esclusa la dimensione delle intestazioni dell'evento.The maximum string length is limited to 64 KB minus the size of the event headers. Se la sessione ha una dimensione del buffer ridotta e include elementi di dati estesi con l'evento, la dimensione dell'evento sarà ridotta.The event size is less if the session's buffer size is less and the session includes extended data items with the event.

WriteEvent(EventDescriptor, Int32, IntPtr) WriteEvent(EventDescriptor, Int32, IntPtr) WriteEvent(EventDescriptor, Int32, IntPtr) WriteEvent(EventDescriptor, Int32, IntPtr)

Scrive un evento.Writes an event. I dati dell'evento vengono specificati come blocco di memoria.The event data is specified as a block of memory.

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);
member this.WriteEvent :  * int * nativeint -> bool
Protected Function WriteEvent (ByRef eventDescriptor As EventDescriptor, dataCount As Integer, data As IntPtr) As Boolean

Parametri

eventDescriptor
EventDescriptor EventDescriptor EventDescriptor EventDescriptor

Istanza di EventDescriptor che identifica l'evento da scrivere.An instance of EventDescriptor that identifies the event to write.

dataCount
Int32 Int32 Int32 Int32

Dimensione dei dati dell'evento a cui punta il parametro data.Size of the event data to which the data parameter points. La dimensione massima dei dati dell'evento è limitata a 64 KB esclusa la dimensione delle intestazioni dell'evento.The maximum event data size is limited to 64 KB minus the size of the event headers. Se la sessione ha una dimensione del buffer ridotta e include elementi di dati estesi con l'evento, la dimensione dell'evento sarà ridotta.The event size is less if the session's buffer size is less and the session includes extended data items with the event.

data
IntPtr IntPtr IntPtr IntPtr

Puntatore ai dati dell'evento da scrivere.Pointer to the event data to write.

Restituisce

true se l'evento viene scritto, in caso contrario false.Is true if the event is written; otherwise, false. Se è false, chiamare il metodo GetLastWriteEventError() per determinare la causa dell'errore.If false, call the GetLastWriteEventError() method to determine the cause of the failure.

Commenti

Se si chiama il SetActivityId metodo per specificare un identificatore di attività per l'evento, questo metodo recupera l'identificatore di contesto del thread e lo include con l'evento.If you call the SetActivityId method to specify an activity identifier for the event, this method retrieves the identifier from the thread context and includes it with the event.

Si applica a