Bagikan melalui


ConsoleTraceListener Kelas

Definisi

Mengarahkan output pelacakan atau penelusuran kesalahan ke output standar atau aliran kesalahan standar.

public ref class ConsoleTraceListener : System::Diagnostics::TextWriterTraceListener
public class ConsoleTraceListener : System.Diagnostics.TextWriterTraceListener
type ConsoleTraceListener = class
    inherit TextWriterTraceListener
Public Class ConsoleTraceListener
Inherits TextWriterTraceListener
Warisan

Contoh

Contoh kode berikut mengimplementasikan aplikasi konsol yang terdiri dari kelas dengan dua metode publik.

Metode Main ini memeriksa argumen baris perintah dan menentukan apakah output jejak harus diarahkan ke aliran kesalahan standar atau aliran output standar. Main membuat dan menginisialisasi ConsoleTraceListener objek untuk aliran output yang ditentukan Console , dan menambahkan objek ini ke koleksi pendengar pelacakan. Kemudian memanggil WriteEnvironmentInfoToTrace metode , yang menulis detail tentang lingkungan yang mengeksekusi dan konfigurasi pendengar jejak ke output jejak.

Ketika aplikasi contoh berjalan, lingkungan dan detail konfigurasi pelacakan ditulis ke aliran output konsol yang ditentukan melalui ConsoleTraceListener objek .

// Define the TRACE directive, which enables trace output to the
// Trace.Listeners collection. Typically, this directive is defined
// as a compilation argument.
#define TRACE
using System;
using System.Diagnostics;

public class ConsoleTraceSample
{

    // Define a simple method to write details about the current executing
    // environment to the trace listener collection.
    public static void WriteEnvironmentInfoToTrace()
    {

        string methodName = "WriteEnvironmentInfoToTrace";

        Trace.Indent();
        Trace.WriteLine(DateTime.Now.ToString() + " - Start of " + methodName);
        Trace.Indent();

        // Write details on the executing environment to the trace output.
        Trace.WriteLine("Operating system: " + System.Environment.OSVersion.ToString());
        Trace.WriteLine("Computer name: " + System.Environment.MachineName);
        Trace.WriteLine("User name: " + System.Environment.UserName);
        Trace.WriteLine("CLR runtime version: " + System.Environment.Version.ToString());
        Trace.WriteLine("Command line: " + System.Environment.CommandLine);

        // Enumerate the trace listener collection and
        // display details about each configured trace listener.
        Trace.WriteLine("Number of configured trace listeners = " + Trace.Listeners.Count.ToString());

        foreach (TraceListener tl in Trace.Listeners)
        {
            Trace.WriteLine("Trace listener name = " + tl.Name);
            Trace.WriteLine("               type = " + tl.GetType().ToString());
        }

        Trace.Unindent();
        Trace.WriteLine(DateTime.Now.ToString() + " - End of " + methodName);
        Trace.Unindent();
    }

    // Define the main entry point of this class.
    // The main method adds a console trace listener to the collection
    // of configured trace listeners, then writes details on the current
    // executing environment.
    public static void Main(string[] CmdArgs)
    {

        // Write a trace message to all configured trace listeners.
        Trace.WriteLine(DateTime.Now.ToString()+" - Start of Main");

        // Define a trace listener to direct trace output from this method
        // to the console.
        ConsoleTraceListener consoleTracer;

        // Check the command line arguments to determine which
        // console stream should be used for trace output.
        if ((CmdArgs.Length>0)&&(CmdArgs[0].ToString().ToLower().Equals("/stderr")))
            // Initialize the console trace listener to write
            // trace output to the standard error stream.
        {
            consoleTracer = new ConsoleTraceListener(true);
        }
        else
        {
            // Initialize the console trace listener to write
            // trace output to the standard output stream.
            consoleTracer = new ConsoleTraceListener();
        }
        // Set the name of the trace listener, which helps identify this
        // particular instance within the trace listener collection.
        consoleTracer.Name = "mainConsoleTracer";

        // Write the initial trace message to the console trace listener.
        consoleTracer.WriteLine(DateTime.Now.ToString()+" ["+consoleTracer.Name+"] - Starting output to trace listener.");

        // Add the new console trace listener to
        // the collection of trace listeners.
        Trace.Listeners.Add(consoleTracer);

        // Call a local method, which writes information about the current
        // execution environment to the configured trace listeners.
        WriteEnvironmentInfoToTrace();

        // Write the final trace message to the console trace listener.
        consoleTracer.WriteLine(DateTime.Now.ToString()+" ["+consoleTracer.Name+"] - Ending output to trace listener.");

        // Flush any pending trace messages, remove the
        // console trace listener from the collection,
        // and close the console trace listener.
        Trace.Flush();
        Trace.Listeners.Remove(consoleTracer);
        consoleTracer.Close();

        // Write a final trace message to all trace listeners.
        Trace.WriteLine(DateTime.Now.ToString()+" - End of Main");

        // Close all other configured trace listeners.
        Trace.Close();
    }
}
' Define the TRACE constant, which enables trace output to the 
' Trace.Listeners collection. Typically, this constant is defined
' as a compilation argument.
#Const TRACE = True

