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

Определение

Записывает событие.Writes an event.

Перегрузки

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

Записывает событие.Writes an event. Данные события указываются в виде массива объектов.The event data is specified as an array of objects.

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

Записывает событие.Writes an event. Данные события указаны в виде строки.The event data is specified as a string.

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

Записывает событие.Writes an event. Данные события указаны в качестве блока памяти.The event data is specified as a block of memory.

Комментарии

Эти методы можно используйте, если вы используете манифест для определения событий.Use these methods if you use a manifest to define your events.

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

Записывает событие.Writes an event. Данные события указываются в виде массива объектов.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

Параметры

eventDescriptor
EventDescriptor EventDescriptor EventDescriptor EventDescriptor

Экземпляр EventDescriptor, определяющий событие для записи.An instance of EventDescriptor that identifies the event to write.

eventPayload
Object[]

Массив объектов, которые содержат данные записываемого события.An array of objects that contain the event data to write. Объекты должны быть в том порядке, который указан в манифесте.The object must be in the order specified in the manifest. Размер массива ограничен 32 объектами, из которых только 8 могут быть строчными.The array is limited to 32 objects, of which only eight may be strings. Максимальный размер данных события ограничен 64 КБ за вычетом размера заголовков события.The maximum data size for the event is limited to 64 KB minus the size of the event headers. Размер события может быть меньше, если меньше размер буфера сеанса и сеанс включает вместе c событием расширенные элементы данных.The event size is less if the session's buffer size is less and the session includes extended data items with the event.

Этот параметр может быть нулевым.This parameter can be null.

Возвраты

Значение true, если событие записано, в противном случае — false.Is true if the event is written; otherwise, false. Если событие не записано, для определения причины сбоя можно использовать метод GetLastWriteEventError().If false, call the GetLastWriteEventError() method to determine the cause of the failure.

Исключения

Параметр eventPayload содержит слишком много объектов или строк.The eventPayload parameter contains too many objects or strings.

Примеры

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

Комментарии

При вызове метода SetActivityId метод, чтобы задать идентификатор действия для этого события, этот метод извлекает идентификатор из контекст потока и включает его с событием.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.

Если тип объекта не поддерживается, метод записывает значение объекта Object.ToString метод в полезных данных.If the object type is not supported, the method writes the value of the object's Object.ToString method in the payload. Список поддерживаемых типов объектов, см. в разделе "Примечания" для EventProvider класса.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)

Записывает событие.Writes an event. Данные события указаны в виде строки.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

Параметры

eventDescriptor
EventDescriptor EventDescriptor EventDescriptor EventDescriptor

Экземпляр EventDescriptor, определяющий событие для записи.An instance of EventDescriptor that identifies the event to write.

data
String String String String

Строка для записи в качестве данных события.The string to write as the event data.

Возвраты

Значение true, если событие записано, в противном случае — false.Is true if the event is written; otherwise, false. Если событие не записано, для определения причины сбоя можно использовать метод GetLastWriteEventError().If false, call the GetLastWriteEventError() method to determine the cause of the failure.

Исключения

Если data имеет значение null.If data is null.

Примеры

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

Комментарии

При вызове метода SetActivityId метод, чтобы задать идентификатор действия для этого события, этот метод извлекает идентификатор из контекст потока и включает его с событием.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.

Максимальная длина строки ограничен 64 КБ за вычетом размера заголовков события.The maximum string length is limited to 64 KB minus the size of the event headers. Размер события может быть меньше, если меньше размер буфера сеанса и сеанс включает вместе c событием расширенные элементы данных.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)

Записывает событие.Writes an event. Данные события указаны в качестве блока памяти.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

Параметры

eventDescriptor
EventDescriptor EventDescriptor EventDescriptor EventDescriptor

Экземпляр EventDescriptor, определяющий событие для записи.An instance of EventDescriptor that identifies the event to write.

dataCount
Int32 Int32 Int32 Int32

Размер данных события, на которые указывает параметр data.Size of the event data to which the data parameter points. Максимальный размер данных события ограничен 64 КБ за вычетом размера заголовков события.The maximum event data size is limited to 64 KB minus the size of the event headers. Размер события может быть меньше, если меньше размер буфера сеанса и сеанс включает вместе c событием расширенные элементы данных.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

Указатель на данные события для записи.Pointer to the event data to write.

Возвраты

Значение true, если событие записано, в противном случае — false.Is true if the event is written; otherwise, false. Если событие не записано, для определения причины сбоя можно использовать метод GetLastWriteEventError().If false, call the GetLastWriteEventError() method to determine the cause of the failure.

Комментарии

При вызове метода SetActivityId метод, чтобы задать идентификатор действия для этого события, этот метод извлекает идентификатор из контекст потока и включает его с событием.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.

Применяется к