EventSchemaTraceListener Kelas
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.
Mengarahkan output pelacakan atau penelusuran kesalahan peristiwa end-to-end ke file log yang dikodekan XML dan mematuhi skema.
public ref class EventSchemaTraceListener : System::Diagnostics::TextWriterTraceListener
public class EventSchemaTraceListener : System.Diagnostics.TextWriterTraceListener
type EventSchemaTraceListener = class
inherit TextWriterTraceListener
Public Class EventSchemaTraceListener
Inherits TextWriterTraceListener
- Warisan
Contoh
Contoh kode berikut menunjukkan cara menggunakan EventSchemaTraceListener kelas .
///////////////////////////////////////////////////////////////////////
//
// EventSchemaTraceListener.cpp : main project file.
// Expected Output:
// 1)
// EventSchemaTraceListener CPP Sample
//
// IsThreadSafe? True
// BufferSize = 65536
// MaximumFileSize = 20480000
// MaximumNumberOfFiles = 2
// Name = eventListener
// TraceLogRetentionOption = LimitedCircularFiles
// TraceOutputOptions = DateTime, Timestamp, ProcessId
//
// Press the enter key to exit
//
// 2) An output file is created named TraceOutput.xml. It will be
// opened and displayed in Microsoft Notepad.
//
// NOTE 1:
// Under certain circumstances, the VS C++ compiler will treat
// Console::WriteLine("MyText = " + MyVar);
// differently then the VS CSharp compiler.
// The C++ compiler will produce error C3063, whereas the
// CSharp compiler accepts the statement.
// This occurs when the VS C++ compiler cannot determine the
// datatype of "MyVar" because it is an enumeration type.
// The solution is:
// Use either of the following two methods:
// Console::WriteLine("MyText = {0} " , MyVar);
// Console::WriteLine("MyText = " + MyVar.ToString());
//
// Although not specific to this particular pieces of code,
// this is demonstrated below in the Display function: The
// last two members, TraceLogRetentionOption, and
// TraceOutputOptions, are enumerations, and cannot simply be
// concatenated into Console::WriteLine.
//
///////////////////////////////////////////////////////////////////////
#using <System.dll>
#using <System.Core.dll>
#define NOCONFIGFILE 1
using namespace System;
using namespace System::IO;
using namespace System::Diagnostics;
[STAThreadAttribute]
void main()
{
Console::WriteLine("EventSchemaTraceListener CPP Sample\n");
File::Delete("TraceOutput.xml");
TraceSource ^ ts = gcnew TraceSource("TestSource");
#if NOCONFIGFILE
ts->Listeners->Add(gcnew EventSchemaTraceListener("TraceOutput.xml",
"eventListener", 65536,
TraceLogRetentionOption::LimitedCircularFiles,
20480000, 2));
ts->Listeners["eventListener"]->TraceOutputOptions =
TraceOptions::DateTime |
TraceOptions::ProcessId |
TraceOptions::Timestamp;
#endif
EventSchemaTraceListener ^ ESTL =
(EventSchemaTraceListener^)(ts->Listeners["eventListener"]);
Console::WriteLine("IsThreadSafe? = " + ESTL->IsThreadSafe);
Console::WriteLine("BufferSize = " + ESTL->BufferSize);
Console::WriteLine("MaximumFileSize = " + ESTL->MaximumFileSize);
Console::WriteLine("MaximumNumberOfFiles = " + ESTL->MaximumNumberOfFiles);
Console::WriteLine("Name = " + ESTL->Name);
Console::WriteLine("TraceLogRetentionOption = " + ESTL->TraceLogRetentionOption.ToString());
Console::WriteLine("TraceOutputOptions = {0}\n", ESTL->TraceOutputOptions);
ts->Switch->Level = SourceLevels::All;
String ^ testString = "<Test><InnerElement Val=\"1\" />"
+ "<InnerElement Val=\"Data\"/>"
+ "<AnotherElement>11</AnotherElement></Test>";
UnescapedXmlDiagnosticData ^ unXData = gcnew UnescapedXmlDiagnosticData(testString);
ts->TraceData(TraceEventType::Error, 38, unXData);
ts->TraceEvent(TraceEventType::Error, 38, testString);
ts->Flush();
ts->Close();
Process::Start("notepad.exe", "TraceOutput.xml");
Console::WriteLine("\nPress the enter key to exit");
Console::ReadLine();
}
#define NOCONFIGFILE
using System;
using System.IO;
using System.Xml;
using System.Xml.XPath;
using System.Diagnostics;
class testClass
{
[STAThreadAttribute]
static void Main()
{
File.Delete("TraceOutput.xml");
TraceSource ts = new TraceSource("TestSource");
#if NOCONFIGFILE
//ts.Listeners.Add(new EventSchemaTraceListener("TraceOutput.xml", "eventListener", 65536, TraceLogRetentionOption.LimitedCircularFiles, 20480000, 2));
ts.Listeners.Add(new EventSchemaTraceListener("TraceOutput.xml", "eventListener"));
ts.Listeners["eventListener"].TraceOutputOptions = TraceOptions.DateTime | TraceOptions.ProcessId | TraceOptions.Timestamp;
#endif
ts.Switch.Level = SourceLevels.All;
string testString = "<Test><InnerElement Val=\"1\" /><InnerElement Val=\"Data\"/><AnotherElement>11</AnotherElement></Test>";
UnescapedXmlDiagnosticData unXData = new UnescapedXmlDiagnosticData(testString);
ts.TraceData(TraceEventType.Error, 38, unXData);
ts.TraceEvent(TraceEventType.Error, 38, testString);
Trace.Listeners.Add(new EventSchemaTraceListener("TraceOutput.xml"));
Trace.Write("test", "test");
Trace.Flush();
ts.Flush();
ts.Close();
DisplayProperties(ts);
Process.Start("notepad.exe", "TraceOutput.xml");
Console.WriteLine("Press the enter key to exit");
Console.ReadLine();
}
private static void DisplayProperties(TraceSource ts)
{
Console.WriteLine("IsThreadSafe? " + ((EventSchemaTraceListener)ts.Listeners["eventListener"]).IsThreadSafe);
Console.WriteLine("BufferSize = " + ((EventSchemaTraceListener)ts.Listeners["eventListener"]).BufferSize);
Console.WriteLine("MaximumFileSize = " + ((EventSchemaTraceListener)ts.Listeners["eventListener"]).MaximumFileSize);
Console.WriteLine("MaximumNumberOfFiles = " + ((EventSchemaTraceListener)ts.Listeners["eventListener"]).MaximumNumberOfFiles);
Console.WriteLine("Name = " + ((EventSchemaTraceListener)ts.Listeners["eventListener"]).Name);
Console.WriteLine("TraceLogRetentionOption = " + ((EventSchemaTraceListener)ts.Listeners["eventListener"]).TraceLogRetentionOption);
Console.WriteLine("TraceOutputOptions = " + ((EventSchemaTraceListener)ts.Listeners["eventListener"]).TraceOutputOptions);
}
}
#Const NOCONFIGFILE = True
Imports System.IO
Imports System.Xml
Imports System.Xml.XPath
Imports System.Diagnostics
Class testClass
<STAThreadAttribute()> _
Shared Sub Main()
File.Delete("TraceOutput.xml")
Dim ts As New TraceSource("TestSource")
#If NOCONFIGFILE Then
ts.Listeners.Add(New EventSchemaTraceListener("TraceOutput.xml", "eventListener", 65536, TraceLogRetentionOption.LimitedCircularFiles, 20480000, 2))
ts.Listeners("eventListener").TraceOutputOptions = TraceOptions.DateTime Or TraceOptions.ProcessId Or TraceOptions.Timestamp
#End If
ts.Switch.Level = SourceLevels.All
Dim testString As String = "<Test><InnerElement Val=""1"" /><InnerElement Val=""Data""/><AnotherElement>11</AnotherElement></Test>"
Dim unXData As New UnescapedXmlDiagnosticData(testString)
ts.TraceData(TraceEventType.Error, 38, unXData)
ts.TraceEvent(TraceEventType.Error, 38, testString)
ts.Flush()
ts.Close()
DisplayProperties(ts)
Process.Start("notepad.exe", "TraceOutput.xml")
Console.WriteLine("Press the enter key to exit")
Console.ReadLine()
End Sub
Private Shared Sub DisplayProperties(ByVal ts As TraceSource)
Console.WriteLine("IsThreadSafe? " + CType(ts.Listeners("eventListener"), EventSchemaTraceListener).IsThreadSafe.ToString())
Console.WriteLine("BufferSize = " + CType(ts.Listeners("eventListener"), EventSchemaTraceListener).BufferSize.ToString())
Console.WriteLine("MaximumFileSize = " + CType(ts.Listeners("eventListener"), EventSchemaTraceListener).MaximumFileSize.ToString())
Console.WriteLine("MaximumNumberOfFiles = " + CType(ts.Listeners("eventListener"), EventSchemaTraceListener).MaximumNumberOfFiles.ToString())
Console.WriteLine("Name = " + CType(ts.Listeners("eventListener"), EventSchemaTraceListener).Name)
Console.WriteLine("TraceLogRetentionOption = " + CType(ts.Listeners("eventListener"), EventSchemaTraceListener).TraceLogRetentionOption.ToString())
Console.WriteLine("TraceOutputOptions = " + CType(ts.Listeners("eventListener"), EventSchemaTraceListener).TraceOutputOptions.ToString())
End Sub
End Class
Keterangan
Kelas ini EventSchemaTraceListener menyediakan pelacakan peristiwa yang mematuhi skema end-to-end. Anda dapat menggunakan pelacakan end-to-end untuk sistem yang memiliki komponen heterogen yang melintasi alur, proses AppDomain, dan batas komputer. Skema peristiwa standar memungkinkan pelacakan di seluruh batas ini. Skema ini memungkinkan penambahan elemen kustom yang mematuhi skema. Anda dapat menggunakan Alat Penampil Jejak Layanan (SvcTraceViewer.exe) untuk menampilkan data peristiwa.
EventSchemaTraceListener disetel untuk performa pengelogan dengan dukungan implisit untuk pelacakan bebas kunci.
Kelas EventSchemaTraceListener mengonversi informasi pelacakan dan penelusuran kesalahan menjadi aliran teks yang dikodekan XML. Deskripsi output XML ditampilkan dalam tabel nanti di bagian ini.
Anda dapat membuat EventSchemaTraceListener objek dalam kode Anda. Atau, untuk aplikasi .NET Framework, Anda dapat mengaktifkan atau menonaktifkan EventSchemaTraceListener objek melalui file konfigurasi aplikasi, lalu menggunakan objek yang dikonfigurasi EventSchemaTraceListener di aplikasi Anda. Untuk informasi tentang penggunaan file konfigurasi untuk penelusuran dan penelusuran kesalahan di aplikasi .NET Framework, lihat Skema Pengaturan Pelacakan dan Debug.
Untuk mengonfigurasi EventSchemaTraceListener objek di aplikasi .NET Framework, ubah file konfigurasi yang sesuai dengan nama aplikasi Anda. Dalam file ini, Anda dapat menambahkan, menghapus, atau mengatur properti untuk pendengar. File konfigurasi harus diformat sebagai berikut:
<configuration>
<system.diagnostics>
<sources>
<source name="TestSource" >
<listeners>
<!--Remove the default trace listener for better performance.-->
<remove name="Default"/>
<!--Note: Removing the default trace listener prevents the dialog box
from being displayed for Debug.Fail or Debug.Assert commands that are
executed in user mode.-->
<add name="eventListener"
type="System.Diagnostics.EventSchemaTraceListener, system.core"
initializeData="TraceOutput.xml"
traceOutputOptions="ProcessId, DateTime, Timestamp"
bufferSize="65536"
maximumFileSize="20480000"
logRetentionOption="LimitedCircularFiles"
maximumNumberOfFiles="2"/>
</listeners>
</source>
</sources>
</system.diagnostics>
Kelas EventSchemaTraceListener mewarisi Filter properti dari kelas TraceListenerdasar . Properti Filter memungkinkan tingkat pemfilteran output jejak tambahan di pendengar. Jika filter ada, Trace
metode pendengar jejak memanggil ShouldTrace metode filter untuk menentukan apakah akan memancarkan jejak.
Jika upaya dilakukan untuk menulis ke file yang sedang digunakan atau tidak tersedia, akhiran GUID secara otomatis ditambahkan ke nama file.
Catatan
Metode pendengar dimaksudkan untuk dipanggil dengan metode Debugkelas , Trace, dan TraceSource . Jangan memanggil metode pendengar langsung dari kode aplikasi. Pendengar EventSchemaTraceListener terutama ditujukan untuk digunakan oleh TraceSource kelas .
Tabel berikut ini menjelaskan elemen dan atribut output XML.
Elemen | Atribut | Output | Catatan |
---|---|---|---|
CallStack |
Tidak ada | Tergantung pada keberadaan Callstack bendera di TraceOutputOptions properti . | Karakter khusus seperti > atau < diganti dengan urutan escape. Lihat tabel terjemahan karakter yang lolos di tabel berikutnya. |
Computer |
Tidak ada | Selalu ada. | Elemen ini mewakili nilai MachineName properti . |
Correlation |
ActivityID |
Selalu ada. | Jika ActivityID tidak ditentukan, defaultnya adalah GUID kosong. |
RelatedActivityID |
Tergantung pada keberadaan relatedActivityId parameter dalam Trace panggilan metode. |
Atribut RelatedActivityID sesuai dengan relatedActivityId parameter TraceTransfer metode . |
|
Data |
Tidak ada | Selalu ada. | Elemen ini mewakili input parameter (data ). Satu elemen disediakan untuk setiap objek data. Dalam kasus log peristiwa, Data elemen berisi data XML yang lolos. Dalam kasus log data, Data elemen berisi data yang tidak dilewati. Output log data menggunakan ToString metode objek data yang diteruskan. |
Event |
Tidak ada | Selalu ada. | Elemen ini berisi peristiwa pelacakan. |
EventData |
Tidak ada | Ada untuk log peristiwa. | Elemen ini mewakili input parameter (message , args ). Ini berisi Data elemen dengan data XML yang lolos yang dibuat dengan memanggil TraceEvent metode . |
EventID |
Tidak ada | Selalu ada. | Elemen ini mewakili input parameter (id ). |
Execution |
ProcessID |
Tergantung pada keberadaan ProcessId bendera di TraceOutputOptions properti . | Atribut ProcessID ditentukan dalam TraceEventCache. |
ThreadID |
Ada saat ProcessID ada. |
Atribut ThreadID ditentukan dalam TraceEventCache. |
|
Level |
Tidak ada | Selalu ada. | Elemen ini mewakili input parameter (nilai numerik ).eventType Nilai parameter yang lebih besar dari 255 adalah output sebagai tingkat 8, yang mewakili TraceEventType.Information. Lacak jenis Criticalperistiwa , Error, Warning, Information, dan Verbose masing-masing merupakan output sebagai tingkat 1, 2, 4, 8, dan 10. |
LogicalOperationStack |
Tidak ada | Tergantung pada keberadaan LogicalOperationStack bendera di TraceOutputOptions properti . | Hanya satu operasi logis yang dapat ada. Oleh karena itu, nilai ditulis sebagai LogicalOperation simpul di LogicalOperationStack bawah elemen . |
OpCode |
Tidak ada | Hadir saat Level lebih besar dari 255. |
Elemen ini mewakili jenis peristiwa Pelacakan yang memiliki nilai numerik lebih besar dari 255. Start, , StopSuspend, Resume, atau Transfer adalah output sebagai tingkat masing-masing 1, 2, 4, 8, dan 10. |
Provider |
GUID |
Selalu ada. | Selalu kosong. |
RenderingInfo |
Culture |
Selalu ada. | Atribut ini mewakili string sumber daya untuk jenis peristiwa. Selalu "en-EN\". |
System |
Name |
Selalu ada. | |
TimeCreated |
SystemTime |
Tergantung pada keberadaan DateTime bendera di TraceOutputOptions properti . | Waktu adalah nilai TraceEventCache.DateTime properti . Properti ini dinyatakan sebagai Waktu Universal Terkoordinasi |
TimeStamp |
Tidak ada | Tergantung pada keberadaan Timestamp bendera di TraceOutputOptions properti . | Elemen ini ditentukan dalam TraceEventCache. |
UserData |
Tidak ada | Ada untuk log data. | Elemen ini berisi Data elemen dengan data yang tidak diescaped dan disediakan pengguna dari TraceData metode . |
Tabel berikut ini memperlihatkan karakter yang lolos dalam output XML. Pelepasan terjadi di semua elemen dan atribut kecuali untuk UserData
elemen , yang berisi data yang disediakan pengguna dan tidak dilewati. Elemen UserData
adalah hasil dari panggilan ke TraceData metode .
Karakter escape | Nilai |
---|---|
& | & |
< | < |
> | > |
" | " |
|' | |
0xD | |
0xA |
Konstruktor
EventSchemaTraceListener(String) |
Menginisialisasi instans EventSchemaTraceListener baru kelas, menggunakan file yang ditentukan sebagai penerima output penelusuran kesalahan dan pelacakan. |
EventSchemaTraceListener(String, String) |
Menginisialisasi instans EventSchemaTraceListener baru kelas dengan nama yang ditentukan, menggunakan file yang ditentukan sebagai penerima output penelusuran kesalahan dan pelacakan. |
EventSchemaTraceListener(String, String, Int32) |
Menginisialisasi instans EventSchemaTraceListener baru kelas dengan nama yang ditentukan dan ukuran buffer yang ditentukan, menggunakan file yang ditentukan sebagai penerima output penelusuran kesalahan dan pelacakan. |
EventSchemaTraceListener(String, String, Int32, TraceLogRetentionOption) |
Menginisialisasi instans EventSchemaTraceListener baru kelas dengan nama yang ditentukan dan ukuran buffer yang ditentukan, menggunakan file yang ditentukan dengan kebijakan penyimpanan log yang ditentukan sebagai penerima output penelusuran kesalahan dan pelacakan. |
EventSchemaTraceListener(String, String, Int32, TraceLogRetentionOption, Int64) |
Menginisialisasi instans EventSchemaTraceListener baru kelas dengan nama yang ditentukan dan ukuran buffer yang ditentukan, menggunakan file yang ditentukan dengan kebijakan penyimpanan log yang ditentukan dan ukuran maksimum sebagai penerima output penelusuran kesalahan dan pelacakan. |
EventSchemaTraceListener(String, String, Int32, TraceLogRetentionOption, Int64, Int32) |
Menginisialisasi instans EventSchemaTraceListener baru kelas dengan nama yang ditentukan dan ukuran buffer yang ditentukan, menggunakan file yang ditentukan dengan kebijakan penyimpanan log yang ditentukan, ukuran maksimum, dan jumlah file sebagai penerima output penelusuran kesalahan dan pelacakan. |
Properti
Attributes |
Mendapatkan atribut pendengar pelacakan kustom yang ditentukan dalam file konfigurasi aplikasi. (Diperoleh dari TraceListener) |
BufferSize |
Mendapatkan ukuran buffer output. |
Filter |
Mendapatkan atau mengatur filter pelacakan untuk pendengar jejak. (Diperoleh dari TraceListener) |
IndentLevel |
Mendapatkan atau mengatur tingkat inden. (Diperoleh dari TraceListener) |
IndentSize |
Mendapatkan atau mengatur jumlah spasi dalam inden. (Diperoleh dari TraceListener) |
IsThreadSafe |
Mendapatkan nilai yang menunjukkan apakah pendengar jejak aman untuk utas. |
MaximumFileSize |
Mendapatkan ukuran maksimum file log. |
MaximumNumberOfFiles |
Mendapatkan jumlah maksimum file log. |
Name |
Mendapatkan atau menetapkan nama untuk ini TraceListener. (Diperoleh dari TraceListener) |
NeedIndent |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah akan mengindentasi output. (Diperoleh dari TraceListener) |
TraceLogRetentionOption |
Mendapatkan opsi retensi log pelacakan untuk file. |
TraceOutputOptions |
Mendapatkan atau mengatur opsi output jejak. (Diperoleh dari TraceListener) |
Writer |
Mendapatkan atau mengatur penulis teks yang mendasar yang menulis ke file log. |
Metode
Close() |
Menutup file log untuk pendengar ini sehingga tidak lagi menerima output pelacakan atau penelusuran kesalahan. |
CreateObjRef(Type) |
Membuat objek yang berisi semua informasi relevan yang diperlukan untuk menghasilkan proksi yang digunakan untuk berkomunikasi dengan objek jarak jauh. (Diperoleh dari MarshalByRefObject) |
Dispose() |
Merilis semua sumber daya yang TraceListenerdigunakan oleh . (Diperoleh dari TraceListener) |
Dispose(Boolean) |
Buang obyek ini TextWriterTraceListener . (Diperoleh dari TextWriterTraceListener) |
Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
Fail(String) |
Memancarkan pesan kesalahan ke pendengar yang Anda buat saat mengimplementasikan TraceListener kelas. (Diperoleh dari TraceListener) |
Fail(String, String) |
Menulis informasi kesalahan, termasuk pesan kesalahan dasar dan pesan kesalahan terperinci, ke file log. |
Flush() |
Menyebabkan data buffer ditulis ke log untuk pendengar ini. |
GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
GetLifetimeService() |
Kedaluwarsa.
Mengambil objek layanan seumur hidup saat ini yang mengontrol kebijakan seumur hidup untuk instans ini. (Diperoleh dari MarshalByRefObject) |
GetSupportedAttributes() |
Mendapatkan atribut konfigurasi XML kustom yang didukung pendengar pelacakan. |
GetType() |
Mendapatkan dari instans Type saat ini. (Diperoleh dari Object) |
InitializeLifetimeService() |
Kedaluwarsa.
Mendapatkan objek layanan seumur hidup untuk mengontrol kebijakan seumur hidup untuk instans ini. (Diperoleh dari MarshalByRefObject) |
MemberwiseClone() |
Membuat salinan dangkal dari saat ini Object. (Diperoleh dari Object) |
MemberwiseClone(Boolean) |
Membuat salinan dangkal objek saat ini MarshalByRefObject . (Diperoleh dari MarshalByRefObject) |
ToString() |
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |
TraceData(TraceEventCache, String, TraceEventType, Int32, Object) |
Menulis informasi pelacakan, objek data tunggal, dan informasi peristiwa ke file log. |
TraceData(TraceEventCache, String, TraceEventType, Int32, Object[]) |
Menulis informasi pelacakan, beberapa objek data, dan informasi peristiwa ke file log. |
TraceEvent(TraceEventCache, String, TraceEventType, Int32) |
Menulis jejak dan informasi peristiwa ke output spesifik pendengar. (Diperoleh dari TraceListener) |
TraceEvent(TraceEventCache, String, TraceEventType, Int32, String) |
Menulis informasi pelacakan, pesan, dan informasi peristiwa ke file log. |
TraceEvent(TraceEventCache, String, TraceEventType, Int32, String, Object[]) |
Menulis informasi pelacakan, pesan yang diformat, dan informasi peristiwa ke file log. |
TraceTransfer(TraceEventCache, String, Int32, String, Guid) |
Menulis informasi pelacakan, termasuk identitas aktivitas terkait, pesan, dan informasi peristiwa, ke file log. |
Write(Object) |
Menulis nilai metode objek ToString() ke pendengar yang Anda buat saat mengimplementasikan TraceListener kelas . (Diperoleh dari TraceListener) |
Write(Object, String) |
Menulis nama kategori dan nilai metode objek ToString() ke pendengar yang Anda buat saat mengimplementasikan TraceListener kelas. (Diperoleh dari TraceListener) |
Write(String) |
Menulis pesan ke file log tanpa memberikan informasi konteks tambahan apa pun. |
Write(String, String) |
Menulis nama kategori dan pesan ke pendengar yang Anda buat saat mengimplementasikan TraceListener kelas. (Diperoleh dari TraceListener) |
WriteIndent() |
Menulis inden ke pendengar yang Anda buat saat mengimplementasikan kelas ini, dan mengatur ulang NeedIndent properti ke |
WriteLine(Object) |
Menulis nilai metode objek ToString() ke pendengar yang Anda buat saat mengimplementasikan TraceListener kelas, diikuti dengan terminator baris. (Diperoleh dari TraceListener) |
WriteLine(Object, String) |
Menulis nama kategori dan nilai metode objek ToString() ke pendengar yang Anda buat saat mengimplementasikan TraceListener kelas, diikuti dengan terminator baris. (Diperoleh dari TraceListener) |
WriteLine(String) |
Menulis pesan diikuti oleh terminator baris saat ini ke file log tanpa memberikan informasi konteks tambahan. |
WriteLine(String, String) |
Menulis nama kategori dan pesan ke pendengar yang Anda buat saat mengimplementasikan TraceListener kelas, diikuti dengan terminator baris. (Diperoleh dari TraceListener) |