Créez un contenu d'événement CBE avec la fabrique d'événements par défaut
Un gestionnaire de contenu d'événement CBE par défaut insère les informations d'exécution de WebSphere Application Server dans des événements CBE. Ce gestionnaire de contenu peut également utiliser un modèle CBE pour remplir des événements CBE.
// Obtenez un consignateur nommé
Logger logger = Logger.getLogger("com.ibm.someLogger");
// Consignez-le dans le consignateur -- implicitement le gestionnaire de contenu par défaut
// sera associé au CommonBaseEvent contenu dans
// CommonBaseEventLogRecord.
logger.warning("MSG_KEY_001");
Pour définir un modèle d'événement CBE dans le cas précédent, un fichier Logger.properties
devra être fourni avec une entrée de fabrique d'événements pour com.ibm.someLogger.
Si un modèle valide est trouvé sur le chemin de classe, la fabrique d'événements du consignateur utilisera non seulement les informations
d'exécution de WebSphere Application Server mais également le
contenu du modèle spécifié lors du chargement des événements CBE. Si le modèle n'est pas trouvé sur le chemin de classe
ou n'est pas valide, la fabrique d'événements du consignateur n'utilisera que les informations d'exécution de
WebSphere Application Server lors
du chargement des événements CBE.// Demandez la fabrique d'événements à partir de l'interface home globale de la fabrique d'événements
EventFactory eventFactory =
EventFactoryContext.getInstance().getEventFactoryHome().getEventFactory(templateName);
// Créez un événement CBE
CommonBaseEvent commonBaseEvent = eventFactory.createCommonBaseEvent();
// Complétez l'événement CBE en utilisant un contenu du modèle (si précisé précédemment)
// et des informations d'exécution du serveur.
eventFactory.getContentHandler().completeEvent(commonBaseEvent);
Dans l'exemple précédent, si le modèle référencé par
templateName est trouvé sur le chemin de classes et s'il est valide, l'interface home de la fabrique d'événements redeviendra une
fabrique d'événements utilisant un gestionnaire de contenu combinant le contenu du modèle et les informations d'exécution de
WebSphere Application Server lors du chargement des événements
CBE. Si le modèle n'est pas trouvé dans le chemin de classes ou s'il n'est pas valide, l'interface home de la fabrique d'événements redeviendra une
fabrique d'événements utilisant un gestionnaire de contenu n'utilisant que les informations d'exécution de
WebSphere Application Server lors du chargement des événements
CBE.Le gestionnaire de contenu par défaut charge les événements CBE avec les informations suivantes dans l'environnement serveur :
- CommonBaseEvent.globalInstanceId
- Valeur : unique_record_id
Définissez cette valeur uniquement si la valeur CommonBaseEvent.globalInstanceId est null avant l'appel de la méthode completeEvent.
- CommonBaseEvent.msg
- Valeur : message localisé basé sur l'élément MsgDataElement.
Définissez cette valeur uniquement si le message CommonBaseEvent.msg est null avant l'appel de la méthode completeEvent.
- CommonBaseEvent.severity
- Valeur : Définissez cette valeur selon la valeur de niveau définie sur l'enregistrement CommonBaseEventLogRecord, si le
niveau >= Level.SEVERE, indiquez 50 ; si le niveau >= Level.WARNING, indiquez 30 ; la valeur par défaut est 10.
Définissez cette valeur uniquement si la valeur CommonBaseEvent.severity est null avant l'appel de la méthode completeEvent.
- CommonBaseEvent.ComponentIdentification.component
- Valeur : Définissez-la en vous basant sur la valeur LoggerName définie sur l'enregistrement CommonBaseEventLogRecord.
Définissez cette valeur uniquement si CommonBaseEvent.ComponentIdentification.component est null avant l'appel de la méthode completeEvent.
- CommonBaseEvent.ComponentIdentification.componentIdType
- Valeur : "Unknown"
Définissez cette valeur uniquement si CommonBaseEvent.ComponentIdentification.componentIdType est null avant l'appel de la méthode completeEvent.
- CommonBaseEvent.ComponentIdentification.executionEnvironment
- Valeur : OSname[OSarch]#OSversion
Définissez cette valeur uniquement si la valeur CommonBaseEvent.ComponentIdentification.executionEnvironment est null avant l'appel de la méthode completeEvent.
- CommonBaseEvent.ComponentIdentification.instanceId
- Valeur : cellName\nodeName\serverName
Définissez cette valeur uniquement si la valeur CommonBaseEvent.ComponentIdentification.instanceId est null avant l'appel de la méthode completeEvent. Ne la définissez que dans un environnement serveur car elle est ignorée dans une application client.
- CommonBaseEvent.ComponentIdentification.location
- Valeur : Nom d'hôte
Définissez cette valeur uniquement si les valeurs CommonBaseEvent.ComponentIdentification.location et the CommonBaseEvent.ComponentIdentification.locationType sont null avant l'appel de la méthode completeEvent.
- CommonBaseEvent.ComponentIdentification.locationType
- Valeur : Nom d'hôte
Définissez cette valeur uniquement si les valeurs CommonBaseEvent.ComponentIdentification.location et the CommonBaseEvent.ComponentIdentification.locationType sont null avant l'appel de la méthode completeEvent.
- CommonBaseEvent.ComponentIdentification.processId
- Valeur : Représentation générée en interne du numéro de processus.
Définissez cette valeur uniquement si la valeur CommonBaseEvent.ComponentIdentification.processId est null avant l'appel de la méthode completeEvent
- CommonBaseEvent.ComponentIdentification.subComponent
- Valeur : Définissez-la en vous basant sur les valeurs des noms sourceClassName et sourceMethodName définis sur le
nom sourceClassName.sourceMethodName de l'enregistrement CommonBaseEventLogRecord.
Définissez cette valeur uniquement si la valeur CommonBaseEvent.ComponentIdentification.subComponent est null avant l'appel de la méthode completeEvent et avant que les noms sourceClassName et sourceMethodName ne soient définis.
- CommonBaseEvent.ComponentIdentification.threadId
- Valeur : Attribution de la valeur du nom de l'unité d'exécution de la machine virtuelle Java™ (JVM).
Définissez cette valeur uniquement si la valeur CommonBaseEvent.ComponentIdentification.threadId est null avant l'appel de la valeur completeEvent.
- CommonBaseEvent.ComponentIdentification.componentType
- Valeur : http://www.ibm.com/namespaces/autonomic/WebSphereApplicationServer
Définissez cette valeur uniquement si la valeur CommonBaseEvent.ComponentIdentification.componentType est null avant l'appel de la méthode completeEvent.
- CommonBaseEvent.MsgDataElement.msgLocale
- Valeur : Définissez-la en vous basant sur les paramètres régionaux par défaut de la JVM.
Définissez cette valeur uniquement si la valeur CommonBaseEvent.msg est null avant l'appel de la méthode completeEvent.
- CommonBaseEvent.Situation.categoryName
- Valeur : ReportSituation
Définissez cette valeur uniquement si la valeur CommonBaseEvent.Situation est null avant l'appel de la méthode completeEvent.
- CommonBaseEvent.Situation.situationType.type
- Valeur : ReportSituation
Définissez cette valeur uniquement si la valeur CommonBaseEvent.Situation est null avant l'appel de la méthode completeEvent.
- CommonBaseEvent.Situation.situationType.reasoningScope
- Valeur : EXTERNAL
Définissez cette valeur uniquement si la valeur CommonBaseEvent.Situation est null avant l'appel de la méthode completeEvent.
- CommonBaseEvent.Situation.situationType.reportCategory
- Valeur : LOG
Définissez cette valeur uniquement si la valeur CommonBaseEvent.Situation est null avant l'appel de la méthode completeEvent.
La valeur sourceComponentIdentification est chargée s'il n'existe aucun identificateur reporterComponentIdentification ID lors de l'appel de la méthode completeEvent sur le gestionnaire de contenu. Sinon, c'est l'identificateur reporterComponentIdentification qui est chargé.