Ergebnisse der Einsetzung überprüfen

Wenn Sie einen Implementierungsvorgang durchgeführt haben, überprüfen Sie, ob die Operation erfolgreich ausgeführt wurde. Es gibt drei Möglichkeiten, das Ergebnis einer Implementierung zu überprüfen: Ü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 das 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

Der Befehl gibt numerische Werte vom Konfigurationsmanager und allen von der Implementierung betroffenen Brokern zurück, um den Ausgang der Implementierung anzuzeigen. War der Befehl erfolgreich, wird 0 zurückgegeben. Unter dem Thema mqsideploy erfahren Sie Einzelheiten zu weiteren gegebenenfalls angezeigten Werten.

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() wird blockiert, 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 gefolgt von Beendigungscodes speziell für jeden Broker angezeigt, der von der Implementierung betroffen ist. Der Beendigungscode entspricht einer der folgenden statischen Instanzen aus der Klasse com.ibm.broker.config.proxy.CompletionCodeType:

Beendigungscode Beschreibung:
pending (anstehend) Die Einsetzung 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 das Zeitlimit für den Empfang einer Antwort überschritten.
initiated (initialisiert) Der Konfigurationsmanager hat eine Antwort gesendet, in der angezeigt wird, dass die Einsetzung gestartet wurde. Es wurden jedoch keine Brokerantworten vor Ablauf des Zeitlimits empfangen.
successSoFar (bis zum gegenwärtigen Zeitpunkt erfolgreich) Der Konfigurationsmanager hat die Einsetzungsanforderung ausgegeben und einige, jedoch nicht alle Broker haben vor Ablauf des Zeitlimits die Nachricht zurückgegeben, dass die Einsetzung erfolgreich war. Es wurden keine negativen Antworten von Brokern empfangen.
success (erfolgreich) Der Konfigurationsmanager hat eine Einsetzungsanforderung ausgegeben und alle relevanten Broker haben eine positive Nachricht vor Ablauf des Zeitlimits zurückgegeben.
failure (fehlgeschlagen) Der Konfigurationsmanager hat eine Einsetzungsaufforderung ausgegeben, und mindestens ein Broker hat eine negative Antwort zurückgegeben. Führen Sie den Befehl getLogEntriesForBroker aus, um weitere Informationen zur fehlgeschlagenen Einsetzung anzuzeigen.
notRequired (nicht erforderlich) An den Konfigurationsmanager, der dem Broker zugeordnet ist, wurde eine Einsetzungsanforderung gesendet. Die Anforderung wurde jedoch nicht an den Broker übergeben, da seine Konfiguration bereits aktualisiert wurde.
Bemerkungen | Marken | Downloads | Bibliothek | Unterstützung | Rückmeldung
Copyright IBM Corporation 1999, 2006 Letzte Aktualisierung: 23. Aug. 2006
af03970_