Ergebnisse der Implementierung überprüfen

Wenn Sie einen Implementierungsvorgang durchgeführt haben, überprüfen Sie, ob die Operation erfolgreich ausgeführt wurde.

Die Ergebnisse einer Implementierung können auf drei Arten geprüft werden: Überprüfen Sie außerdem das Systemprotokoll auf dem Zielsystem, auf dem der Broker implementiert wurde, um sicherzustellen, dass der Broker keine Fehler gemeldet hat.

Message Brokers Toolkit verwenden

Gehen Sie folgendermaßen vor, um eine Implementierung unter Verwendung des Workbenchs zu überprüfen:

  1. Wechseln Sie in die Ansicht 'Brokerverwaltung'.
  2. Erweitern Sie die Domänenansicht.
  3. Klicken Sie doppelt auf Ereignisprotokoll.
Nachdem der Implementierungsvorgang eingeleitet worden ist, wird eine Nachricht angezeigt, die den Eingang der Anforderung im Konfigurationsmanager bestätigt:
  • BIP0892I
Wenn der Implementierungsvorgang erfolgreich abschlossen ist, werden möglicherweise auch eine oder mehrere der folgenden Nachrichten angezeigt:
  • BIP4040I
  • BIP4045I
  • BIP2056I

Den Befehl 'mqsideploy' verwenden

Wenn Sie die Implementierung mithilfe des Befehls mqsideploy durchführen, werden numerische Werte vom Konfigurationsmanager und von allen von der Implementierung betroffenen Brokern zurückgegeben, um das Ergebnis anzuzeigen. Wenn die Implementierung erfolgreich war, gibt der Befehl '0' zurück. Details zu anderen eventuell zurückgegebenen Werten finden Sie im Abschnitt Befehl mqsideploy.

Konfigurationsmanager-Proxy-API verwenden

Wenn Sie eine Konfigurationsmanager-Proxy-Anwendung verwenden, können Sie sich zum Ermitteln des Ergebnisses einer Publish/Subscribe-Topologie-Implementierung an folgendem Beispielcode orientieren:
TopologyProxy t = cmp.getTopology();

boolean isDelta = true;
long timeToWaitMs = 10000;
DeployResult dr = topology.deploy(isDelta, timeToWaitMs);

System.out.println("Overall result = "+dr.getCompletionCode());

// Display overall log messages
Enumeration logEntries = dr.getLogEntries();
while (logEntries.hasMoreElements()) {
  LogEntry le = (LogEntry)logEntries.nextElement();
  System.out.println("General message: " + le.getDetail());
}

// Display broker specific information
Enumeration e = dr.getDeployedBrokers();
while (e.hasMoreElements()) {

  // Discover the broker
  BrokerProxy b = (BrokerProxy)e.nextElement();

  // Completion code for broker
  System.out.println("Result for broker "+b+" = " +
    dr.getCompletionCodeForBroker(b));

  // Log entries for broker
  Enumeration e2 = dr.getLotEntriesForBroker(b);
  while (e2.hasMoreElements()) {
    LogEntry le = (LogEntry)e2.nextElement();
    System.out.println("Log message for broker " + b +
      le.getDetail()));
  }
}
Die Methode deploy blockiert andere Prozesse, bis alle betroffenen Broker auf die Implementierungsanforderung geantwortet haben.

Wenn die Methode einen Wert zurückgibt, entspricht DeployResult dem Ergebnis der Implementierung zu dem Zeitpunkt, als die Methode den Wert zurückgegeben hat; das Objekt wird vom Konfigurationsmanager-Proxy nicht aktualisiert.

Wenn die Implementierungsnachricht nicht an den Konfigurationsmanager gesendet werden konnte, wird die Ausnahmebedingung ConfigManagerProxyLoggedException beim Implementieren ausgegeben. Wenn der Konfigurationsmanager die Implementierungsnachricht erhält, werden Protokollnachrichten für die gesamte Implementierung angezeigt, gefolgt von Beendigungscodes für die einzelnen Broker, die von der Implementierung betroffen sind. Der Beendigungscode entspricht einer der folgenden statischen Instanzen aus der Klasse CompletionCodeType:

Beendigungscode Beschreibung:
pending (anstehend) Die Implementierung befindet sich in einer Warteschleife und wird erst gesendet, wenn Sie den Befehl ConfigManagerProxy.sendUpdates() ausführen.
submitted (übergeben) Die Implementierungsnachricht wurde an den Konfigurationsmanager gesendet, jedoch wurde vor Ablauf des Zeitlimitintervalls keine Antwort empfangen.
initiated (initialisiert) Der Konfigurationsmanager hat angegeben, dass die Implementierung gestartet wurde, jedoch vor Ablauf des Zeitlimitintervalls keine Brokerantworten empfangen wurden.
successSoFar (bis zum gegenwärtigen Zeitpunkt erfolgreich) Der Konfigurationsmanager hat angegeben, dass die Implementierung gestartet wurde und einige - jedoch nicht alle - Broker vor Ablauf des Zeitlimitintervalls erfolgreich geantwortet haben. Es wurden keine negativen Antworten von Brokern empfangen.
success (erfolgreich) Der Konfigurationsmanager hat angegeben, dass die Implementierung gestartet wurde und alle relevanten Broker vor Ablauf des Zeitlimitintervalls erfolgreich geantwortet haben.
failure (fehlgeschlagen) Der Konfigurationsmanager hat angegeben, dass die Implementierung gestartet wurde und mindestens ein Broker eine negative Antwort zurückgegeben hat. Mithilfe der Methode getLogEntriesForBroker der Klasse DeployResult erhalten Sie weitere Informationen zum Implementierungsfehler. Diese Methode gibt eine Auflistung der verfügbaren LogEntry-Objekte zurück.
notRequired (nicht erforderlich) Die an den Konfigurationsmanager übergebene Implementierungsanforderung wurde nicht an den Broker gesandt, da die Brokerkonfiguration bereits aktualisiert wurde.
Zugehörige Informationen
API des Konfigurationsmanager-Proxys
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Feedback

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

af03970_