Sie können eine Ablaufverfolgungsausgabe auch aktivieren, nachdem die Anwendung verteilt wurde, oder deaktivieren, indem Sie die Ablaufverfolgungsschalter in der Anwendung konfigurieren. Konfigurieren eines Schalters bedeutet, seinen Wert nach seiner Initialisierung von einer externen Quelle aus zu ändern. Die Werte der Schalterobjekte können Sie in der Konfigurationsdatei ändern. Bei der Konfiguration wird ein Ablaufverfolgungsschalter aktiviert oder deaktiviert, oder seine Ebene wird festgelegt und dadurch Menge und Typ der Meldungen bestimmt, die er an Listener weiterleitet.
Schalter werden in der CONFIG-Datei konfiguriert. Bei einer Webanwendung handelt es sich dabei um die dem Projekt zugeordnete Datei Web.config. In einer Windows-Anwendung heißt diese Datei (Anwendungsname).exe.config. In einer bereitgestellten Anwendung muss diese Datei im selben Ordner abgelegt werden wie die ausführbare Datei.
Wenn die Anwendung den Code ausführt, der eine Schalterinstanz zum ersten Mal erstellt, überprüft sie die Konfigurationsdatei auf Informationen über die Ablaufverfolgungsebene des genannten Schalters. Das Ablaufverfolgungssystem durchsucht die Konfigurationsdatei für jeden Schalter nur einmal – und zwar dann, wenn er von der Anwendung zum ersten Mal erstellt wird.
In einer bereitgestellten Anwendung aktivieren Sie den Ablaufverfolgungscode, indem Sie Schalterobjekte neu konfigurieren, wenn die Anwendung nicht ausgeführt wird. In der Regel müssen Sie dazu die Schalterobjekte aktivieren und deaktivieren oder die Ablaufverfolgungsebenen ändern. Starten Sie die Anwendung anschließend neu.
Eine neu erstellte Schalterinstanz wird durch Angeben zweier Argumente auch initialisiert: durch ein displayName-Argument und ein description-Argument. Das displayName-Argument des Konstruktors legt die Switch..::.DisplayName-Eigenschaft der Switch-Klasseninstanz fest. Der displayName ist der Name, unter dem der Schalter in der CONFIG-Datei konfiguriert wird. Das description-Argument sollte eine Kurzbeschreibung des Schalters und der von ihm gesteuerten Meldungen zurückgeben.
Neben einem Namen müssen Sie auch einen Wert für einen zu konfigurierenden Schalter angeben. Dieser Wert ist eine ganze Zahl. Bei BooleanSwitch entspricht der Wert 0 Off, und alle anderen Werte als 0 entsprechen On. Bei TraceSwitch entsprechen 0, 1, 2, 3 und 4 jeweils Off, Error, Warning, Info und Verbose. Größere Zahlen als 4 gelten als Verbose und Zahlen unter Null als Off.
Hinweis: |
|---|
In .NET Framework Version 2.0 können Sie Text verwenden, um den Wert für einen Schalter anzugeben. Beispielsweise true für einen BooleanSwitch oder den Text, der einen Enumerationswert wie Error für TraceSwitch darstellt. Die Zeile <add name="myTraceSwitch" value="Error" /> ist äquivalent zu <add name="myTraceSwitch" value="1" />. |
Damit Endbenutzer die Ablaufverfolgungsschalter einer Anwendung konfigurieren können, müssen Sie detaillierte Dokumentation zu den Schaltern zur Verfügung stellen. Darin sollten Sie im Einzelnen ausführen, welche Schalter welche Vorgänge steuern und wie sie aktiviert und deaktiviert werden. Außerdem sollte den Endbenutzern eine CONFIG-Datei mit entsprechenden Hilfeinformationen in Kommentaren zur Verfügung stehen.