Claus_Jambrich_5663

Wo ist der PWP

Discussion created by Claus_Jambrich_5663 on Dec 19, 2016
Ein Kunde hat gefragt:
Es kam bei uns vor das der PWP durch eine Einschränkung im Netzwerk zwischen zwei AE-Servern hin und her gewechselt ist.
Wir würden jetzt gerne eine Routine erstellen die ein solches Verhalten erkennt und meldet.
Gibt es innerhalb der AE eine Möglichkeit zu prüfen wie oft der PWP gewechselt hat? bzw. es nachträglich abzufragen?

Es gibt verschiedene Methoden herauszufinden, welcher WP der PWP ist und welcher der DWP.

Z.B. zeigt folgendes Kommando den Zustand als Buchstaben an:

:SET &RET# = GET_UC_SETTING(SERVER_MODE, "WS10#WP001") :print "WS10#WP001 is &RET#"

Ergebnis:
2016-11-15 07:57:05 - U0020408 WS10#WP001 is P

Wobei gilt:
"C" - Kommunikationsprozess (CP)
"P" - Primärer Arbeitsprozess (PWP)
"W" - Arbeitsprozess (WP)
"D" - Dialogprozess (DWP)
"N" - NonStopprozess (NWP)
" " - Der Serverprozess ist nicht aktiv.

Man müsste also alle WPs abfragen und hat dann eine Liste, welcher WP was ist.

Auch folgendes Kommando gibt immer den Primary aus
:SET &sernam# = GET_UC_SERVER_NAME()
:PRINT &sernam#

Ergebnis:
2016-11-15 07:57:05 - U0020408 WS10#WP005


Im Log wird der Übergang auch protokolliert. Z.B. im WP der beim Wechsel PWP wird steht:
20161114/153248.878 - U0003475 Server 'WS10#WP004' is the primary server of the system 'WS10'.
20161114/153248.909 - U0011818 Server 'WS10#WP004': Mode changes from 'NORMAL' to 'PRIMARY'.

In den anderen:
20161114/153250.159 - U0003475 Server 'WS10#WP004' is the primary server of the system 'WS10'.

Ein Übergang zum DWP sieht im Log so aus:
20161114/153920.081 - U0003389 Server 'WS10#WP003' has changed its mode from 'WP' to 'DWP'.

Und in der DB kann man natürlich auch suchen. Folgender Select zeigt, welcher der PWP ist:
select * from mqsrv where mqsrv_type = 4;





Outcomes