Sdílet prostřednictvím


EventProvider.WriteEvent Metoda

Definice

Zapíše událost.

Přetížení

WriteEvent(EventDescriptor, Object[])

Zapíše událost. Data události jsou určena jako pole objektů.

WriteEvent(EventDescriptor, String)

Zapíše událost. Data události se zadává jako řetězec.

WriteEvent(EventDescriptor, Int32, IntPtr)

Zapíše událost. Data události jsou určena jako blok paměti.

Poznámky

Tyto metody použijte, pokud k definování událostí používáte manifest.

WriteEvent(EventDescriptor, Object[])

Zapíše událost. Data události jsou určena jako pole objektů.

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

Parametry

eventDescriptor
EventDescriptor

Instance EventDescriptor , která identifikuje událost k zápisu.

eventPayload
Object[]

Pole objektů, které obsahují data události k zápisu. Objekt musí být v pořadí určeném v manifestu. Pole je omezeno na 32 objektů, z nichž pouze osm může být řetězce. Maximální velikost dat pro událost je omezená na 64 kB minus velikost hlaviček událostí. Velikost události je menší, pokud je velikost vyrovnávací paměti relace menší a relace zahrnuje rozšířené datové položky s událostí.

Tento parametr může mít hodnotu null.

Návraty

Je true , pokud je událost zapsána, jinak hodnota false. Pokud je false, zavolejte metodu GetLastWriteEventError() a určete příčinu selhání.

Atributy

Výjimky

Parametr eventPayload obsahuje příliš mnoho objektů nebo řetězců.

Příklady

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

Poznámky

Pokud zavoláte metodu SetActivityId k určení identifikátoru aktivity pro událost, tato metoda načte identifikátor z kontextu vlákna a zahrne ho s událostí.

Pokud typ objektu není podporován, metoda zapíše hodnotu metody objektu Object.ToString do datové části. Seznam podporovaných typů objektů naleznete v poznámkách pro EventProvider třídu.

Platí pro

WriteEvent(EventDescriptor, String)

Zapíše událost. Data události se zadává jako řetězec.

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

Parametry

eventDescriptor
EventDescriptor

Instance EventDescriptor , která identifikuje událost k zápisu.

data
String

Řetězec, který se má zapsat jako data události.

Návraty

Je true , pokud je událost zapsána, jinak hodnota false. Pokud je false, zavolejte metodu GetLastWriteEventError() a určete příčinu selhání.

Atributy

Výjimky

Pokud data je null.

Příklady

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

Poznámky

Pokud zavoláte metodu SetActivityId k určení identifikátoru aktivity pro událost, tato metoda načte identifikátor z kontextu vlákna a zahrne ho s událostí.

Maximální délka řetězce je omezená na 64 kB minus velikost hlaviček událostí. Velikost události je menší, pokud je velikost vyrovnávací paměti relace menší a relace zahrnuje rozšířené datové položky s událostí.

Platí pro

WriteEvent(EventDescriptor, Int32, IntPtr)

Zapíše událost. Data události jsou určena jako blok paměti.

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

Parametry

eventDescriptor
EventDescriptor

Instance EventDescriptor , která identifikuje událost k zápisu.

dataCount
Int32

Velikost dat události, na která data parametr odkazuje. Maximální velikost dat události je omezená na 64 kB minus velikost hlaviček událostí. Velikost události je menší, pokud je velikost vyrovnávací paměti relace menší a relace zahrnuje rozšířené datové položky s událostí.

data
IntPtr

nativeint

Ukazatel na data události, která se mají zapsat.

Návraty

Je true , pokud je událost zapsána, jinak hodnota false. Pokud je false, zavolejte metodu GetLastWriteEventError() a určete příčinu selhání.

Atributy

Poznámky

Pokud zavoláte metodu SetActivityId k určení identifikátoru aktivity pro událost, tato metoda načte identifikátor z kontextu vlákna a zahrne ho s událostí.

Platí pro