Mit der Standardereignis-Factory CBE-Inhalt generieren
Ein CBE-Content-Handler (Common Base Event) füllt Common Base Events mit Laufzeitinformationen von WebSphere Application Server. Dieser Content Handler kann auch eine CBE-Schablone verwenden, um Common Base Events mit Informationen zu füllen.
// Benannte Protokollfunktion (Logger) abrufen
Logger logger = Logger.getLogger("com.ibm.someLogger");
// In der Protokollfunktion protokollieren -- Der Standard-Content-Handler wird implizit
// dem CommonBaseEvent zugeordnet, das im CommonBaseEventLogRecord enthalten
// ist. logger.warning("MSG_KEY_001");
Wenn Sie im gezeigten Fall eine CBE-Schablone angeben möchten,
müssen Sie eine Datei Logger.properties mit einem eventfactory-Eintrag für com.ibm.someLogger
bereitstellen. Wenn eine gültige Schablone im Klassenpfad gefunden wird, verwendet die Ereignisfactory
der Protokollfunktion den Inhalt der angegebenen Schablone zusätzlich zu den Laufzeitinformationen von
WebSphere Application Server, um die Common Base Events zu füllen. Ist
die Schablone nicht im Klassenpfad
enthalten oder ist die Schablone ungültig, verwendet die Ereignisfactory der Protokollfunktion nur
die Laufzeitinformationen von WebSphere
Application Server, um die Common Base Events zu füllen.// Ereignisfactory vom globalen Home-Objekt für Ereignis-Factorys abrufen
EventFactory eventFactory = EventFactoryContext.getInstance().getEventFactoryHome().getEventFactory(templateName);
// Common Base Event erstellen
CommonBaseEvent commonBaseEvent = eventFactory.createCommonBaseEvent();
// Common Base Event unter Verwendung des Inhalts aus der Schablone (sofern zuvor angegeben)
// und den Laufzeitinformationen des Servers vervollständigen.
eventFactory.getContentHandler().completeEvent(commonBaseEvent);
Wenn in dem gezeigten Beispiel
die für templateName angegebene Schablone im Klassenpfad enthalten und gültig ist,
gibt das Home-Objekt für Ereignis-Factorys eine Ereignisfactory
zurück, die einen Content-Handler verwendet, der den Inhalt der Schablone mit den
Laufzeitinformationen von WebSphere
Application Server kombiniert, um Common Base Events
zu füllen. Wenn die Schablone nicht im Klassenpfad enthalten oder ungültig ist, gibt das Home-Objekt für Ereignis-Factorys
eine Ereignisfactory zurück, die einen Content-Handler verwendet, der nur die Laufzeitinformationen
von WebSphere Application Server
zum Füllen von Common Base Events verwendet.Der Standard-Content-Handler füllt die Common Base Events in der Serverumgebung mit den folgenden Laufzeitinformationen:
- CommonBaseEvent.globalInstanceId
- Wert: Die eindeutige Satz-ID.
Setzen Sie diesen Wert nur, wenn der Wert von CommonBaseEvent.globalInstanceId null ist, bevor die Methode completeEvent aufgerufen wird.
- CommonBaseEvent.msg
- Wert: Eine lokalisierte Nachricht, die auf dem Element "MsgDataElement" basiert.
Setzen Sie diesen Wert nur, wenn der Wert von CommonBaseEvent.msg null ist, bevor die Methode completeEvent aufgerufen wird.
- CommonBaseEvent.severity
- Wert: Setzen Sie diesen Wert basierend auf der im CommonBaseEventLogRecord-Satz
angegebenen Stufe. Wenn eine Stufe größer-gleich Level.SEVERE gesetzt ist, geben Sie 50 an. Wenn eine Stufe größer-gleich
Level.WARNING gesetzt ist, geben Sie 30 an. Der Standardwert ist 10.
Setzen Sie diesen Wert nur, wenn der Wert von CommonBaseEvent.severity null ist, bevor die Methode completeEvent aufgerufen wird.
- CommonBaseEvent.ComponentIdentification.component
- Wert: Setzen Sie diesen Wert basierend auf dem LoggerName-Wert im CommonBaseEventLogRecord-Satz.
Setzen Sie diesen Wert nur, wenn der Wert von CommonBaseEvent.ComponentIdentification null ist, bevor die Methode completeEvent aufgerufen wird.
- CommonBaseEvent.ComponentIdentification.componentIdType
- Wert: "Unknown"
Setzen Sie diesen Wert nur, wenn der Wert von CommonBaseEvent.ComponentIdentification.componentIdType null ist, bevor die Methode completeEvent aufgerufen wird.
- CommonBaseEvent.ComponentIdentification.executionEnvironment
- Wert: OSname[OSarch]#OSversion
Setzen Sie diesen Wert nur, wenn der Wert von CommonBaseEvent.ComponentIdentification.executionEnvironment null ist, bevor die Methode completeEvent aufgerufen wird.
- CommonBaseEvent.ComponentIdentification.instanceId
- Wert: Zellenname\Knotenname\Servername
Setzen Sie diesen Wert nur, wenn der Wert von CommonBaseEvent.ComponentIdentification.instanceId null ist, bevor die Methode completeEvent aufgerufen wird. Verwenden Sie diese Einstellung nur in einer Serverumgebung, da dieser Wert in einer Clientanwendung ignoriert wird.
- CommonBaseEvent.ComponentIdentification.location
- Wert: Der Hostname.
Setzen Sie diesen Wert nur, wenn der Wert von CommonBaseEvent.ComponentIdentification.location und der Wert von CommonBaseEvent.ComponentIdentification.locationType null sind, bevor die Methode completeEvent aufgerufen wird.
- CommonBaseEvent.ComponentIdentification.locationType
- Wert: Der Hostname.
Setzen Sie diesen Wert nur, wenn der Wert von CommonBaseEvent.ComponentIdentification.location und der Wert von CommonBaseEvent.ComponentIdentification.locationType null sind, bevor die Methode completeEvent aufgerufen wird.
- CommonBaseEvent.ComponentIdentification.processId
- Wert: Eine intern generierte Darstellung der Prozessnummer.
Setzen Sie diesen Wert nur, wenn der Wert von CommonBaseEvent.ComponentIdentification.processId null ist, bevor die Methode completeEvent aufgerufen wird.
- CommonBaseEvent.ComponentIdentification.subComponent
- Wert: Setzen Sie diesen Wert basierend auf den Werten von sourceClassName und sourceMethodName, die in
sourceClassName.sourceMethodName im CommonBaseEventLogRecord-Satz definiert sind.
Setzen Sie diesen Wert nur, wenn der Wert von CommonBaseEvent.ComponentIdentification.subComponent null ist, bevor die Methode completeEvent aufgerufen wird, und wenn sourceClassName und sourceMethodName gesetzt sind.
- CommonBaseEvent.ComponentIdentification.threadId
- Wert: Setzen Sie diesen Wert auf den Namen des JVM-Thread (Java™ Virtual
Machine).
Setzen Sie diesen Wert nur, wenn der Wert von CommonBaseEvent.ComponentIdentification.threadId null ist, bevor die Methode completeEvent aufgerufen wird.
- CommonBaseEvent.ComponentIdentification.componentType
- Wert: http://www.ibm.com/namespaces/autonomic/WebSphereApplicationServer
Setzen Sie diesen Wert nur, wenn der Wert von CommonBaseEvent.ComponentIdentification.componentType null ist, bevor die Methode completeEvent aufgerufen wird.
- CommonBaseEvent.MsgDataElement.msgLocale
- Wert: Setzen Sie diesen Wert basierend auf der Standardländereinstellung der JVM.
Setzen Sie diesen Wert nur, wenn der Wert von CommonBaseEvent.msg null ist, bevor die Methode completeEvent aufgerufen wird.
- CommonBaseEvent.Situation.categoryName
- Wert: ReportSituation
Setzen Sie diesen Wert nur, wenn der Wert von CommonBaseEvent.Situation null ist, bevor die Methode completeEvent aufgerufen wird.
- CommonBaseEvent.Situation.situationType.type
- Wert: ReportSituation
Setzen Sie diesen Wert nur, wenn der Wert von CommonBaseEvent.Situation null ist, bevor die Methode completeEvent aufgerufen wird.
- CommonBaseEvent.Situation.situationType.reasoningScope
- Wert: EXTERNAL
Setzen Sie diesen Wert nur, wenn der Wert von CommonBaseEvent.Situation null ist, bevor die Methode completeEvent aufgerufen wird.
- CommonBaseEvent.Situation.situationType.reportCategory
- Wert: LOG
Setzen Sie diesen Wert nur, wenn der Wert von CommonBaseEvent.Situation null ist, bevor die Methode completeEvent aufgerufen wird.
Der Wert von sourceComponentIdentification wird angegeben, wenn keine reporterComponentIdentification-ID vorhanden ist, wenn die Methode completeEvent im Content-Handler aufgerufen wird. Andernfalls wird ein Wert für reporterComponentIdentification angegeben.