Imports System.Diagnostics

Public Class ConsoleTraceSample

    ' Define a simple method to write details about the current executing 
    ' environment to the trace listener collection.
    Public Shared Sub WriteEnvironmentInfoToTrace()

        Dim methodName As String = "WriteEnvironmentInfoToTrace"

        Trace.Indent()
        Trace.WriteLine(DateTime.Now.ToString() & " - Start of " & methodName)
        Trace.Indent()

        ' Write details on the executing environment to the trace output.
        Trace.WriteLine("Operating system: " & _
            System.Environment.OSVersion.ToString())
        Trace.WriteLine("Computer name: " & System.Environment.MachineName)
        Trace.WriteLine("User name: " & System.Environment.UserName)
        Trace.WriteLine("CLR version: " & System.Environment.Version.ToString)
        Trace.WriteLine("Command line: " & System.Environment.CommandLine)

        ' Enumerate the trace listener collection and 
        ' display details about each configured trace listener.
        Trace.WriteLine("Number of configured trace listeners = " & _
            Trace.Listeners.Count.ToString())

        Dim tl As TraceListener
        For Each tl In Trace.Listeners
            Trace.WriteLine("Trace listener name = " & tl.Name)
            Trace.WriteLine("               type = " & tl.GetType().ToString())
        Next tl

        Trace.Unindent()
        Trace.WriteLine(DateTime.Now.ToString() & " - End of " & methodName)
        Trace.Unindent()

    End Sub

    ' Define the main entry point of this class.
    ' The main method adds a console trace listener to the collection
    ' of configured trace listeners, then writes details on the current
    ' executing environment.
    Public Shared Sub Main(ByVal CmdArgs() As String)

        ' Write a trace message to all configured trace listeners.
        Trace.WriteLine(DateTime.Now.ToString() & " - Start of Main")

        ' Define a trace listener to direct trace output from this method
        ' to the console.
        Dim consoleTracer As ConsoleTraceListener

        ' Check the command line arguments to determine which
        ' console stream should be used for trace output.
        If (CmdArgs.Length > 0) AndAlso _
           (CmdArgs(0).ToLower.Equals("/stderr")) Then
            ' Initialize the console trace listener to write
            ' trace output to the standard error stream.
            consoleTracer = New ConsoleTraceListener(True)
        Else
            ' Initialize the console trace listener to write
            ' trace output to the standard output stream.
            consoleTracer = New ConsoleTraceListener
        End If
        ' Set the name of the trace listener, which helps identify this 
        ' particular instance within the trace listener collection.
        consoleTracer.Name = "mainConsoleTracer"

        ' Write the initial trace message to the console trace listener.
        consoleTracer.WriteLine(DateTime.Now.ToString() & " [" & _
             consoleTracer.Name & "] - Starting output to trace listener.")

        ' Add the new console trace listener to 
        ' the collection of trace listeners.
        Trace.Listeners.Add(consoleTracer)

        ' Call a local method, which writes information about the current 
        ' execution environment to the configured trace listeners.
        WriteEnvironmentInfoToTrace()

        ' Write the final trace message to the console trace listener.
        consoleTracer.WriteLine(DateTime.Now.ToString() & " [" & _
            consoleTracer.Name & "] - Ending output to trace listener.")

        ' Flush any pending trace messages, remove the 
        ' console trace listener from the collection,
        ' and close the console trace listener.
        Trace.Flush()
        Trace.Listeners.Remove(consoleTracer)
        consoleTracer.Close()

        ' Write a final trace message to all trace listeners.
        Trace.WriteLine(DateTime.Now.ToString() + " - End of Main")

        ' Close all other configured trace listeners.
        Trace.Close()

    End Sub

