Journalisation et trace
Le produit possède un composant de journalisation unifié qui traite les messages écrits par le produit et qui fournit un outil de diagnostic de premier niveau.
De plus, le composant de journalisation capture les messages qui sont écrits dans System.out, System.err, java.util.logging et les journaux OSGi. Il unifie le traitement de ces messages avec d'autres messages écrits par le produit. Il ne peut pas capturer les messages qui sont écrits directement par le processus de machine virtuelle Java, comme la sortie -verbose:gc.
- console.log - il contient la sortie standard et l'erreur standard redirigées du processus de machine virtuelle Java. Cette sortie de console est destinée à une utilisation humaine directe. La sortie de la console contient les événements et les erreurs principaux si vous utilisez la configuration consoleLogLevel par défaut. Elle contient également les messages écrits dans les flux System.out et System.err si vous utilisez la configuration copySystemStreams par défaut. La console contient toujours les messages écrits directement par le processus de machine virtuelle Java, par exemple la sortie -verbose:gc. Ce fichier n'est créé que si la commande server start est utilisée et son emplacement peut être modifié uniquement à l'aide de la variable d'environnement LOG_DIR. Pour plus d'informations, voir Administration du profil Liberty depuis la ligne de commande.
- messages.log - il contient tous les messages sauf les messages de trace qui sont écrits ou capturés par le composant de journalisation. Tous les messages qui sont écrits dans ce fichier contiennent des informations supplémentaires, par exemple l'horodatage du message et l'ID de l'unité d'exécution à l'origine du message. Il ne contient pas les messages qui sont écrits directement par le processus de machine virtuelle Java.
- trace.log - il contient tous les messages qui sont écrits ou capturés par le produit. Il n'est créé que si vous activez la trace supplémentaire. Il ne contient pas les messages qui sont écrits directement par le processus de machine virtuelle Java.
Configuration de la journalisation
Attribut | Propriété équivalente | Description |
---|---|---|
logDirectory |
|
Cet attribut définit le répertoire
de tous les fichiers journaux, y compris des fichiers journaux de
l'outil de diagnostic de premier niveau, en excluant le fichier
console.log. Par défaut, logDirectory est associé à la variable d'environnement LOG_DIR. Le
chemin par défaut de la variable d'environnement
LOG_DIR est
WLP_OUTPUT_DIR/serverName/logs. Eviter les incidents : utilisez
la variable d'environnement LOG_DIR
ou la propriété com.ibm.ws.logging.log.directory
plutôt que l'attribut
logDirectory pour configurer le répertoire dans
lequel vous voulez que tous les messages soient écrits. Sinon, peu
de messages sont initialement écrits dans le répertoire
logs par défaut, puis les messages
restants sont écrits dans le répertoire indiqué en fonction de votre configuration. L'attribut
logDirectory peut être utilisé
pour mettre à jour de manière dynamique les journaux
dans le répertoire indiqué alors que le serveur est en cours
d'exécution.
|
maxFileSize |
|
Taille maximale (en mégaoctets) d'un
fichier journal avant le roulement. L'environnement d'exécution du
profil Liberty procède au roulement des journaux en fonction de la
taille uniquement. Pour désactiver cet attribut, définissez la valeur 0. La taille de fichier maximale est approximative. Par
défaut, la valeur est 20. Remarque : maxFileSize ne s'applique pas au fichier
console.log.
|
maxFiles |
|
Si une taille de fichier maximale
est appliquée, ce paramètre détermine combien de fichiers journaux de
chaque type sont conservés. Ce paramètre s'applique également au nombre de journaux des exceptions qui récapitulent les exceptions survenues au cours d'un
jour donné.
Par conséquent, si la valeur choisie est 10, le répertoire ffdc/ pourra
contenir jusqu'à 10 journaux de messages, 10 journaux de trace et
10 journaux récapitulatifs des exceptions.
Par défaut, la valeur est 2. Remarque : maxFiles ne s'applique pas au fichier console.log.
|
consoleLogLevel |
|
Ce filtre contrôle la granularité des
messages envoyés au fichier console.log. Les valeurs admises sont INFO, AUDIT, WARNING, ERROR et OFF. Le niveau par défaut est AUDIT. ![]() |
copySystemStreams |
|
Si la valeur est true, les messages écrits dans les flux System.out et System.err sont copiés dans console.log. Si la valeur est false, ils sont écrits dans des journaux configurés tels que messages.log ou trace.log, mais ils ne sont pas copiés dans console.log. La valeur par défaut est true. |
messageFileName |
|
Le journal des messages porte le nom par défaut messages.log. Ce fichier existe toujours et contient les messages du niveau INFO et des autres niveaux (AUDIT, WARNING, ERROR, FAILURE), en plus des messages envoyés aux flux standard System.out et System.err. Ce journal contient également des horodatages et l'ID de l'unité d'exécution émettrice. Si le fichier journal est substitué, les noms de fichiers journaux antérieures ont le format messages_horodatage.log |
suppressSensitiveTrace | La trace de serveur risque d'exposer des données sensibles lors du suivi de données sans type, tels les octets reçus via une connexion réseau. Si sa valeur est true, cet attribut empêche l'exposition des informations potentiellement sensibles dans les fichiers journaux et de trace. La valeur par défaut est false. | |
traceFileName |
|
Le fichier trace.log est seulement créé si la trace supplémentaire ou détaillée est activée. stdout est considéré comme une valeur spéciale qui a pour effet de diriger la trace vers le flux de sortie standard d'origine. |
traceSpecification |
|
La chaîne de trace est utilisée pour activer la trace de façon sélective. La valeur par défaut est *=info. |
traceFormat |
|
Cet attribut contrôle le format du journal de trace. Le format par défaut pour le profil Liberty est ENHANCED. Vous pouvez aussi utiliser les formats BASIC et ADVANCED, comme dans le profil complet. |
![]() |
|
Vous pouvez utiliser l'attribut
hideMessage pour
configurer les messages que vous voulez masquer dans les fichiers
console.log et
message.log.
Si les messages sont configurés pour être masqués, ils sont redirigés
vers le fichier trace.log. ![]() |
<logging traceSpecification="*=audit:com.myco.mypackage.*=finest"/>
<composant> = <niveau>
où <composant> correspond au composant pour lequel un niveau de détail de journal doit être défini, et <niveau> à l'un des niveaux de journal d'événements valides (désactivé, fatal, grave, avertissement, audit, info, config, détail, fin, plus fin, le plus fin, tous). Plusieurs spécifications de niveau de détail de journal doivent être séparées par deux points (:).
- *
- Indique tout le code traçable qui s'exécute sur le serveur d'application, y compris le code système produit et le code client.
- com.ibm.ws.*
- Spécifie toutes les classes dont le nom de package commence par com.ibm.ws.
- com.ibm.ws.classloader.JarClassLoader
- Spécifie uniquement la classe JarClassLoader.
Niveau de journalisation de la version 6 et des versions ultérieures | Contenu / Signification |
---|---|
off | La journalisation est désactivée. |
fatal | La tâche ne peut se poursuivre et le composant, l'application et le serveur ne fonctionnent pas. |
severe | La tâche ne peut se poursuivre mais le composant, l'application et le serveur fonctionnent toujours. Ce niveau peut également indiquer une erreur irrémédiable imminente. |
warning | Erreur potentielle ou imminente. Ce niveau peut également indiquer un incident progressif (par exemple, la perte éventuelle de ressources). |
audit | Evénement important qui affecte l'état du serveur ou les ressources |
info | Informations générales qui présentent la progression globale de la tâche |
config | Statut ou modification de la configuration |
detail | Informations générales qui détaillent la progression de la sous-tâche |
fine | informations de Trace - trace générale + valeurs d'entrée/de sortie et , de retour de la méthode |
finer | Informations de trace - trace détaillée |
finest | Informations de trace - Trace détaillée qui inclut les détails nécessaires au débogage des problèmes |
all | Tous les événements sont consignés. Si vous créez des niveaux personnalisés, le niveau all inclut ces niveaux, et peut fournir une trace plus détaillée que le niveau 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
Le fichier console.log est réinitialisé lors du redémarrage
du serveur.Sur les systèmes Windows, il existe deux types de codage : la page de codes OEM, qui est utilisée pour la sortie dans la console, et la page de codes ANSI, qui est utilisée pour lire et écrire les fichiers. Le fichier console.log utilise la page de codes OEM et tous les autres journaux la page de codes ANSI.
Sur toutes les autres plateformes, tous les fichiers journaux utilisent le codage par défaut.