Beginn der Änderung

Nachrichtenkataloge erstellen

Erstellen Sie Ihre eigenen Nachrichtenkataloge, und schreiben Sie auf diese Weise angepasste Einträge in das lokale Fehlerprotokoll.

Bei manchen Fehlern und anderen Situationen ist es ratsam, Informationen in das Fehlerprotokoll zu schreiben, um nachvollziehen zu können, was in einem Nachrichtenfluss passiert. Über die integrierten Throw- und Trace-Knoten können Sie Einträge in dem Protokoll generieren. Sie haben aber auch die Möglichkeit, eigene Knoten und Benutzerausgänge zu erstellen und von den benutzerdefinierten Erweiterungen aus Einträge in das Protokoll zu schreiben.

Folgende Nachrichtensätze können geschrieben werden:

Beginn der ÄnderungDie Anweisungen in diesem Abschnitt beschreiben, wie Nachrichtenkataloge für C-Programme erstellt werden. Informationen zur Erstellung eines Java-Ressourcenpakets finden Sie in der Dokumentation zu Java 2 Platform Standard Edition.Ende der Änderung

Lesen Sie den entsprechenden Abschnitt für die Betriebsumgebung Ihres Brokers:

Windows-Nachrichtenquelle erstellen und installieren

Unter Windows muss der zusätzliche Nachrichtenkatalog in Form einer DLL-Datei erstellt werden. Die DLL-Datei enthält Definitionen Ihrer Ereignisnachrichten, damit die Ereignisanzeige ein lesbares Format anzeigen kann, basierend auf der von Ihrer Anwendung geschriebenen Ereignisnachricht. Wenn Sie einen Nachrichtenkatalog kompilieren, wird eine Headerdatei erstellt, die für jede Ereignisnachrichtennummer, die Sie erstellt haben, symbolische Werte definiert. Sie müssen die Headerdatei in Ihre Anwendung aufnehmen.

So erstellen Sie eine Ereignisquelle für den Windows-Ereignisprotokolldienst:

  1. Erstellen Sie eine Eingabedatei des Nachrichten-Compilers (.mc) mit der Quelle für Ihre Ereignisnachrichten. Suchen Sie auf der Microsoft Developer Network-Website unter .mc file nach Details zum Format dieser Eingabedatei.
  2. Kompilieren Sie die Nachrichtendatei, und erstellen Sie damit eine Eingabedatei für den Ressourcen-Compiler:
    mc -v -w -s -h c:\mymessages -r c:\mymessages mymsg.mc

    Dabei gilt: c:\mymessages ist die Position für die Ausgabedateien, und mymsg.mc ist der Name der Eingabedatei.

    Der Nachrichten-Compiler erzeugt eine Ausgabeheaderdatei (.h) mit symbolischen #defines, die den einzelnen in der Eingabedatei .mc codierten Nachrichtennummern zugeordnet sind. Fügen Sie diese Headerdatei ein, wenn die Quellendatei einer benutzerdefinierten Erweiterung kompiliert wird, die eine Dienstprogrammfunktion (z. B. CciLog) verwendet, um eine von Ihnen definierte Ereignisnachricht zu schreiben. Im Argument messageNumber für die Dienstprogrammfunktion muss der entsprechende in der Ausgabeheaderdatei als Hash definierte Wert verwendet werden.

  3. Kompilieren Sie die Ausgabedatei (.rc) aus dem Nachrichten-Compiler, um eine Ressourcendatei (.res) zu erstellen:
    RC /v Ausgabedatei.rc
  4. Erstellen Sie aus der Datei .res eine Ressourcen-DLL-Datei:
    LINK /DLL /NOENTRY Ressourcendatei.res
  5. Beginn der ÄnderungHängen Sie die Position der Ressourcen-DLL-Datei wie im folgenden Beispiel gezeigt an die Umgebungsvariable MQSI_CONSOLE_NLSPATH an:
    set MQSI_CONSOLE_NLSPATH=%MQSI_CONSOLE_NSPATH%;c:\messages
    Hierzu können Sie ein benutzerdefiniertes Umgebungsscript in Ihrem Arbeitsverzeichnis erstellen. Die Standardposition ist %ALLUSERSPROFILE%\Application Data\IBM\MQSI\common\profiles, wobei %ALLUSERSPROFILE% für die Umgebungsvariable steht, die das Systemarbeitsverzeichnis definiert. Der Standardwert ist C:\Dokumente und Einstellungen\All Users. Ihr Computer weist möglicherweise einen anderen tatsächlichen Wert auf.Ende der Änderung
  6. Installieren Sie die Ereignisquelle im Windows-Ereignisprotokolldienst:
    1. Starten Sie den Windows-Registry-Editor:
      regedit
    2. Erstellen Sie einen neuen Registrierungsunterschlüssel für Ihre benutzerdefinierte Erweiterung unter der vorhandenen Struktur:
      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Application

      Klicken Sie mit der rechten Maustaste auf Anwendung, und wählen Sie Neu > Schlüssel aus. Der neue Schlüssel wird direkt unter dem Schlüssel 'Application' erstellt (nicht unter dem Schlüssel 'WebSphere Message Broker'). Sie müssen dem Schlüssel den Namen zuordnen, den Sie für messageSource in einer Dienstprogrammfunktion der benutzerdefinierten Erweiterung (z. B. CciLog) oder als die Eigenschaft des integrierten Knotens angeben, den Sie in Ihren Nachrichtenfluss eingeschlossen haben.

      Für diesen Eintrag müssen Sie folgende Werte erstellen:

      EventMessageFile
      Dieser Zeichenfolgewert muss den vollständig qualifizierten Pfad für die DLL-Datei enthalten, die Sie erstellt haben und die Ihre Nachrichten enthalten soll. Dieser Eintrag repräsentiert den Nachrichtenkatalog.
      TypesSupported
      Setzen Sie den DWORD-Wert auf "7".

