Eine Ereignisquelle ist ein Punkt in einem Nachrichtenfluss, an dem ein
Überwachungsereignis ausgegeben werden kann. Jede Ereignisquelle besitzt eine Reihe von
Eigenschaften, die den Inhalt der von ihr ausgegebenen Überwachungsereignisse steuern.
- Zeigen Sie die Eigenschaften für den Knoten an.
- Wählen Sie die Registerkarte Überwachung aus.
- Klicken Sie auf Hinzufügen.
Daraufhin wird das Fenster Eintrag hinzufügen geöffnet.
- Füllen Sie das Feld Ereignisquelle aus.
Das Feld verfügt über eine Dropdown-Liste mit allen Ereignissen, die für diesen Knoten definiert
werden können. Aus den Ereignisquelleninformationen ergeben sich die Werte für die Attribute des
Elements wmb:eventPointData/wmb:messageFlowData/wmb:node des Ereignisses.
Nachdem Sie die Ereignisquelle ausgewählt haben, wird der zugehörige Wert für
Ereignisquellenadresse als schreibgeschützte Eigenschaft angezeigt.
Tipp: Falls Sie sich später entschließen, Ereignisse mit dem Befehl
mqsichangeflowmonitoring zu aktivieren oder zu
inaktivieren, müssen Sie einen Wert für Ereignisquellenadresse angeben, nicht den
Ereignisnamen.
- Geben Sie die Details zu Ereignisname an; wählen Sie entweder
Literal oder Datenposition aus.
Jedes Überwachungsereignis besitzt einen Namen, der in das Attribut
wmb:eventPointData/wmb:eventIdentity/@wmb:eventName des Ereignisses übernommen
wird. Die Standardnamen sind in der folgenden Tabelle aufgeführt:
Ereignisquelle |
Standardereignisname |
Beispiel |
Transaktionsstart |
Knotenbezeichnung.TransactionStart |
MQInput.TransactionStart |
Transaktionsende |
Knotenbezeichnung.TransactionEnd |
MQInput.TransactionEnd |
Rollback der Transaktion |
Knotenbezeichnung.TransactionRollback |
MQInput.TransactionRollback |
Terminal |
Knotenbezeichnung.Terminalbezeichnung.Terminal |
MQInput.OutTerminal |
Sie haben folgende
Möglichkeiten, um den Standardwert zu überschreiben:
- Geben Sie eine alternative Literalzeichenfolge an.
- Geben Sie eine XPath-Abfrage an; die Abfrage extrahiert den Ereignisnamen aus einem Feld in der
Eingabenachricht. Klicken Sie auf Bearbeiten, um das
XPath-Ausdruckserstellungsprogramm zu verwenden.
- Optional: Vervollständigen Sie den Abschnitt für den Ereignisfilter, indem Sie einen
XPath-Ausdruck angeben, um zu steuern, ob das Ereignis ausgegeben werden soll. Führen Sie eine der folgenden Aktionen aus:
- Geben Sie den Ausdruck ein (z. B. $Body/StockTrade/Details/Value
> 10000) oder
- Klicken Sie auf Bearbeiten, um das
XPath-Ausdruckserstellungsprogramm zu starten.
Der Ausdruck muss wahr oder falsch sein und kann sich auf Felder in der
Nachrichtenbaumstruktur oder an anderer Stelle im Nachrichtenaufbau beziehen.
Der Standardwert ist
true(), d. h., das Ereignis wird immer erzeugt.
Mithilfe dieser Funktion können Sie die Ereignisausgaben an Ihre Geschäftsanforderung anpassen, indem Sie Ereignisse ausfiltern, die bestimmten Regeln nicht
entsprechen. Auf diese Weise können Sie die Anzahl der ausgegebenen Ereignisse reduzieren und so
die Auslastung der Überwachungsanwendung verringern.
- Optional: Füllen Sie den Abschnitt Ereignisnutzlast aus, wenn das
Ereignis ausgewählte Datenfelder, die aus der Nachricht extrahiert werden, enthalten soll. Klicken
Sie auf Hinzufügen, um das Dialogfenster Datenposition
hinzufügen zu öffnen. Führen Sie eine der folgenden Aktionen aus:
- Geben Sie die Position ein (z. B. $LocalEnvironment/File/Name).
- Klicken Sie auf Bearbeiten, um das
XPath-Ausdruckserstellungsprogramm zu starten.
Sie können beliebig viele Felder aus den Nachrichtendaten extrahieren und in das Ereignis
einschließen. Es kann sich um einfache oder komplexe Felder handeln.
Einfacher Inhalt befindet sich
im Feld wmb:applicationData/wmb:simpleContent des Ereignisses; komplexe Daten
befinden sich im Feld wmb:applicationData/wmb:complexContent.
Diese Funktion wird häufig zur Kommunikation wichtiger Geschäftsdaten in einem Geschäftsereignis
verwendet. Wenn das Ereignis den Eingabebitstrom enthält, können mit dieser Funktion auch
Schlüsselfelder extrahiert werden. Dies gibt anderen Anwendungen die Möglichkeit, ein Prüfprotokoll
bereitzustellen oder fehlgeschlagene Nachrichten erneut zu übergeben.
- Optional: Wählen Sie das Feld Bitstromdaten in Nutzlast einschließen
aus, wenn das Ereignis Nachrichtenbitstromdaten erfassen soll.
- Content
- Wählen Sie Header, Hauptteil oder Alle aus.
- Encoding
- Wählen Sie Base64, HexBinary oder CData (der
Originaltext, ohne Codierung) aus.
- Optional: Wählen Sie die Registerkarte Korrelation aus, um Details zur
Ereigniskorrelation anzugeben.
- Geben Sie die Details zur Ereigniskorrelation ein. Informationen zur
Korrelation finden Sie im Abschnitt Korrelation und Überwachungsereignisse.
Jedes Überwachungsereignis muss mindestens ein und kann maximal drei Korrelationsattribute
enthalten. Wenn Sie keine Korrelationsinformationen angeben, legt die erste Ereignisquelle im
Nachrichtenfluss eine eindeutige Kennung an, die auch von allen weiteren Ereignisquellen in
derselben Transaktion verwendet wird.
- Optional: Geben Sie die Details für Lokaler Transaktionskorrelator an.
- Automatisch
- Es wird der lokale Korrelationswert verwendet, der vom letzten Ereignis für diesen Aufruf des
Nachrichtenflusses verwendet wurde. Falls noch kein lokaler Korrelationswert existiert, wird ein
neuer eindeutiger Wert generiert.
- Geben Sie die Position des Korrelators an
- Geben Sie einen Wert ein, oder klicken Sie auf 'Bearbeiten', um das
XPath-Ausdruckserstellungsprogramm zu starten. Der lokale Korrelationswert wird von der angegebenen
Position in der Nachrichtenbaumstruktur gelesen. Stellen Sie sicher, dass die angegebene Position
einen Korrelationswert enthält, der für diesen Aufruf des Nachrichtenflusses eindeutig ist.
- Optional: Geben Sie die Details für Übergeordneter
Transaktionskorrelator an, um ein Korrelationsfeld aus der übergeordneten Transaktion
zu extrahieren.
- Automatisch
- Es wird der übergeordnete Korrelationswert verwendet, der vom letzten Ereignis für diesen
Aufruf des Nachrichtenflusses verwendet wurde. Falls noch kein übergeordneter Korrelationswert
existiert, wird kein übergeordneter Korrelationswert verwendet.
- Geben Sie die Position des Korrelators an
- Geben Sie einen Wert ein, oder klicken Sie auf 'Bearbeiten', um das
XPath-Ausdruckserstellungsprogramm zu starten. Der übergeordnete Korrelationswert wird von der
angegebenen Position in der Nachrichtenbaumstruktur gelesen. Stellen Sie sicher, dass die
angegebene Position einen geeigneten übergeordneten Korrelationswert enthält.
- Optional: Geben Sie die Details für Globaler Transaktionskorrelator an,
um ein Korrelationsfeld aus einer globalen Transaktion zu extrahieren.
- Automatisch
- Es wird der globale Korrelationswert verwendet, der vom letzten Ereignis für diesen Aufruf des
Nachrichtenflusses verwendet wurde. Falls noch kein globaler Korrelationswert existiert, wird kein
globaler Korrelationswert verwendet.
- Geben Sie die Position des Korrelators an
- Geben Sie einen Wert ein, oder klicken Sie auf 'Bearbeiten', um das
XPath-Ausdruckserstellungsprogramm zu starten. Der globale Korrelationswert wird von der
angegebenen Position in der Nachrichtenbaumstruktur gelesen. Stellen Sie sicher, dass die
angegebene Position einen geeigneten globalen Korrelationswert enthält.
- Optional: Legen Sie fest, ob die Ausgabe von Überwachungsereignissen durch einen Nachrichtenfluss mit der
Nachrichtenflusstransaktion koordiniert wird, in einer unabhängigen Arbeitseinheit erfolgt oder in
keiner Arbeitseinheit enthalten ist.
Klicken Sie auf die Registerkarte
Transaktion und wählen Sie
die geeignete Option für
Ereignisarbeitseinheit aus.
- Nachrichtenfluss
- Das Ereignis und alle anderen Ereignisse mit dieser Einstellung werden nur
ausgegeben, wenn der Nachrichtenfluss seine Arbeitseinheit erfolgreich festschreibt.
Wenn das
Transaktionsstartereignis in die Arbeitseinheit des Nachrichtenflusses eingeschlossen werden soll,
die Nachrichtenverarbeitung aber fehlschlägt und diese Arbeitseinheit nicht veröffentlicht wird,
wird das Transaktionsstartereignis in eine unabhängige Arbeitseinheit eingeschlossen. Dadurch wird
sichergestellt, dass Ihre Überwachungsanwendung ein Ereignispaar (Start und Rollback) empfängt und
kein isoliertes Rollback-Ereignis.
- Unabhängig
- Das Ereignis wird in einer zweiten Arbeitseinheit ausgegeben, die von der
Hauptarbeitseinheit unabhängig ist. Das Ereignis und alle anderen Ereignisse mit dieser Einstellung
werden unabhängig davon ausgegeben, ob die Hauptarbeitseinheit erfolgreich festgeschrieben wird.
Eine unabhängige Transaktion kann nur gestartet werden, wenn die Haupttransaktion entweder
festgeschrieben oder zurückgesetzt wurde.
Wenn die Eigenschaft
Festschreibungszähler des Nachrichtenflusses größer als 1 ist
(Konfigurierbare Nachrichtenflusseigenschaften) oder die Eigenschaft Festschreibung nach
Nachrichtengruppierung festgelegt ist (Nachrichten in einer WebSphere MQ-Nachrichtengruppierung empfangen), werden die für
die unabhängige Transaktion vorgesehenen Ereignisse stattdessen ohne Synchronisationspunkt
ausgegeben. Dies wird durch die Anzeige einer entsprechenden Nachricht bestätigt.
- None
- Das Ereignis wird ohne Synchronisationspunkt ausgegeben (nicht in einer
Arbeitseinheit). Das Ereignis wird ausgegeben, wenn die Nachricht die Ereignisquelle durchläuft
und kann sofort gelesen werden.
Nicht alle diese Optionen sind für alle Ereignistypen verfügbar. Die Standardwerte und die
zulässigen Werte sind in der folgenden Tabelle aufgeführt:
Ereignisquelle |
Zulässige Werte |
Standardwert |
Transaktionsstart |
- Nachrichtenfluss
- Unabhängig
- Ohne
|
Nachrichtenfluss |
Transaktionsende |
|
Nachrichtenfluss |
Rollback der Transaktion |
|
Unabhängig |
Terminal |
- Nachrichtenfluss
- Unabhängig
- Ohne
|
Nachrichtenfluss |
- Klicken Sie auf Finish (Fertigstellen).
Die Tabelle Ereignisse auf der Registerkarte 'Überwachung' in der Ansicht
'Eigenschaften' für den Knoten wird mit den gerade hinzugefügten Details zu dem Ereignis
aktualisiert und das Ereignis aktiviert.
- Optional: Inaktivieren Sie das Ereignis.
- Speichern Sie den Nachrichtenfluss.