Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

ConsoleTraceListener-Klasse

 

Veröffentlicht: Oktober 2016

Leitet Ablaufverfolgungs- oder Ausgabe an die Standardausgabe oder den Standardfehlerstream.

Namespace:   System.Diagnostics
Assembly:  System (in System.dll)

System.Object
  System.MarshalByRefObject
    System.Diagnostics.TraceListener
      System.Diagnostics.TextWriterTraceListener
        System.Diagnostics.ConsoleTraceListener

[HostProtectionAttribute(SecurityAction.LinkDemand, Synchronization = true)]
public class ConsoleTraceListener : TextWriterTraceListener

NameBeschreibung
System_CAPS_pubmethodConsoleTraceListener()

Initialisiert eine neue Instanz der der ConsoleTraceListener Klasse, wobei die Ablaufverfolgungsausgabe in den Standardausgabestream geschrieben.

System_CAPS_pubmethodConsoleTraceListener(Boolean)

Initialisiert eine neue Instanz der der ConsoleTraceListener Klasse mit der Option, die Ablaufverfolgungsausgabe in den Standardausgabestream oder den Standardfehlerstream zu schreiben.

NameBeschreibung
System_CAPS_pubpropertyAttributes

Ruft die benutzerdefinierten Attribute für Ablaufverfolgungslistener ab, die in der Anwendungskonfigurationsdatei definiert sind.(Geerbt von „TraceListener“.)

System_CAPS_pubpropertyFilter

Ruft den Ablaufverfolgungsfilter für den Ablaufverfolgungslistener ab und legt diesen fest.(Geerbt von „TraceListener“.)

System_CAPS_pubpropertyIndentLevel

Ruft die Einzugsebene ab oder legt diese fest.(Geerbt von „TraceListener“.)

System_CAPS_pubpropertyIndentSize

Ruft die Anzahl der Leerzeichen in einem Einzug ab oder legt diese fest.(Geerbt von „TraceListener“.)

System_CAPS_pubpropertyIsThreadSafe

Ruft einen Wert ab, der angibt, ob der Ablaufverfolgungslistener threadsicher ist.(Geerbt von „TraceListener“.)

System_CAPS_pubpropertyName

Ruft einen Namen für diesen TraceListener ab oder legt diesen fest.(Geerbt von „TraceListener“.)

System_CAPS_protpropertyNeedIndent

Ruft einen Wert ab, der einen Einzug für die Ausgabe angibt, oder legt diesen fest.(Geerbt von „TraceListener“.)

System_CAPS_pubpropertyTraceOutputOptions

Ruft die Optionen für die Ablaufverfolgungsausgabe ab oder legt diese fest.(Geerbt von „TraceListener“.)

System_CAPS_pubpropertyWriter

Ruft ab oder legt den TextWriter, der die Ablaufverfolgung oder Debuggen Ausgabe empfängt.(Geerbt von „TextWriterTraceListener“.)

NameBeschreibung
System_CAPS_pubmethodClose()

Schließt die Ausgabe für diesen Ablaufverfolgungslistener angegebenen Stream.(Überschreibt TextWriterTraceListener.Close().)

System_CAPS_pubmethodCreateObjRef(Type)

Erstellt ein Objekt, das alle relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt verwendet die enthält.(Geerbt von „MarshalByRefObject“.)

System_CAPS_pubmethodDispose()

Gibt alle vom TraceListener verwendeten Ressourcen frei.(Geerbt von „TraceListener“.)

System_CAPS_protmethodDispose(Boolean)

Diese API unterstützt die Produkt Infrastruktur und sollte nicht direkt aus dem Code verwendet werden. Verwirft diese TextWriterTraceListener Objekt.(Geerbt von „TextWriterTraceListener“.)

System_CAPS_pubmethodEquals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.(Geerbt von „Object“.)

System_CAPS_pubmethodFail(String)

Gibt eine Fehlermeldung an den Listener aus, den Sie beim Implementieren der TraceListener-Klasse erstellen.(Geerbt von „TraceListener“.)

System_CAPS_pubmethodFail(String, String)

Gibt eine Fehlermeldung sowie eine detaillierte Fehlermeldung an den Listener aus, den Sie beim Implementieren der TraceListener-Klasse erstellen.(Geerbt von „TraceListener“.)