XPG/4-Katalog für Linux, UNIX und z/OS erstellen

Beginn der Änderung

Auf Linux-, UNIX- und z/OS-Systemen werden die Nachrichten in die Funktion SYSLOG geschrieben. Wenn Sie Ihren eigenen Nachrichtenkatalog verwenden möchten, müssen Sie einen XPG/4-Nachrichtenkatalog erstellen.

Der Prozess zur Erstellung eines Nachrichtenkatalogs (CAT-Datei) ist von dem Prozess abhängig, auf dem der Katalog erstellt wird. Sie verwenden normalerweise die Befehle gencat (Erstellen oder Ändern eines Nachrichtenkatalogs) und dspcat (Anzeige aller Nachrichtenkataloge oder eines Teils davon). Durch den Befehl gencat werden Textdateien mit Ihrer Textnachricht zusammengefügt, um einen formatierten Katalog zu erstellen oder zu ändern. Die Textdateien haben normalerweise die Dateierweiterung .msg.

Sie müssen die Position des Nachrichtenkatalogs an die Umgebungsvariable NLSPATH anhängen. Mit %L und %N werden die Ländereinstellung und der Katalogname dargestellt, beispielsweise folgendermaßen:
export NLSPATH=${NLSPATH}:${MY_INST_PATH}/messages/%L/%N:${MY_INST_PATH}/messages/En_US/%N
In diesem Beispiel wird die englische Version später im Suchpfad fest codiert, um sicherzustellen, dass Nachrichten auch in Ländereinstellungen ohne CAT-Datei angezeigt werden.
Die in den MSG-Dateien definierten Nachrichten können Variablen enthalten, die während der Ausführung ersetzt werden. Diese Variablen müssen das Format {Nummer} haben, wobei {Nummer} für die Nummer der Nachrichteneinfügung in geschweiften Klammern steht. Die erste Nachrichteneinfügung hat die Nummer 0. Beispiel:
1234 "MSG1234E: \ 
Syntaxfehler. \n 
Der Wert '{0}' ist für Eigenschaft '{1}' nicht gültig.\n
Korrigieren Sie den Wert, und geben Sie den Befehl erneut aus.\n"

Wenn Sie einen Nachrichtenkatalog auf einem Betriebssystem erstellen, kann er nicht auf ein anderes Betriebssystem übertragen werden, da die Kataloge binär codiert sind. Sie können aber die gleichen MSG-Dateien als Eingabe für den Befehl gencat auf einem anderen System verwenden.

Die relevanten Informationen dazu finden Sie in der Dokumentation Ihres Betriebssystems. Beispiel:

  • AIX platform Informationen für AIX finden Sie im Information Center unter Commands Reference.
  • z/OS platform Informationen für z/OS finden Sie im LibraryCenter unter UNIX System Services Command Reference.

Sie müssen auch die Informationen zu zusätzlich unterstützten Ländereinstellungen prüfen, wenn Sie Nachrichten in anderen Ländereinstellungen als amerikanischem Englisch verwenden möchten.

Ende der Änderung
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Feedback

Copyright IBM Corporation 1999, 2009Copyright IBM Corporation 1999, 2009.
Letzte Aktualisierung : 2009-02-17 15:29:55

as04521_

Ende der Änderung