L'analyseur de trace et de journal fournit un support autonome et par plug-in pour les utilitaires de journalisation suivants :
Cette prise en charge couvre les éléments suivants :
Cette prise en charge est fournie par les plug-ins suivants :
Utilitaire de journalisation |
Module d'extension |
---|---|
Journalisation Java (JSR-047) |
org.eclipse.hyades.logging.java14 |
Journalisation Apache Jakarta Commons |
org.eclipse.hyades.logging.commons |
Journalisation Apache Jakarta Log4J |
org.eclipse.hyades.logging.log4j |
Les sections qui suivent décrivent en détail les différents types de prise en charge d'utilitaire de journalisation et fournissent des pointeurs désignant des exemples qui montrent comment les utiliser.
Une extension de la classe java.util.logging.LogRecord dans le package org.eclipse.hyades.logging.java14 permet de créer un enregistrement de journal personnalisé pour inclure un org.eclipse.hyades.logging.events.cbe.CommonBaseEvent dans un java.util.logging.LogRecord. Cet objet org.eclipse.hyades.logging.java14.CommonBaseEventLogRecord permet l'extension de java.util.logging.LogRecord et contient une référence à un org.eclipse.hyades.logging.events.cbe.CommonBaseEvent. Toutes les propriétés java.util.logging.LogRecord sont mappées vers une ou plusieurs propriétés Common Base Event afin de maintenir une réflexivité pour les gestionnaires et les composants de formatage qui ne sont pas conscients de Common Base Event.
Une implémentation de l'interface java.util.logging.Filter dans le package org.eclipse.hyades.logging.java14 n'autorise que la journalisation des enregistrements org.eclipse.hyades.logging.java14.CommonBaseEventLogRecord.
Une extension de la classe abstraite java.util.logging.Formatter dans le package org.eclipse.hyades.logging.java14 permet de configurer les gestionnaires de façon à ce qu'ils formatent les messages de journalisation org.eclipse.hyades.logging.java14.CommonBaseEventLogRecord et java.util.logging.LogRecord en XML. Ce formateur org.eclipse.hyades.logging.java14.XmlFormatter convertit le message de journalisation org.eclipse.hyades.logging.java14.CommonBaseEventLogRecord ou java.util.logging.LogRecord en XML sur la base du schéma Common Base Event version 1.0.1. Lors du formatage, le message de journalisation est vérifié pour s'assurer qu'il implémente l'interface org.eclipse.hyades.logging.core.IExternalizableToXml (par exemple, org.eclipse.hyades.logging.java14.CommonBaseEventLogRecord). Si tel est le cas, l'API externalizeCanonicalXmlString() est appelée à la place de la sérialisation XML. A défaut, le message de journalisation java.util.logging.LogRecord est converti en objet Common Base Event à l'aide du même mappage que dans org.eclipse.hyades.logging.events.cbe.CommonBaseEvent et sérialisé en XML en appelant l'API externalizeCanonicalXmlString().
Une extension de la classe abstraite java.util.logging.Handler dans le package org.eclipse.hyades.logging.java permet de configurer les gestionnaires de façon à ce qu'ils consignent les messages de journalisation org.eclipse.hyades.logging.events.cbe.CommonBaseEvent et java.util.logging.LogRecord dans un agent de journalisation.
Ce gestionnaire org.eclipse.hyades.logging.java.LoggingAgentHandler vérifie si le message de journalisation org.eclipse.hyades.logging.java14.CommonBaseEventLogRecord ou java.util.logging.LogRecord qui est journalisé dans un journal d'événements peut être consigné sur la base du niveau de filtrage et de journalisation du journal d'événements et du gestionnaire. Si le message de journalisation doit être journalisé, un agent de journalisation est résolu avec le même nom que le journal d'événements dans lequel le message est journalisé. A défaut, vous pouvez utiliser le gestionnaire org.eclipse.hyades.logging.java.SingleLoggingAgentHandler, qui crée un agent de journalisation nommé gestionnaire d'agent de journalisation. Le message est formaté en XML à l'aide d'un formateur org.eclipse.hyades.logging.java.XmlFormatter et enregistré dans l'agent de journalisation.
Exemple
Voici un exemple qui montre comment optimiser la journalisation Java (JSR-047) en illustrant la configuration et l'instrumentation requises tant pour les nouveaux utilisateurs que pour les utilisateurs existants de la prise en charge autonome et par plug-in de la journalisation Java (JSR-047). Pour plus d'informations, ouvrez Fichier > Nouveau > Exemple... > Journalisation Hyades > Exemple de journalisation JSR-047 Hyades.
Une implémentation de l'interface org.apache.commons.logging.Log dans le package org.eclipse.hyades.logging.commons permet de créer un journal d'événements pour la journalisation de messages de journalisation org.eclipse.hyades.logging.events.cbe.CommonBaseEvent, java.lang.Object et java.lang.Throwable. Ce journal d'événements org.eclipse.hyades.logging.commons.Logger vérifie si le message de journalisation org.eclipse.hyades.logging.events.cbe.CommonBaseEvent, java.lang.Object ou java.lang.Throwable qui est journalisé dans un journal d'événements peut être journalisé sur la base du niveau de journalisation du journal d'événements. Si le message de journalisation doit être consigné, le message de journalisation org.eclipse.hyades.logging.events.cbe.CommonBaseEvent, java.lang.Object ou java.lang.Throwable est formaté et journalisé. Une implémentation de la classe abstraite org.apache.commons.logging.LogFactory qui représente une fabrique de serveurs mandataires spécifique pour les instances org.eclipse.hyades.logging.commons.Logger est fournie. Cette fabrique de serveurs mandataires org.eclipse.hyades.logging.commons.LoggerFactory est destinée à être utilisée dans plusieurs environnements de chargeur de classe dans lesquels un ou plusieurs types de journaux d'événements différents et leurs fabriques sont requis pour chaque chargeur de classe distinct, mais tous utilisant les mêmes fichiers binaires Apache Commons.
Le journal d'événements org.eclipse.hyades.logging.commons.Logger formate les messages de journalisation org.eclipse.hyades.logging.events.cbe.CommonBaseEvent, java.lang.Object et java.lang.Throwable en XML sur la base du schéma Common Base Event version 1.0.1. Lors du formatage, le message de journalisation est vérifié pour s'assurer qu'il implémente l'interface org.eclipse.hyades.logging.core.IExternalizableToXml (par exemple, org.eclipse.hyades.logging.events.cbe.CommonBaseEvent). Si tel est le cas, l'API externalizeCanonicalXmlString() est appelée à la place de la sérialisation XML. A défaut, le message de journalisation java.lang.Object ou java.lang.Throwable est converti en objet Common Base Event à l'aide de org.eclipse.hyades.internal.logging.core.XmlGenerator et sérialisé en XML en appelant l'API externalizeCanonicalXmlString().
Le journal d'événements org.eclipse.hyades.logging.commons.Logger journalise les messages de journalisation org.eclipse.hyades.logging.events.cbe.CommonBaseEvent, java.lang.Object et java.lang.Throwable vers un agent de journalisation. Si le message de journalisation doit être journalisé, un agent de journalisation est résolu avec le même nom que le journal d'événements dans lequel le message est journalisé. Le message est mis en forme en XML et écrit et écrit dans l'agent de journalisation.
Une implémentation de l'interface org.apache.commons.logging.Logdans le package org.eclipse.hyades.logging.commons permet de créer un journal d'événements pour la journalisation de messages de journalisation org.eclipse.hyades.logging.events.cbe.CommonBaseEvent, java.lang.Object et java.lang.Throwable dans un fichier local. org.eclipse.hyades.logging.commons.FileLogger vérifie si le message de journalisation org.eclipse.hyades.logging.events.cbe.CommonBaseEvent, java.lang.Object ou java.lang.Throwable qui est journalisé dans un journal d'événements peut être journalisé sur la base du niveau de journalisation du journal d'événements. Si le message de journalisation doit être consigné, le message de journalisation org.eclipse.hyades.logging.events.cbe.CommonBaseEvent, java.lang.Object ou java.lang.Throwable est formaté en XML et journalisé dans un fichier local. Une implémentation de la classe abstraite org.apache.commons.logging.LogFactory qui représente une fabrique de serveurs mandataires spécifique pour les instances org.eclipse.hyades.logging.commons.FileLogger est fournie. Cette fabrique de serveurs mandataires org.eclipse.hyades.logging.commons.FileLoggerFactory est destinée à être utilisée dans plusieurs environnements de chargeur de classe dans lesquels un ou plusieurs types de journaux d'événements différents et leurs fabriques sont requis pour chaque chargeur de classe distinct, mais tous utilisant les mêmes fichiers binaires Apache Commons.
Exemple
Voici un exemple qui montre comment optimiser la prise en charge de la journalisation Apache Jakarta Commons en illustrant la configuration et l'instrumentation requises tant pour les nouveaux utilisateurs que pour les utilisateurs existants de la prise en charge autonome et par plug-in de la journalisation Apache Jakarta Commons. Pour plus d'informations, ouvrez Fichier > Nouveau > Exemple... > Journalisation Hyades > Exemple de journalisation Apache Commons.
La propriété de message du message de journalisation org.apache.log4j.spi.LoggingEvent permet de journaliser un org.eclipse.hyades.logging.events.cbe.CommonBaseEvent.
Une extension de la classe abstraite org.apache.log4j.spi.Filter dans le package org.eclipse.hyades.logging.log4j n'autorise que la journalisation des org.eclipse.hyades.logging.events.cbe.CommonBaseEvent.
Une extension de la classe abstraite org.apache.log4j.Layout dans le package org.eclipse.hyades.logging.log4j permet de configurer les adjoncteurs de façon à ce qu'ils formatent les messages de journalisation org.eclipse.hyades.logging.events.cbe.CommonBaseEvent et org.apache.log4j.spi.LoggingEvent en XML. Ce formateur org.eclipse.hyades.logging.log4j.XmlLayout convertit le message de journalisation org.eclipse.hyades.logging.events.cbe.CommonBaseEvent ou org.apache.log4j.spi.LoggingEvent en XML sur la base du schéma Common Base Event version 1.0.1. Lors du formatage, le message de journalisation est vérifié pour s'assurer que la propriété de message de org.apache.log4j.spi.LoggingEvent implémente l'interface org.eclipse.hyades.logging.core.IExternalizableToXml (par exemple, org.eclipse.hyades.logging.events.cbe.CommonBaseEvent). Si tel est le cas, l'API externalizeCanonicalXmlString() est appelée à la place de la sérialisation XML. A défaut, le message de journalisation org.apache.log4j.spi.LoggingEvent est converti en objet Common Base Event à l'aide de org.eclipse.hyades.internal.logging.core.XmlGenerator et sérialisé en XML en appelant l'API externalizeCanonicalXmlString().
Une extension de la classe abstraite org.apache.log4j.AppenderSkeleton dans le package org.eclipse.hyades.logging.log4j permet de configurer les journaux d'événements de façon à ce qu'ils formatent les messages de journalisation org.eclipse.hyades.logging.events.cbe.CommonBaseEvent et org.apache.log4j.spi.LoggingEvent en agent de journalisation.
Cet adjoncteur org.eclipse.hyades.logging.log4j.LoggingAgentAppender vérifie si le message de journalisation org.eclipse.hyades.logging.events.cbe.CommonBaseEvent et org.apache.log4j.spi.LoggingEvent qui est journalisé dans un journal d'événements peut être journalisé sur la base du niveau de journalisation du filtre du journal d'événements et de l'adjoncteur. Si le message de journalisation doit être journalisé, un agent de journalisation est résolu avec le même nom que le journal d'événements dans lequel le message est journalisé. A défaut, vous pouvez utiliser l'adjoncteur org.eclipse.hyades.logging.log4j.SingleLoggingAgentAppender qui crée un agent de journalisation nommé adjoncteur d'agent de journalisation. Le message est formaté en XML à l'aide d'un org.eclipse.hyades.logging.log4j.XmlLayout et écrit dans l'agent de journalisation.
Exemple
Voici un exemple qui montre comment améliorer la prise en charge de la journalisation Apache Jakarta Log4J en illustrant la configuration et l'instrumentation requises tant pour les nouveaux utilisateurs que pour les utilisateurs existants de la prise en charge autonome et par plug-in de la journalisation Apache Jakarta Log4J. Pour plus d'informations, ouvrez Fichier > Nouveau > Exemple... > Journalisation Hyades > Exemple de journalisation Apache Log4J Hyades.
Concepts connexes
Modèle Common Base Event
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.