End Class

Keterangan

ConsoleTraceListener Gunakan kelas untuk menulis jejak dan men-debug pesan ke konsol. Anda dapat menginisialisasi ConsoleTraceListener objek untuk menulis pesan pelacakan ke Console.Out aliran atau ke Console.Error aliran.

Penting

Jenis ini mengimplementasikan IDisposable antarmuka. Ketika Anda telah selesai menggunakan jenis , Anda harus membuangnya baik secara langsung atau tidak langsung. Untuk membuang jenis secara langsung, panggil metodenya Dispose dalamtry/catch blok. Untuk membuangnya secara tidak langsung, gunakan konstruksi bahasa seperti using (di C#) atau Using (di Visual Basic). Untuk informasi selengkapnya, lihat bagian "Menggunakan Objek yang Mengimplementasikan IDisposable" di IDisposable topik antarmuka.

Ketika output pelacakan dan penelusuran kesalahan diaktifkan, ConsoleTraceListener pesan ditulis ke aliran yang ditentukan System.Console , yang mirip dengan cara pesan ditulis dengan Console.Write metode atau Console.WriteLine . Dalam aplikasi konsol, System.Console aliran output dan kesalahan menulis pesan ke jendela konsol yang ada, atau Anda dapat mengalihkan aliran untuk menulis ke System.IO.TextWriter instans.

Catatan

Jika konsol tidak ada, seperti dalam aplikasi berbasis Windows, pesan yang ditulis ke konsol tidak ditampilkan.

ConsoleTraceListener Tambahkan objek ke koleksi yang sesuai Listeners jika Anda ingin pesan ditulis melalui Trace, TraceSource, atau Debug ditulis ke konsol. Selain itu, Anda dapat menulis pesan langsung ke konsol menggunakan Trace.Write metode atau Trace.WriteLine .

Catatan

Kelas Debug dan Trace berbagi koleksi yang sama TraceListenerCollection , diakses melalui properti masing-masing Listeners . Jika Anda menambahkan ConsoleTraceListener objek ke koleksi menggunakan salah satu kelas ini, kelas lainnya secara otomatis menggunakan pendengar yang sama.

Sebagian besar pengkompilasi memungkinkan jejak dan output debug melalui bendera kompilasi kondisional. Jika Anda tidak mengaktifkan pelacakan atau penelusuran kesalahan, pesan yang ditulis melalui System.Diagnostics.Debug kelas dan System.Diagnostics.Trace diabaikan secara efektif. Sintaks untuk mengaktifkan jejak dan output debug bersifat spesifik untuk pengkompilasi; jika Anda menggunakan pengkompilasi selain C# atau Visual Basic, lihat dokumentasi untuk pengkompilasi Anda.

  • Untuk mengaktifkan penelusuran kesalahan di C#, tambahkan bendera /d:DEBUGke baris perintah pengkompilasi saat mengkompilasi kode, atau Anda dapat menambahkan #define DEBUG ke bagian atas file Anda. Di Visual Basic, tambahkan bendera /d:DEBUG=True ke baris perintah pengkompilasi.

  • Untuk mengaktifkan pelacakan di C#, tambahkan bendera /d:TRACE ke baris perintah pengkompilasi saat Anda mengkompilasi kode Anda, atau tambahkan #define TRACE ke bagian atas file Anda. Di Visual Basic, tambahkan bendera /d:TRACE=True ke baris perintah pengkompilasi.

Anda dapat menambahkan ConsoleTraceListener objek ke Listeners koleksi dalam kode Anda. Atau, untuk aplikasi .NET Framework, Anda dapat menambahkan ConsoleTraceListener objek ke Listeners koleksi melalui file konfigurasi aplikasi. ConsoleTraceListener Tambahkan objek dalam kode Anda untuk menulis pesan untuk bagian kode atau jalur eksekusi tertentu. ConsoleTraceListener Tambahkan objek dalam file konfigurasi aplikasi Anda untuk mengarahkan semua pesan jejak dan debug ke konsol saat aplikasi dijalankan.

Untuk menulis pesan pelacakan dan debug ke konsol untuk bagian kode tertentu, inisialisasi ConsoleTraceListener objek dan tambahkan ke Listeners koleksi. Instrumen bagian kode yang berisi pesan menggunakan Trace kelas atau Debug . Di akhir bagian kode, hapus ConsoleTraceListener objek dari Listeners koleksi, dan panggil Close metode pada ConsoleTraceListener.

Untuk aplikasi .NET Framework, untuk mengarahkan semua pesan jejak dan debug ke konsol saat aplikasi dijalankan, tambahkan ConsoleTraceListener objek ke file konfigurasi aplikasi. Contoh berikut menambahkan ConsoleTraceListener objek bernama configConsoleListener ke Listeners koleksi.

<configuration>  
  <system.diagnostics>  
    <trace autoflush="false" indentsize="4">  
      <listeners>  
        <add name="configConsoleListener" type="System.Diagnostics.ConsoleTraceListener" />  
      </listeners>  
    </trace>  
  </system.diagnostics>  
 </configuration>  

Untuk detail tentang menambahkan listener pelacakan dalam file konfigurasi aplikasi, lihat <pendengar>.

Konstruktor

ConsoleTraceListener()

Menginisialisasi instans ConsoleTraceListener baru kelas dengan output jejak yang ditulis ke aliran output standar.

ConsoleTraceListener(Boolean)

Menginisialisasi instans ConsoleTraceListener baru kelas dengan opsi untuk menulis output jejak ke aliran output standar atau aliran kesalahan standar.

Properti

Attributes

Mendapatkan atribut pendengar pelacakan kustom yang ditentukan dalam file konfigurasi aplikasi.

(Diperoleh dari TraceListener)
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.

(Diperoleh dari TraceListener)
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)
TraceOutputOptions

Mendapatkan atau mengatur opsi output jejak.

(Diperoleh dari TraceListener)
Writer

Mendapatkan atau mengatur penulis teks yang menerima output penelusuran atau penelusuran kesalahan.

(Diperoleh dari TextWriterTraceListener)

Metode

Close()

Menutup output ke aliran yang ditentukan untuk pendengar jejak ini.

Close()

Writer Menutup sehingga tidak lagi menerima output pelacakan atau penelusuran kesalahan.

(Diperoleh dari TextWriterTraceListener)
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)

Memancarkan pesan kesalahan dan pesan kesalahan terperinci ke pendengar yang Anda buat saat mengimplementasikan TraceListener kelas.

(Diperoleh dari TraceListener)
Flush()

Menghapus buffer output untuk Writer.

(Diperoleh dari TextWriterTraceListener)
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 kustom yang didukung oleh pendengar pelacakan.

(Diperoleh dari TraceListener)
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, dan informasi peristiwa ke output spesifik pendengar.

(Diperoleh dari TraceListener)
TraceData(TraceEventCache, String, TraceEventType, Int32, Object[])

Menulis informasi pelacakan, array objek data, dan informasi peristiwa ke output spesifik pendengar.

(Diperoleh dari TraceListener)
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 output spesifik pendengar.

(Diperoleh dari TraceListener)
TraceEvent(TraceEventCache, String, TraceEventType, Int32, String, Object[])

Menulis informasi pelacakan, array objek dan informasi peristiwa yang diformat ke output spesifik pendengar.

(Diperoleh dari TraceListener)
TraceTransfer(TraceEventCache, String, Int32, String, Guid)

Menulis informasi pelacakan, pesan, identitas aktivitas terkait, dan informasi peristiwa ke output spesifik pendengar.

(Diperoleh dari TraceListener)
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 instans Writerini.

(Diperoleh dari TextWriterTraceListener)
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 false.

(Diperoleh dari TraceListener)
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 ke instans Writer ini diikuti dengan terminator baris. Terminator baris default adalah pengembalian pengangkutan diikuti oleh umpan baris (\r\n).

(Diperoleh dari TextWriterTraceListener)
WriteLine(String, String)

Menulis nama kategori dan pesan ke pendengar yang Anda buat saat mengimplementasikan TraceListener kelas, diikuti dengan terminator baris.

(Diperoleh dari TraceListener)

Berlaku untuk

Lihat juga