Protokollierung und Traceerstellung
Das Produkt hat eine einheitliche Protokollierungskomponente, die vom Produkt geschriebene Nachrichten verarbeitet und FFDC-Services bereitstellt (First-Failure Data Capture).
Die Protokollierungskomponente erfasst außerdem Nachrichten, die in System.out, System.err, java.util.logging und in OSGi-Protokolle geschrieben werden. Die Protokollierungskomponente vereinheitlicht die Verarbeitung dieser Nachrichten mit anderen vom Produkt geschriebenen Nachrichten. Die Protokollierungskomponente kann keine Nachrichten erfassen, die direkt vom JVM-Prozess geschrieben werden, wie z. B. die Ausgabe -verbose:gc.
- console.log - Diese Datei enthält die umgeleiteten Standardausgabe- und Standardfehlerdatenströme des JVM-Prozesses. Diese Konsolenausgabe ist für die direkte Verwendung durch Benutzer vorgesehen. Die Protokollierungskomponente schreibt wichtige Ereignisse in den Standardausgabedatenstrom und Fehler in den Standardsfehlerdatenstrom, wenn Sie die consoleLogLevel-Standardkonfiguration verwenden. Außerdem kopiert die Protokollierungskomponente alle Nachrichten, die in den Datenstrom System.out geschrieben werden, in den Standardausgabedatenstrom und alle Nachrichten, die in den Datenstrom System.err geschrieben werden, in den Standardfehlerdatenstrom, wenn Sie die copySystemStreams-Standardkonfiguration verwenden. Zudem enthalten die Standardausgabe- und Standardfehlerdatenströme immer Nachrichten, die direkt vom JVM-Prozess geschrieben wurden, z. B. die Ausgabe -verbose:gc. Diese Datei wird nur erstellt, wenn der Befehl "server start" verwendet wird, und ihre Position kann nur mit der Umgebungsvariablen LOG_DIR geändert werden. Weitere Informationen finden Sie im Artikel Liberty über die Befehlszeile verwalten.
- messages.log - Diese Datei enthält alle Nachrichten, die von der Protokollierungskomponente geschrieben oder erfasst werden. Alle Nachrichten, die in diese Datei geschrieben werden, enthalten zusätzliche Informationen, wie z. B. die Zeitmarke der Nachricht und die ID des Threads, der die Nachricht geschrieben hat. Sie enthält keine Nachrichten, die direkt vom JVM-Prozess geschrieben wurden.
- trace.log - Diese Datei enthält alle Nachrichten, die von der Protokollierungskomponente geschrieben oder erfasst werden, und alle zusätzlichen Traces. Sie wird nur erstellt, wenn zusätzliche Traces aktiviert werden. Diese Datei enthält keine Nachrichten, die direkt vom JVM-Prozess geschrieben wurden.
Protokollierungskonfiguration
Attribut | Funktional entsprechende Eigenschaft | Beschreibung |
---|---|---|
logDirectory |
|
Mit diesem Attribut können Sie das Verzeichnis für alle
Protokolldateien, ausschließlich der Datei console.log, aber einschließlich FFDC, festlegen. Standardmäßig wird
für logDirectory die Umgebungsvariable LOG_DIR angegeben. Der Standardpfad der Umgebungsvariablen LOG_DIR ist WLP-Ausgangsverzeichnis/serverName/logs.
Fehler vermeiden: Verwenden Sie die Umgebungsvariable LOG_DIR oder die Eigenschaft com.ibm.ws.logging.log.directory und nicht das Attribut logDirectory, um das Verzeichnis zu konfigurieren, in das alle Nachrichten geschrieben werden sollen. Andernfalls werden einige Nachrichten anfangs standardmäßig in das Verzeichnis logs und die übrigen Nachrichten in das angegebene, auf Ihrer Konfiguration basierende, Verzeichnis geschrieben. Das Attribut logDirectory kann verwendet werden, um das Verzeichnis für die Protokollausgabe dynamisch mit dem angegebenen Verzeichnis zu aktualisieren, während der Server ausgeführt wird.
|
maxFileSize |
|
Die maximale Größe (in MB), die eine Protokolldatei
erreichen kann, bevor sie geschlossen und eine neue Protokolldatei erstellt wird.
Die Verwendung von Protokollen nach dem Rotationsprinzip durch die Liberty-Laufzeit erfolgt nur größenbasiert. Wenn Sie dieses Attribut inaktivieren möchten, setzen Sie es auf 0. Die maximale Dateigröße
wird näherungsweise berechnet.
Der Standardwert ist "20". Anmerkung: maxFileSize ist für die Datei
console.log nicht gültig.
|
maxFiles |
|
Wenn eine maximal zulässige Dateigröße
festgelegt ist, wird diese Einstellung verwendet, um zu bestimmen, wie viele Protokolldateien
beibehalten werden. Diese Einstellung gilt auch für die Anzahl der Ausnahmeprotokolle, in denen
die an einem bestimmten Tag eingetretenen Ausnahmen zusammengefasst werden. Wenn Sie für diese Einstellung beispielsweise den Wert
10 festlegen, können im Verzeichnis ffdc/
10 Nachrichtenprotokolle, 10 Traceprotokolle und 10 Ausnahmezusammenfassungen enthalten sein. Der Standardwert ist "2". Anmerkung: maxFiles ist für die Datei
console.log nicht gültig.
|
consoleLogLevel |
|
Dieser Filter steuert die Detailgenauigkeit von
Nachrichten in der Datei console.log.
Die gültigen Werte sind INFO, AUDIT, WARNING, ERROR
und OFF. Standardmäßig ist die Stufe
AUDIT eingestellt. ![]() |
copySystemStreams |
|
Ist der Wert "true", werden Nachrichten, die in die Datenströme System.out und System.err geschrieben wurden, in die Datei console.log kopiert. Ist der Wert "false", werden diese Nachrichten in konfigurierte Protokolle wie messages.log oder trace.log geschrieben, aber nicht in die Datei console.log kopiert. Der Standardwert ist "true". |
messageFileName |
|
Das Nachrichtenprotokoll hat den Standardnamen messages.log. Diese Datei ist immer vorhanden und enthält zusätzlich zu System.out und System.err INFO- und andere Nachrichten (AUDIT, WARNING, ERROR, FAILURE). Dieses Protokoll enthält außerdem Zeitmarken und die IDs der ausgebenden Threads. Beim Rollover der Protokolldatei erhalten die Namen der früheren Protokolldateien das Format messages_Zeitmarke.log |
suppressSensitiveTrace | Der Server-Trace kann sensible Daten enthalten, wenn darin nicht typisierte Daten erfasst werden, wie z. B. für Bytes, die über eine Netzverbindung empfangen wurden. Wenn dieses Attribut auf "true" gesetzt ist, wird verhindert, dass Protokoll- und Tracedateien sensible Informationen enthalten. Der Standardwert ist "false". | |
traceFileName |
|
Die Datei trace.log wird nur erstellt, wenn die Erstellung eines zusätzlichen oder detaillierten Trace aktiviert ist. stdout ist ein Sonderwert und bewirkt, dass der Trace in den ursprünglichen Standardausgabedatenstrom übertragen wird. |
traceSpecification |
|
Die Tracezeichenfolge wird für eine selektive Traceaktivierung verwendet. Der Standardwert ist *=info. |
traceFormat |
|
Dieses Attribut steuert das Format des Traceprotokolls. Das Standardformat für Liberty ist ENHANCED. Sie können auch die Formate BASIC und ADVANCED wie im vollständigen Profil verwenden. |
hideMessage |
|
Sie können dieses Attribut verwenden, um die Nachrichten zu konfigurieren, die Sie in den Dateien
console.log und message.log ausblenden möchten. Wenn die Nachrichten als verdeckt konfiguriert werden, werden sie in die Datei trace.log umgeleitet. Anmerkung: Lesen Sie,
bevor Sie dieses Attribut verwenden, die Informationen im Abschnitt Serverstart kann nicht erkannt werden, wenn Nachrichten
mit dem hideMessage-Attribut unterdrückt werden unter Bekannte Einschränkungen von Developer Tools.
|
<logging traceSpecification="*=audit:com.myco.mypackage.*=finest"/>
<Komponente> = <Stufe>
Für diese Angaben gilt Folgendes: <Komponente> ist die Komponente, für die eine Protokolldetailstufe festgelegt werden soll und <Stufe> ist eine der gültigen Protokollierungsstufen (off, fatal, severe, warning, audit, info, config, detail, fine, finer, finest, all). Trennen Sie mehrere Angaben von Protokolldetailstufen mit Doppelpunkten (:) voneinander.
- *
- Gibt den gesamten tracefähigen Code an, der im Anwendungsserver einschließlich des Produktsystemcodes und des Kundencodes ausgeführt wird.
- com.ibm.ws.*
- Gibt alle Klassen an, deren Paketname mit "com.ibm.ws" beginnt.
- com.ibm.ws.classloader.JarClassLoader
- Gibt nur die Klasse JarClassLoader an.
Protokollierungsstufe der Version 6 und höher | Inhalt / Bedeutung |
---|---|
off | Protokollierung ist ausgeschaltet. |
fatal | Task kann nicht fortgesetzt werden und Komponente, Anwendung und Server können nicht funktionieren. |
severe | Task kann nicht fortgesetzt werden, doch Komponente, Anwendung und Server funktionieren noch. Diese Stufe kann auch einen bevorstehenden nicht behebbaren Fehler anzeigen. |
warning | Potenzieller Fehler oder bevorstehender Fehler. Diese Stufe kann auch einen progressiven Fehler anzeigen (z. B. ein potenzielles Ressourcenleck). |
audit | Signifikantes Ereignis, das sich auf Serverstatus oder Ressourcen auswirkt. |
info | Allgemeine Informationen, die den Gesamtfortschritt einer Task umreißen. |
config | Konfigurationsänderung oder -status |
detail | Allgemeine Informationen mit Details zum Fortschritt der Subtask. |
fine | Traceinformationen - Allgemeiner Trace und Methodeneintritt, Methodenaustritt und Rückgabewerte |
finer | Traceinformationen - Detaillierter Trace |
finest | Traceinformationen - Ein noch detaillierterer Trace, der alle Details enthält, die für die Fehlerbehebung benötigt werden. |
all | Alle Ereignisse werden protokolliert. Wenn Sie angepasste Ebenen erstellen, schließt die Einstellung all diese Ebenen ein und kann einen ausführlicheren Trace bereitstellen als die Einstellung "finest". |
com.ibm.ws.logging.max.file.size=1
com.ibm.ws.logging.max.files=3
com.ibm.ws.logging.console.log.level=OFF
com.ibm.ws.logging.message.file.name=loggingMessages.log
Die Datei
console.log wird zurückgesetzt, wenn der Server erneut gestartet wird.Auf Windows-Systemen gibt es zwei Typen von Codierungen: die OEM-Codepage, die für Konsolenausgabe verwendet wird, und die ANSI-Codepage, die für das Lesen und Schreiben von Dateien verwendet wird. Die Datei console.log verwendet die OEM-Codepage. Alle anderen Protokolle verwenden die ANSI-Codepage.
Auf allen anderen Plattformen verwenden alle Protokolldateien die Standardcodierung.