System_CAPS_protmethodFinalize()

Gibt einem Objekt Gelegenheit, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Geerbt von „Object“.)

System_CAPS_pubmethodFlush()

Leert den Ausgabepuffer für die Writer.(Geerbt von „TextWriterTraceListener“.)

System_CAPS_pubmethodGetHashCode()

Fungiert als die Standardhashfunktion.(Geerbt von „Object“.)

System_CAPS_pubmethodGetLifetimeService()

Ruft das Dienstobjekt für aktuellen Lebensdauer, das steuert, die lebensdauerrichtlinie für diese Instanz ab.(Geerbt von „MarshalByRefObject“.)

System_CAPS_protmethodGetSupportedAttributes()

Ruft die vom Ablaufverfolgungslistener unterstützten benutzerdefinierten Attribute ab.(Geerbt von „TraceListener“.)

System_CAPS_pubmethodGetType()

Ruft den Type der aktuellen Instanz ab.(Geerbt von „Object“.)

System_CAPS_pubmethodInitializeLifetimeService()

Ruft ein Lebensdauerdienstobjekt zur Steuerung der Lebensdauerrichtlinie für diese Instanz ab.(Geerbt von „MarshalByRefObject“.)

System_CAPS_protmethodMemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.(Geerbt von „Object“.)

System_CAPS_protmethodMemberwiseClone(Boolean)

Erstellt eine flache Kopie des aktuellen MarshalByRefObject Objekt.(Geerbt von „MarshalByRefObject“.)

System_CAPS_pubmethodToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.(Geerbt von „Object“.)

System_CAPS_pubmethodTraceData(TraceEventCache, String, TraceEventType, Int32, Object)

Schreibt Ablaufverfolgungsinformationen, ein Datenobjekt und Ereignisinformationen in die spezifische Ausgabe des Listeners.(Geerbt von „TraceListener“.)

System_CAPS_pubmethodTraceData(TraceEventCache, String, TraceEventType, Int32, Object[])

Schreibt Ablaufverfolgungsinformationen, ein Array von Datenobjekten und Ereignisinformationen in die spezifische Ausgabe des Listeners.(Geerbt von „TraceListener“.)

System_CAPS_pubmethodTraceEvent(TraceEventCache, String, TraceEventType, Int32)

Schreibt Ablaufverfolgungs- und Ereignisinformationen in die spezifische Ausgabe des Listeners.(Geerbt von „TraceListener“.)

System_CAPS_pubmethodTraceEvent(TraceEventCache, String, TraceEventType, Int32, String)

Schreibt Ablaufverfolgungsinformationen, eine Meldung und Ereignisinformationen in die spezifische Ausgabe des Listeners.(Geerbt von „TraceListener“.)

System_CAPS_pubmethodTraceEvent(TraceEventCache, String, TraceEventType, Int32, String, Object[])

Schreibt Ablaufverfolgungsinformationen, ein formatiertes Array von Objekten und Ereignisinformationen in die spezifische Ausgabe des Listeners.(Geerbt von „TraceListener“.)

System_CAPS_pubmethodTraceTransfer(TraceEventCache, String, Int32, String, Guid)

Schreibt Ablaufverfolgungsinformationen, eine Meldung, eine verwandte Aktivitätsidentität und Ereignisinformationen in die spezifische Ausgabe des Listeners.(Geerbt von „TraceListener“.)

System_CAPS_pubmethodWrite(Object)

Schreibt den Wert der ToString-Methode des Objekts in den Listener, den Sie beim Implementieren der TraceListener-Klasse erstellen.(Geerbt von „TraceListener“.)

System_CAPS_pubmethodWrite(Object, String)

Schreibt einen Kategorienamen und den Wert der ToString-Methode eines Objekts in den Listener, den Sie beim Implementieren der TraceListener-Klasse erstellen.(Geerbt von „TraceListener“.)

System_CAPS_pubmethodWrite(String)

Schreibt eine Meldung in dieser Instanz Writer.(Geerbt von „TextWriterTraceListener“.)

System_CAPS_pubmethodWrite(String, String)

