EventProvider.WriteEvent Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menulis peristiwa.
Overload
WriteEvent(EventDescriptor, Object[]) |
Menulis peristiwa. Data peristiwa ditentukan sebagai array objek. |
WriteEvent(EventDescriptor, String) |
Menulis peristiwa. Data peristiwa ditentukan sebagai string. |
WriteEvent(EventDescriptor, Int32, IntPtr) |
Menulis peristiwa. Data peristiwa ditentukan sebagai blok memori. |
Keterangan
Gunakan metode ini jika Anda menggunakan manifes untuk menentukan peristiwa Anda.
WriteEvent(EventDescriptor, Object[])
Menulis peristiwa. Data peristiwa ditentukan sebagai array objek.
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
Parameter
- eventDescriptor
- EventDescriptor
Instans EventDescriptor yang mengidentifikasi peristiwa yang akan ditulis.
- eventPayload
- Object[]
Array objek yang berisi data peristiwa untuk ditulis. Objek harus dalam urutan yang ditentukan dalam manifes. Array dibatasi hingga 32 objek, di mana hanya delapan yang mungkin berupa string. Ukuran data maksimum untuk peristiwa dibatasi hingga 64 KB dikurangi ukuran header peristiwa. Ukuran peristiwa lebih kecil jika ukuran buffer sesi kurang dan sesi menyertakan item data yang diperluas dengan peristiwa tersebut.
Parameter ini dapat berupa null.
Mengembalikan
Apakah true
jika peristiwa ditulis; jika tidak, false
. Jika false, panggil GetLastWriteEventError() metode untuk menentukan penyebab kegagalan.
- Atribut
Pengecualian
Parameter eventPayload
berisi terlalu banyak objek atau string.
Contoh
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();
Keterangan
Jika Anda memanggil SetActivityId metode untuk menentukan pengidentifikasi aktivitas untuk peristiwa tersebut, metode ini mengambil pengidentifikasi dari konteks utas dan menyertakannya dengan peristiwa.
Jika jenis objek tidak didukung, metode menulis nilai metode objek Object.ToString dalam payload. Untuk daftar jenis objek yang didukung, lihat Keterangan untuk EventProvider kelas .
Berlaku untuk
WriteEvent(EventDescriptor, String)
Menulis peristiwa. Data peristiwa ditentukan sebagai 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);
[<System.Security.SecurityCritical>]
member this.WriteEvent : EventDescriptor * string -> bool
Public Function WriteEvent (ByRef eventDescriptor As EventDescriptor, data As String) As Boolean
Parameter
- eventDescriptor
- EventDescriptor
Instans EventDescriptor yang mengidentifikasi peristiwa yang akan ditulis.
- data
- String
String yang akan ditulis sebagai data peristiwa.
Mengembalikan
Apakah true
jika peristiwa ditulis; jika tidak, false
. Jika false, panggil GetLastWriteEventError() metode untuk menentukan penyebab kegagalan.
- Atribut
Pengecualian
Jika data
adalah null
.
Contoh
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();
Keterangan
Jika Anda memanggil SetActivityId metode untuk menentukan pengidentifikasi aktivitas untuk peristiwa tersebut, metode ini mengambil pengidentifikasi dari konteks utas dan menyertakannya dengan peristiwa.
Panjang string maksimum dibatasi hingga 64 KB dikurangi ukuran header peristiwa. Ukuran peristiwa lebih kecil jika ukuran buffer sesi kurang dan sesi menyertakan item data yang diperluas dengan peristiwa tersebut.
Berlaku untuk
WriteEvent(EventDescriptor, Int32, IntPtr)
Menulis peristiwa. Data peristiwa ditentukan sebagai blok memori.
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
Parameter
- eventDescriptor
- EventDescriptor
Instans EventDescriptor yang mengidentifikasi peristiwa yang akan ditulis.
- dataCount
- Int32
Ukuran data peristiwa tempat parameter menunjuk data
. Ukuran data peristiwa maksimum dibatasi hingga 64 KB dikurangi ukuran header peristiwa. Ukuran peristiwa lebih kecil jika ukuran buffer sesi kurang dan sesi menyertakan item data yang diperluas dengan peristiwa tersebut.
- data
-
IntPtr
nativeint
Arahkan ke data peristiwa untuk ditulis.
Mengembalikan
Apakah true
jika peristiwa ditulis; jika tidak, false
. Jika false, panggil GetLastWriteEventError() metode untuk menentukan penyebab kegagalan.
- Atribut
Keterangan
Jika Anda memanggil SetActivityId metode untuk menentukan pengidentifikasi aktivitas untuk peristiwa tersebut, metode ini mengambil pengidentifikasi dari konteks utas dan menyertakannya dengan peristiwa.
Berlaku untuk
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk