Automation Engine Script-Leitfaden > Funktionelle Gliederung > Systemzustände und -bedienung > MODIFY_SYSTEM

MODIFY_SYSTEM

Scriptfunktion: ServiceManager-Aktionen von Prozessen, Queue-Modifikationen und Steuerungsschritte in einem Zero Downtime Upgrade-Szenario.

Allgemeine Informationen

Das Scriptsprachmittel deckt drei verschiedene Aufgaben ab:

  1. Aktionen eines ServiceManagers durchführen, der mit dem Automation Engine-System gekoppelt ist.
  2. Werte von Queue-Objekten ändern oder deren Status wechseln (GO/STOP).
  3. Umschalten der Bearbeitungsrichtung in einem Zero Downtime Upgrade-Szenario oder Abschließen der Zero Downtime Upgrade-Phase.

Die durchzuführende Aktion der Scriptfunktion richtet sich nach den angegebenen Parametern. Siehe dazu die Syntaxbeschreibungen unten.

Beachten Sie, dass das Starten von Serverprozessen und Agenten mit dem Scriptsprachmittel nur dann möglich ist, wenn ein ServiceManager verfügbar ist, der richtig konfiguriert und mit dem Automation Engine System verbunden ist. Beachten Sie dazu die Einstellungen im Agenten bzw. Server-Objekt.

Eine Liste der möglichen Rückgabewerte finden Sie am Ende dieses Themas.


Queue

[ Queue ] [ ServiceManager ][ Zero Downtime Upgrade]

Syntax

MODIFY_SYSTEM(Action, Queue, Value)

Syntax

Beschreibung/Format

Aktion

Legt fest, welche Änderung an Queue-Objekten durchgeführt werden soll.
Format: Script-Literal oder Script-Variable

Erlaubte Werte: "MODE", "MAX_SLOTS" oder "PRIORITY"
"MODE" = Queue-Status, Start/Stop der Ausführung von Queue-Aufgaben
"MAX_SLOTS" = maximal parallel laufende Aufgaben (max. Slots)
"PRIORITY" = Aufgaben-Priorität

Queue

Name des zu ändernden Queue-Objektes.
Format: Script-Literal oder Script-Variable

Wert

Wert für die zu ändernde Einstellung/den zu ändernden Status (Aktion).
Format: Script-Literal oder Script-Variable

Erlaubte Werte, abhängig von der gewählten Änderung:
"MODE": "GO" oder "STOP"
"MAX_SLOTS": Zahl von "0" bis "99999" oder "UNLIMITED".
"PRIORITY": Zahl von "0" bis "255"

Anmerkungen 

Wird mit dem Script-Sprachmittel der Status von Queue-Objekten (Start/Stop) geändert (Aktion: MODE), ist der neue Status bis zur nächsten Modifikation gültig. Die Änderung der Priorität und der maximalen Queue-Slots bleibt so lange erhalten, bis die Werte durch eineAusnahme oder manuell durch einen Benutzer geändert werden.

Werden die maximalen Slots von Queue-Objekten auf "UNLIMITED" geändert, gibt es keine Begrenzung für die parallel laufenden Aufgaben.

Beispiel

In dem folgenden Beispiel wird der Status des Queue-Objektes "QUEUE.JOBS" auf "GO" gesetzt:

:SET &RET# = MODIFY_SYSTEM("MODE", "QUEUE.JOBS", "GO")
:IF &RET# = "0"
: PRINT "Processing the Queue object QUEUE.JOBS has successfully been activated."
:ELSE
: PRINT "QUEUE.JOBS: Error when changing the status to GO."
:ENDIF

 


ServiceManager

[ Queue ] [ ServiceManager ][ Zero Downtime Upgrade]

Syntax

MODIFY_SYSTEM(Action, Name,[ Server mode])

Syntax

Beschreibung/Format

Aktion

Legt die Aktion fest, die für Agenten, Serverprozesse oder das Automation Engine System durchgeführt werden soll.
Format: Script-Literal oder Script-Variable

Erlaubte Werte: "STARTUP", "TERMINATE", "CHANGE_MODE", "DISCONNECT" oder "SHUTDOWN"
"STARTUP" = Start eines Agenten oder Serverprozesses
"TERMINATE" = Agent oder Serverprozess beenden.
"SHUTDOWN" = Komplettes Automation Engine System herunterfahren.
"CHANGE_MODE" = Modus eines Server-Arbeitsprozesses (WP) ändern.
"DISCONNECT" = Agenten-Verbindung trennen und neu aufbauen.

Name

Name des Agenten bzw. Serverprozesses, der gestartet, beendet oder dessen Modus geändert werden soll.
Format: Script-Literal oder Script-Variable

Server-Modus

Modus, auf den der angegebene WP geändert werden soll.
Format: Script-Literal oder Script-Variable

Dieser Parameter muss nur dann angegeben werden, wenn der Modus eines WPs geändert wird (Aktion = CHANGE_MODE).

Erlaubte Werte:
"D": Dialogprozess
"W": Arbeitsprozess

Anmerkungen 

Eine weitere Funktionalität des Script-Sprachmittels MODIFY_SYSTEM ist die Möglichkeit, Serverprozesse und Agenten zu starten oder zu beenden bzw. den Modus von Server-Arbeitsprozessen zu ändern.

Die Aktion "STARTUP" ist nur möglich, wenn ein ServiceManager verfügbar ist und der zu startende Agent bzw. Serverprozess richtig konfiguriert wurde. Siehe dazu die Einstellungen in der Registerkarte Attribute des Agenten bzw Server-Objektes.

Um das AE-System mit "SHUTDOWN" herunterzufahren, muss für den Parameter Name der Wert "UC4" verwendet werden (siehe: :SHUTDOWN).

Der Parameter Server-Modus muss angegeben werden, wenn der Modus eines Server-Arbeitsprozesses geändert werden soll (Aktion: "CHANGE_MODE"). Im Zusammenhang mit den Aktionen "STARTUP", "TERMINATE", "DISCONNECT" und "SHUTDOWN" ist die Verwendung des Parameters Server-Modus ungültig.

Beispiel

Beenden des Agenten "WIN01":

:SET &ACT# = MODIFY_SYSTEM("TERMINATE", "WIN01") 

 


Zero Downtime Upgrade

[ Queue ] [ ServiceManager ][ Zero Downtime Upgrade]

Syntax

MODIFY_SYSTEM(Action, Value)

Syntax

Beschreibung/Format

Aktion

Erlaubter Wert "ZERO_DOWNTIME_UPGRADE" = Zero Downtime Upgrade Steuerelement.

Der folgende Wert-Parameter wird auf Routing-Meldungen angewendet, die von neuen oder alten WPs/CPs verarbeitet werden.

Wert

Erlaubte Werte:

"BEGIN" = setzt UC_SYSTEM_SETTINGS / ZERO_DOWNTIME_UPGRADE auf "Y"

"END" = setzt UC_SYSTEM_SETTINGS / ZERO_DOWNTIME_UPGRADE auf "N" - nur möglich, bevor Schritte im Upgrade-Prozess eingeleitet wurden.

"UPGRADE" = Upgrade-Modus.
Die Nachrichten-Warteschlange der neuen CPs und WPs wird auf aktiv gesetzt. Die PWP-Rolle wechselt zu einem neuen WP. Meldungen werden an die neue Verarbeitung geleitet und die alte Verarbeitung läuft aus.

"ROLLBACK" = Rollback-Modus.
Die Nachrichten-Warteschlange der alten CPs und WPs wird auf aktiv gesetzt. Meldungen werden zurück an die alte Verarbeitung geleitet und die neue Verarbeitung läuft aus.

"FINALIZE" = Schließt die Zero Downtime Upgrade-Phase ab, indem die aktuell aktive Nachrichten-Warteschlange als Basis gesetzt und UC_SYSTEM_SETTINGS / ZERO_DOWNTIME_UPGRADE auf "N" zurückgesetzt wird

Anmerkungen 

Nutzung für ein Upgrade mit Zero Downtime nur, wenn UC_SYSTEM_SETTINGS / ZERO_DOWNTIME_UPGRADE = Y

Die Datenbankaktualisierung muss zuvor erfolgreich abgeschlossen worden sein. Es müssen mindestens ein CP und ein WP der neuen Version laufen.

Mehr dazu finden Sie unter "Zero Downtime Upgrade - Upgrade-Prozess".

Beispiel

Dieses Beispiel zeigt, welche Einstellungen für den Start des Rollbacks erforderlich sind:

:SET &RET# = MODIFY_SYSTEM("ZERO_DOWNTIME_UPGRADE", "ROLLBACK")

 


Liste der möglichen Rückgabewerte:

Rückgabewerte

"0" - Die für diese Scriptfunktion definierte Aktion wurde erfolgreich verarbeitet.
"11901" - Das angegebene Queue-Objekt wurde im Mandant nicht gefunden.
"20836" - Für die Priorität oder max. Slots des Queue-Objekts wurde ein ungültiger Wert angegeben.
"20837" - Für den Parameter MOD wurde ein ungültiger Wert angegeben.
"11677" - Der ServiceManager-Call konnte nicht verarbeitet werden: Es wurde kein CP gestartet.
"11678" - Server oder Agent wurde nicht gestartet.
"11679" - Erfolgreiche ServiceManager-Abfrage.
"11680" - Verbindung zum ServiceManager fehlgeschlagen oder der angegebene Prozess wurde im ServiceManager nicht gefunden.
"11681" - ServiceManager-Call fehlgeschlagen, da der angegebene Host-Typ nicht unterstützt wird.
"11682" - ServiceManager-Call fehlgeschlagen, da der angegebene Agent/Serverprozess nicht gefunden wurde.
"11683" - ServiceManager-Call wird nicht verarbeitet, da der Server nicht mit dem angegebenen ServiceManager verbunden ist oder die gleiche Abfrage bereits verarbeitet wurde.
"11895" - Warnung für Zero_Downtime_Upgrade: Für die aktive Version wurde kein aktiver CP oder WP gefunden. [Angegebener] Modus wurde aktiviert.
"20833" - Laufzeitfehler in [angegebenem] Objekt: MODIFY_SYSTEM mit Opcode ZERO_DOWNTIME_UPGRADE nicht gültig. ZERO_DOWNTIME_UPGRADE nicht in UC_SYSTEM_SETTINGS gesetzt.
"20846" - Laufzeitfehler in [angegebenem] Objekt: MODIFY_SYSTEM(ZERO_DOWNTIME_UPGRADE) mit [angegebenem] Opcode nicht gültig. Upgrade-Version in DB nicht gefunden. Bitte zunächst Version mit DB-Load laden.
"20890" - Laufzeitfehler in [angegebenem] Objekt: Fehler in MODIFY_SYSTEM. Funktion [angegebene Aktion] für Opcode 'ZERO_DOWNTIME_UPGRADE' nicht zulässig.
"20891" - Laufzeitfehler in [angegebenem] Objekt: ZERO_DOWNTIME_UPGRADE - ROLLBACK nicht möglich. Es sind noch [angegebene] Agenten verbunden mit der Version > [angegeben]
"20892" - Laufzeitfehler in [angegebenem] Objekt: ZERO_DOWNTIME_UPGRADE - ROLLBACK nicht möglich. Es gibt noch [angegebene] aktive Aufgaben in der Version > [angegeben]
"20893" - Laufzeitfehler in [angegebenem] Objekt: ZERO_DOWNTIME_UPGRADE - UPGRADE nicht möglich. Kein aktiver Arbeitsprozess in der Upgrade-Version.
"20894" - Laufzeitfehler in [angegebenem] Objekt: ZERO_DOWNTIME_UPGRADE - ROLLBACK nicht möglich. Rollback-Modus ist bereits aktiv.
"20895" - Laufzeitfehler in [angegebenem] Objekt: ZERO_DOWNTIME_UPGRADE - UPGRADE nicht möglich. Upgrade-Modus ist bereits aktiv.
"20896" - Laufzeitfehler in [angegebenem] Objekt: ZERO_DOWNTIME_UPGRADE - FINALIZE nicht möglich. Upgrade-Modus nicht aktiv.
"20897" - Laufzeitfehler in [angegebenem] Objekt: MODIFY_SYSTEM(ZERO_DOWNTIME_UPGRADE) mit [angegebenem] Opcode nicht gültig. Basisversion in DB nicht gefunden.
"20898" - Laufzeitfehler in [angegebenem] Objekt: MODIFY_SYSTEM(ZERO_DOWNTIME_UPGRADE) mit [angegebenem] Opcode nicht gültig. ZERO_DOWNTIME_UPGRADE bereits auf "Y" gesetzt.
"20899" - Laufzeitfehler in [angegebenem] Objekt: ZERO_DOWNTIME_UPGRADE - FINALIZE_ROLLBACK nicht möglich. Rollback-Modus nicht aktiv.
"20900" - Laufzeitfehler in [angegebenem] Objekt: ZERO_DOWNTIME_UPGRADE - END nicht möglich. Upgrade-Modus noch aktiv. Setzen Sie zunächst die Funktion FINALIZE ein.
"20901" - Laufzeitfehler in [angegebenem] Objekt: ZERO_DOWNTIME_UPGRADE - [angegebene Aktion] nicht möglich. Es bestehen noch offene Verbindungen bei den CPs der alten Version.
"20902" - Laufzeitfehler in [angegebenem] Objekt: ZERO_DOWNTIME_UPGRADE - [angegebene Aktion] nicht möglich. Es sind noch Einträge in MQWP vorhanden.
"20903" - Laufzeitfehler in [angegebenem] Objekt: ZERO_DOWNTIME_UPGRADE - [angegebene Aktion] nicht möglich. Es sind noch Einträge in MQJWP vorhanden.
"29177" - UCUDB: ZERO_DOWNTIME_UPGRADE - Zwischenspeicherung der Tabellenstruktur wird nicht mehr angewendet.
"29178" - UCUDB: ZERO_DOWNTIME_UPGRADE - Zwischenspeicherung der Tabellenstruktur ist aktiv.
"38276" ZERO_DOWNTIME_UPGRADE = 'Y' ist nur erlaubt bei einem laufenden System.

 


Siehe auch:

Script-Sprachmittel Beschreibung
:SHUTDOWN Beendet ein Automation Engine System.
SYS_HOST_ALIVE Überprüft, ob ein bestimmter Host aktiv ist.
SYS_SERVER_ALIVE Überprüft, ob ein bestimmter Serverprozess aktiv ist.
TOGGLE_SYSTEM_STATUS Stoppt oder startet die automatische Verarbeitung eines gesamten Mandanten.

 


Automic Documentation - Tutorials - Automic Blog - Resources - Training & Services - Automic YouTube Channel - Download Center - Support

Copyright © 2016 Automic Software GmbH