Schreibt einen Kategorienamen und eine Meldung in den Listener, den Sie beim Implementieren der TraceListener-Klasse erstellen.(Geerbt von „TraceListener“.)

System_CAPS_protmethodWriteIndent()

Schreibt den Einzug in den Listener, den sie bei der Implementierung dieser Klasse erstellen, und setzt die NeedIndent-Eigenschaft auf false zurück.(Geerbt von „TraceListener“.)

System_CAPS_pubmethodWriteLine(Object)

Schreibt den Wert der ToString-Methode des Objekts gefolgt von einem Zeilenabschluss in den Listener, den Sie beim Implementieren der TraceListener-Klasse erstellen.(Geerbt von „TraceListener“.)

System_CAPS_pubmethodWriteLine(Object, String)

Schreibt einen Kategorienamen und den Wert der ToString-Methode eines Objekts gefolgt von einem Zeilenabschluss in den Listener, den Sie beim Implementieren der TraceListener-Klasse erstellen.(Geerbt von „TraceListener“.)

System_CAPS_pubmethodWriteLine(String)

Schreibt eine Meldung in dieser Instanz Writer gefolgt von einem Zeilenabschlusszeichen. Das Standardzeilenabschlusszeichen ist ein Wagenrücklaufzeichen gefolgt von einem Zeilenvorschub (\r\n).(Geerbt von „TextWriterTraceListener“.)

System_CAPS_pubmethodWriteLine(String, String)

Schreibt einen Kategorienamen und eine Meldung gefolgt von einem Zeilenabschluss in den Listener, den Sie beim Implementieren der TraceListener-Klasse erstellen.(Geerbt von „TraceListener“.)

Verwenden der ConsoleTraceListener Klasse Trace und Debugmeldungen in die Konsole geschrieben. Initialisieren Sie ein ConsoleTraceListener Objekt zum Schreiben von Ablaufverfolgungsmeldungen die Console.Out Stream oder die Console.Error Stream.

System_CAPS_importantWichtig

