EventProvider.WriteEvent Metod

Definition

Skriver en händelse.

Överlagringar

Name Description
WriteEvent(EventDescriptor, Object[])

Skriver en händelse. Händelsedata anges som en matris med objekt.

WriteEvent(EventDescriptor, String)

Skriver en händelse. Händelsedata anges som en sträng.

WriteEvent(EventDescriptor, Int32, IntPtr)

Skriver en händelse. Händelsedata anges som ett minnesblock.

Kommentarer

Använd dessa metoder om du använder ett manifest för att definiera dina händelser.

WriteEvent(EventDescriptor, Object[])

Skriver en händelse. Händelsedata anges som en matris med 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

Parametrar

eventDescriptor
EventDescriptor

En instans av EventDescriptor som identifierar händelsen som ska skrivas.

eventPayload
Object[]

En matris med objekt som innehåller de händelsedata som ska skrivas. Objektet måste vara i den ordning som anges i manifestet. Matrisen är begränsad till 32 objekt, varav endast åtta kan vara strängar. Den maximala datastorleken för händelsen är begränsad till 64 KB minus storleken på händelserubrikerna. Händelsestorleken är mindre om sessionens buffertstorlek är mindre och sessionen innehåller utökade dataobjekt med händelsen.

Den här parametern kan vara null.

Returer

Är true om händelsen skrivs, annars . false Om det är falskt anropar du GetLastWriteEventError() metoden för att fastställa orsaken till felet.

Attribut

Undantag

Parametern eventPayload innehåller för många objekt eller strängar.

Exempel

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

Kommentarer

Om du anropar SetActivityId metoden för att ange en aktivitetsidentifierare för händelsen hämtar den här metoden identifieraren från trådkontexten och inkluderar den med händelsen.

Om objekttypen inte stöds skriver metoden värdet för objektets Object.ToString metod i nyttolasten. En lista över objekttyper som stöds finns i EventProvider Anmärkningar för klassen.

Gäller för

WriteEvent(EventDescriptor, String)

Skriver en händelse. Händelsedata anges som en sträng.

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

Parametrar

eventDescriptor
EventDescriptor

En instans av EventDescriptor som identifierar händelsen som ska skrivas.

data
String

Strängen som ska skrivas som händelsedata.

Returer

Är true om händelsen skrivs, annars . false Om det är falskt anropar du GetLastWriteEventError() metoden för att fastställa orsaken till felet.

Attribut

Undantag

Om data är null.

Exempel

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

Kommentarer

Om du anropar SetActivityId metoden för att ange en aktivitetsidentifierare för händelsen hämtar den här metoden identifieraren från trådkontexten och inkluderar den med händelsen.

Den maximala stränglängden är begränsad till 64 kB minus storleken på händelserubrikerna. Händelsestorleken är mindre om sessionens buffertstorlek är mindre och sessionen innehåller utökade dataobjekt med händelsen.

Gäller för

WriteEvent(EventDescriptor, Int32, IntPtr)

Skriver en händelse. Händelsedata anges som ett minnesblock.

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

Parametrar

eventDescriptor
EventDescriptor

En instans av EventDescriptor som identifierar händelsen som ska skrivas.

dataCount
Int32

Storleken på de händelsedata som parametern pekar på data . Den maximala händelsedatastorleken är begränsad till 64 KB minus storleken på händelserubrikerna. Händelsestorleken är mindre om sessionens buffertstorlek är mindre och sessionen innehåller utökade dataobjekt med händelsen.

data
IntPtr

nativeint

Pekare till de händelsedata som ska skrivas.

Returer

Är true om händelsen skrivs, annars . false Om det är falskt anropar du GetLastWriteEventError() metoden för att fastställa orsaken till felet.

Attribut

Kommentarer

Om du anropar SetActivityId metoden för att ange en aktivitetsidentifierare för händelsen hämtar den här metoden identifieraren från trådkontexten och inkluderar den med händelsen.

Gäller för