EventProvider.WriteEvent Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Scrive un evento.
Overload
WriteEvent(EventDescriptor, Object[]) |
Scrive un evento. I dati dell'evento sono specificati come matrice di oggetti. |
WriteEvent(EventDescriptor, String) |
Scrive un evento. I dati dell'evento vengono specificati come stringa. |
WriteEvent(EventDescriptor, Int32, IntPtr) |
Scrive un evento. I dati dell'evento vengono specificati come blocco di memoria. |
Commenti
Usare questi metodi se si usa un manifesto per definire gli eventi.
WriteEvent(EventDescriptor, Object[])
Scrive un evento. I dati dell'evento sono specificati come matrice di oggetti.
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
Parametri
- eventDescriptor
- EventDescriptor
Istanza di EventDescriptor che identifica l'evento da scrivere.
- eventPayload
- Object[]
Matrice di oggetti che contiene i dati dell'evento da scrivere. L'oggetto deve essere nell'ordine specificato nel manifesto. La matrice è limitata a 32 oggetti dei quali solo otto possono essere stringhe. La dimensione massima dei dati per l'evento è limitata a 64 KB esclusa la dimensione delle intestazioni dell'evento. Se la sessione ha una dimensione del buffer ridotta e include elementi di dati estesi con l'evento, la dimensione dell'evento sarà ridotta.
Questo parametro può essere null.
Restituisce
true
se l'evento viene scritto, in caso contrario false
. Se è false, chiamare il metodo GetLastWriteEventError() per determinare la causa dell'errore.
- Attributi
Eccezioni
Il parametro eventPayload
contiene un numero eccessivo di oggetti o stringhe.
Esempio
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 dal contesto del thread e lo include con l'evento.
Se il tipo di oggetto non è supportato, il metodo scrive il valore del metodo dell'oggetto Object.ToString nel payload. Per un elenco di tipi di oggetti supportati, vedere Le osservazioni per la EventProvider classe.
Si applica a
WriteEvent(EventDescriptor, String)
Scrive un evento. I dati dell'evento vengono specificati come stringa.
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
Parametri
- eventDescriptor
- EventDescriptor
Istanza di EventDescriptor che identifica l'evento da scrivere.
- data
- String
Stringa da scrivere come dati dell'evento.
Restituisce
true
se l'evento viene scritto, in caso contrario false
. Se è false, chiamare il metodo GetLastWriteEventError() per determinare la causa dell'errore.
- Attributi
Eccezioni
Se data
è null
.
Esempio
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 dal contesto del thread e lo include con l'evento.
La lunghezza massima della stringa è limitata a 64 KB meno le dimensioni delle intestazioni dell'evento. Se la sessione ha una dimensione del buffer ridotta e include elementi di dati estesi con l'evento, la dimensione dell'evento sarà ridotta.
Si applica a
WriteEvent(EventDescriptor, Int32, IntPtr)
Scrive un evento. I dati dell'evento vengono specificati come blocco di 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
Parametri
- eventDescriptor
- EventDescriptor
Istanza di EventDescriptor che identifica l'evento da scrivere.
- dataCount
- Int32
Dimensione dei dati dell'evento a cui punta il parametro data
. La dimensione massima dei dati dell'evento è limitata a 64 KB esclusa la dimensione delle intestazioni dell'evento. Se la sessione ha una dimensione del buffer ridotta e include elementi di dati estesi con l'evento, la dimensione dell'evento sarà ridotta.
- data
-
IntPtr
nativeint
Puntatore ai dati dell'evento da scrivere.
Restituisce
true
se l'evento viene scritto, in caso contrario false
. Se è false, chiamare il metodo GetLastWriteEventError() per determinare la causa dell'errore.
- Attributi
Commenti
Se si chiama il SetActivityId metodo per specificare un identificatore di attività per l'evento, questo metodo recupera l'identificatore dal contesto del thread e lo include con l'evento.