IDisposable Schnittstelle. Wenn Sie den Typ nicht mehr verwenden, sollten Sie ihn entweder direkt oder indirekt freigeben. Damit des Typs direkt freigegeben werden, rufen Sie seine Dispose -Methode in einetry/catch Block. Um es indirekt freizugeben, verwenden Sie ein Sprachkonstrukt wie z. B. using (in c#) oder Using (in Visual Basic). Weitere Informationen finden Sie im Abschnitt "Verwenden eines Objekts, welches IDisposable implementiert" im IDisposable Themenabschnitt zur Schnittstelle.

Beim verfolgen und Ausgabe-Debuggen aktiviert ist, die ConsoleTraceListener Nachrichten geschrieben werden, mit dem angegebenen System.Console Stream, der Nachrichten mit geschrieben werden, ähnlich wie ist die Console.Write oder Console.WriteLine Methoden. In einer Konsolenanwendung die System.Console Ausgabe und Fehlerstreams Nachrichten in der vorhandenen Konsolenfenster geschrieben oder umzuleiten, die Streams zum Schreiben in eine System.IO.TextWriter Instanz.

System_CAPS_noteHinweis

Wenn die Konsole nicht, wie in einer Windows-basierten Anwendung vorhanden ist, werden Nachrichten, die in die Konsole geschrieben nicht angezeigt.

Hinzufügen einer ConsoleTraceListener Objekt an die entsprechende Listeners Auflistung, wenn Nachrichten über geschrieben werden sollen Trace, TraceSource, oder Debug in die Konsole geschrieben werden. Darüber hinaus können Sie Nachrichten schreiben, direkt in der Konsole aus mithilfe der Trace.Write oder Trace.WriteLine Methoden.

System_CAPS_noteHinweis

Die Debug und Trace -Klasse verwenden die gleiche TraceListenerCollection -Auflistung, über die jeweiligen Listeners Eigenschaften. Wenn Sie beim Hinzufügen einer ConsoleTraceListener Objekt der Auflistung unter Verwendung einer dieser Klassen, die andere Klasse automatisch denselben Listener verwendet.

Die meisten Compiler ermöglichen Trace und debug-Ausgabe über bedingte Kompilierung Flags. Wenn Sie nicht aktivieren Ablaufverfolgungs- oder Debugmeldungen, die geschrieben wurden die System.Diagnostics.Debug und System.Diagnostics.Trace Klassen sind effektiv ignoriert. Die Syntax zum Aktivieren der Ablaufverfolgung und debug-Ausgabe ist compilerspezifisch. Wenn Sie einen anderen Compiler als c# oder Visual Basic verwenden, finden Sie in der Dokumentation zum Compiler.

  • Fügen Sie zum Aktivieren des Debuggens in c#, die /d: DebugFlag in der Compilerbefehlszeile beim Kompilieren des Codes, oder Sie fügen #define DEBUG am Anfang der Datei. Fügen Sie in Visual Basic die /d: Debug = True Flag in der Compilerbefehlszeile.

  • Fügen Sie zum Aktivieren der Ablaufverfolgung in c# die d Flag in der Compilerbefehlszeile beim Kompilieren des Codes hinzufügen oder #define TRACE am Anfang der Datei. Fügen Sie in Visual Basic die /d: TRACE = True Flag in der Compilerbefehlszeile.

Können Sie hinzufügen ein ConsoleTraceListener -Objekt die Listeners Auflistung im Code, oder Sie können hinzufügen ein ConsoleTraceListener -Objekt die Listeners -Auflistung mithilfe der Anwendungskonfigurationsdatei. Hinzufügen der ConsoleTraceListener Objekts in Ihrem Code zum Schreiben von Nachrichten für einen bestimmten Codepfad Abschnitt oder Ausführung. Hinzufügen der ConsoleTraceListener Objekt in der Konfigurationsdatei der Anwendung alle Trace und Debug Meldungen an die Konsole, während die Anwendung ausgeführt wird.

Um Trace schreiben und Debuggen von Nachrichten für einen bestimmten Abschnitt des Codes in der Konsole, initialisiert ein ConsoleTraceListener -Objekt und fügen sie der Listeners Auflistung. Instrumentieren Sie den Codeabschnitt, der Nachrichten enthält die Trace oder Debug Klassen. Entfernen Sie am Ende des Codeabschnitts, der ConsoleTraceListener -Objekt aus der Listeners -Auflistung, und rufen die Close Methode für die ConsoleTraceListener.

Um alle Trace weiterleiten und Debugmeldungen an die Konsole, während die Anwendung ausgeführt wird, fügen ein ConsoleTraceListener Objekt in der Anwendungskonfigurationsdatei. Bearbeiten Sie die Konfigurationsdatei, die den Namen der Anwendung entspricht, oder die Datei "app.config" in einem Visual Studio 2005 Projekt. Fügen Sie in dieser Datei ein Element für einen ConsoleTraceListener.

Im folgenden Beispiel wird ein ConsoleTraceListener -Objekt namens configConsoleListener an der Listeners Auflistung.

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

Weitere Informationen zum Hinzufügen von Ablaufverfolgungslistenern in der Anwendungskonfigurationsdatei finden Sie unter <listeners>-Element für <trace>.

Das folgende Codebeispiel implementiert eine Konsolenanwendung, bestehend aus einer Klasse mit zwei öffentlichen Methoden.

Die Main -Methode untersucht die Befehlszeilenargumente und bestimmt, ob die Ablaufverfolgungsausgabe an den Standardfehlerstream oder den Standardausgabestream geleitet werden sollen. Main erstellt und initialisiert ein ConsoleTraceListener -Objekt für die angegebene Console -Ausgabestream und fügt der Auflistung der Ablaufverfolgungslistener dieses Objekt hinzu. Es ruft dann die WriteEnvironmentInfoToTrace -Methode, die Details zur ausgeführten Umgebung und die Trace-Listener-Konfiguration auf die Ablaufverfolgungsausgabe geschrieben.

Bei der Ausführung der Anwendung wird wurden Konfigurationsdetails Umgebung und Trace in den Ausgabedatenstrom angegebene Konsole über die ConsoleTraceListener Objekt.

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

    }

}

.NET Framework
Verfügbar seit 2.0

Alle öffentlichen statischen Member ( Shared in Visual Basic) dieses Typs sind threadsicher. Die Threadsicherheit für Instanzmember ist nicht garantiert.

Zurück zum Anfang
Anzeigen: