Manuel des Scripts Automation Engine > Organisation fonctionnelle > Statuts et utilisation du système > MODIFY_SYSTEM

MODIFY_SYSTEM

Fonction de script : Exécute des actions du gestionnaire de services, des modifications de queue et contrôle les étapes dans un scénario de mise à niveau sans arrêt.

Informations générales

Cet élément de script peut être utilisé pour traiter trois types de tâches différents :

  1. Exécuter les actions d'un gestionnaire de services qui est connecté au système AE.
  2. La modification de valeurs d'objets Queue ou le changement de leur statut (GO/STOP).
  3. Changer la direction du traitement pendant un scénario de mise à niveau de Zero Downtime ou finaliser la phase de mise à niveau de Zero Downtime.

L'action de la fonction de script à exécuter dépend des paramètres indiqués. A ce sujet, reportez-vous aux descriptions de syntaxe ci-dessous.

Vous ne pouvez démarrer les processus serveur et les agents en utilisant cet élément de script que si un gestionnaire de services correctement configuré et connecté au système AE est disponible. Dans ce cadre, tenez compte des paramètres dans l'objet Agent ou. Serveur.

Pour une liste de codes de retour possibles, consultez la section inférieure de cette rubrique.


Queue

[ Ordre ] [ Service Manager ][ Mise à niveau de Zero Downtime]

Syntaxe

MODIFY_SYSTEM(Action, Queue, Value)

Syntaxe

Description / format

Action

Détermine quelle modification doit être apportée à des objets Queue.
Format : littéral de script ou variable de script 

Valeurs autorisées : "MODE", "MAX_SLOTS" ou "PRIORITY"
"MODE" : statut de la queue, démarre / arrête l'exécution des tâches de la queue
"MAX_SLOTS" : nombre maximal de tâches exécutées en parallèle (max. slots).
"PRIORITY" : priorité de la tâche

Queue

Nom de l'objet Queue à modifier.
Format : littéral de script ou variable de script 

Valeur

Valeur pour le paramètre à modifier / statut (Action).
Format : littéral de script ou variable de script

Valeurs autorisées, en fonction de la modification sélectionnée :
"MODE" : "GO" ou "STOP"
"MAX_SLOTS" : Nombre entre "0" and "99999" ou "UNLIMITED".
"PRIORITY" : Nombre de "0" à "255"

Remarques 

Si le statut des objets queue (démarré / arrêté) est modifié à l'aide de l'élément de script (action : MODE), le nouveau statut s'applique jusqu'à la prochaine modification. La modification de la priorité et des slots Queue maximum reste inchangée tant que les valeurs ne sont pas modifiées par une exception ou manuellement par un utilisateur.

Le nombre maximum de tâches exécutées en parallèle n'est pas limité si le nombre maximum de slots des objets queue passe à "UNLIMITED".

Exemple

Dans l'exemple suivant, le statut de l'objet Queue "QUEUE.JOBS" est défini sur "GO".

: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

 


Gestionnaire de services

[ Ordre ] [ Service Manager ][ Mise à niveau de Zero Downtime]

Syntaxe

MODIFY_SYSTEM(Action, Name,[ Server mode])

Syntaxe

Description / format

Action

Détermine l'action qui doit être exécutée pour les Agents, les processus Serveur ou le système AE.
Format : littéral de script ou variable de script 

Valeurs autorisées : "STARTUP", "TERMINATE", "CHANGE_MODE", "DISCONNECT" ou "SHUTDOWN"
"STARTUP" = Démarrage d'un Agent ou d'un processus Serveur
"TERMINATE" : arrête l'agent ou le processus serveur.
"SHUTDOWN" = Arrêt de tout le système AE.
"CHANGE_MODE" = Modification du mode d'un processus de travail Serveur (WP).
"DISCONNECT" : ferme la connexion de l'agent puis la réétablit.

Nom

Nom de l'agent ou du processus serveur qui doit être démarré, fermé ou dont le mode doit être modifié.
Format : littéral de script ou variable de script

Mode Serveur

Mode sur lequel le WP indiqué doit être modifié.
Format : littéral de script ou variable de script

Ce paramètre ne doit être indiqué que lorsque le mode d'un WP est modifié (action = CHANGE_MODE).

Valeurs autorisées :
"D" : Processus de dialogue
"W" : Processus de travail

Remarques 

Le script MODIFY_SYSTEM permet aussi de démarrer ou d'arrêter des processus serveur ou des agents, ou de modifier le mode des processus de travail du serveur.

L'action "STARTUP" ne peut être utilisée que si un gestionnaire de services est disponible et que l'agent ou le processus serveur à démarrer a été correctement configuré. A ce sujet, voir les paramètres dans l'onglet Attributs de l'objet Agent ou Serveur.

Pour arrêter le système AE avec "SHUTDOWN", la valeur AE doit être utilisée pour le paramètre Name (voir : :SHUTDOWN).

Le paramètre Mode Serveur doit être indiqué lorsque le mode d'un processus de travail Serveur doit être modifié (action : "CHANGE_MODE"). L'utilisation du paramètre Mode Serveur n'est pas valide avec les actions "STARTUP", "TERMINATE", "DISCONNECT" et "SHUTDOWN".

Exemple

Arrêt de l'agent "WIN01" :

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

 


Mise à niveau de Zero Downtime

[ Ordre ] [ Service Manager ][ Mise à niveau de Zero Downtime]

Syntaxe

MODIFY_SYSTEM(Action, Value)

Syntaxe

Description / format

Action

Valeur autorisée "ZERO_DOWNTIME_UPGRADE" = Contrôle de la mise à niveau de Zero Downtime.

Le paramètre de valeur suivant sera utilisé pour l'acheminement des messages qui doivent être traités par les WP et CP, nouveaux et anciens.

Valeur

Valeurs autorisées :

"BEGIN" = définit UC_SYSTEM_SETTINGS / ZERO_DOWNTIME_UPGRADE à "Y"

"END" = définit UC_SYSTEM_SETTINGS / ZERO_DOWNTIME_UPGRADE à "N" - seulement impossible avant de commencer le processus de mise à niveau

"UPGRADE" = Mode de mise à niveau.
La file d'attente des messages appartenant aux nouveaux CP et WP sera activée. Le rôle PWP bascule à un nouveau WP. Les messages seront envoyés vers le nouveau traitement, alors que l'ancien traitement sera supprimé.

"ROLLBACK" = Mode de rollback.
La file d'attente des messages appartenant aux anciens CP et WP sera activée. Les messages seront renvoyés vers l'ancien traitement, alors que le nouveau traitement sera supprimé.

"FINALIZE" : finalise la phase de mise à niveau sans arrêt en définissant la file d'attente des messages active comme base et en réinitialisant UC_SYSTEM_SETTINGS / ZERO_DOWNTIME_UPGRADE à "N"

Remarques 

Utiliser pour effectuer une mise à niveau de zero downtime seulement, lorsque UC_SYSTEM_SETTINGS / ZERO_DOWNTIME_UPGRADE = Y

La mise à niveau de la base de données doit d'abord être correctement traitée. Au moins un CP et un WP de la nouvelle version doivent être en état de fonctionnement.

Pour obtenir plus de détails, veuillez vous référer à notre article " Mise à niveau de Zero Downtime Upgrade - Processus de mise à niveau".

Exemple

Cet exemple affiche les réglages requis pour démarrer le rollback:

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

 


Liste de codes de retour possibles:

Codes retour

"0" : l'action définie pour cette fonction de script a été exécutée avec succès.
"11901" - L'objet Queue indiqué est introuvable dans le Client.
"20836" - Indication d'une valeur non valide pour la priorité ou les Slots max. de l'objet Queue.
"20837" - Une valeur non valide a été indiquée pour le paramètre MODE.
"11677" - ServiceManager n'a pas pu être appelé : aucun CP démarré.
"11678" - Serveur ou Agent non démarré.
"11679" : requête du gestionnaire de services réussie.
"11680" : aucune connexion n'a pu être établie au gestionnaire de services ou le processus indiqué est introuvable dans le gestionnaire de services.
"11681" : le gestionnaire de services n'a pas pu être appelé, car le type d'hôte indiqué n'est pas pris en charge.
"11682" : le gestionnaire de services n'a pas pu être appelé : l'agent / le processus serveur indiqué est introuvable.
"11683" : le gestionnaire de services n'a pas pu être appelé, car le serveur n'est pas connecté au gestionnaire de services indiqué ou que la même requête est déjà exécutée.
"11895" - Avertissement pour Zero_Downtime_Upgrade : Aucun CP ou WP actif n'a été trouvé pour la version active. Le mode [spécifié] a été activé.
"20833" - Erreur de durée d'exécution dans l'objet [spécifié] : MODIFY_SYSTEM avec code op. ZERO_DOWNTIME_UPGRADE non valide. ZERO_DOWNTIME_UPGRADE non défini dans UC_SYSTEM_SETTINGS.
"20846" - Erreur de durée d'exécution dans l'objet [spécifié] : MODIFY_SYSTEM(ZERO_DOWNTIME_UPGRADE) non valide avec code op [spécifié]. Version de mise à niveau introuvable dans DB. Chargez d'abord la version avec DB-Load.
"20890" - Erreur de durée d'exécution dans l'objet [spécifié] : Erreur dans MODIFY_SYSTEM. La fonction [action spécifiée] n'est pas autorisée pour le code op 'ZERO_DOWNTIME_UPGRADE'.
"20891" - Erreur de durée d'exécution dans l'objet [spécifié] : ZERO_DOWNTIME_UPGRADE - ROLLBACK impossible. Il y a encore des agents [spécifié] connectés avec cette version [spécifié].
"20892" - Erreur de durée d'exécution dans l'objet [spécifié] : ZERO_DOWNTIME_UPGRADE - ROLLBACK impossible. Il y a encore des tâches [spécifiées] actives avec la version > [spécifié].
"20893" - Erreur de durée d'exécution dans l'objet [spécifié] : ZERO_DOWNTIME_UPGRADE - UPGRADE impossible. Aucun processus de travail avec la version de mise à niveau active.
"20894" - Erreur de durée d'exécution dans l'objet [spécifié] : ZERO_DOWNTIME_UPGRADE - ROLLBACK impossible. Mode Rollback déjà actif.
"20895" - Erreur de durée d'exécution dans l'objet [spécifié] : ZERO_DOWNTIME_UPGRADE - UPGRADE impossible. Mode Upgrade déjà actif.
"20896" - Erreur de durée d'exécution dans l'objet [spécifié] : ZERO_DOWNTIME_UPGRADE - FINALIZE impossible. Mode Upgrade non actif.
"20897" - Erreur de durée d'exécution dans l'objet [spécifié] : MODIFY_SYSTEM(ZERO_DOWNTIME_UPGRADE) non valide avec code op [spécifié]. Version de base introuvable dans base de données (DB).
"20898" - Erreur de durée d'exécution dans l'objet [spécifié] : MODIFY_SYSTEM(ZERO_DOWNTIME_UPGRADE) non valide avec code op [spécifié]. ZERO_DOWNTIME_UPGRADE déjà défini sur ""Y""."
"20899" - Erreur de durée d'exécution dans l'objet [spécifié] : ZERO_DOWNTIME_UPGRADE - FINALIZE_ROLLBACK impossible. Mode Rollback non actif.
"20900" - Erreur de durée d'exécution dans l'objet [spécifié] : ZERO_DOWNTIME_UPGRADE - END impossible. Mode Upgrade toujours actif. Utiliser d'abord FINALIZE.
"20901" - Erreur de durée d'exécution dans l'objet [spécifié] : ZERO_DOWNTIME_UPGRADE - [action spécifiée] impossible. Les CP de l'ancienne version ont encore des connexions en cours.
"20902" - Erreur de durée d'exécution dans l'objet [spécifié] : ZERO_DOWNTIME_UPGRADE - [action spécifiée] impossible. MQWP contient encore des entrées.
"20903" - Erreur de durée d'exécution dans l'objet [spécifié] : ZERO_DOWNTIME_UPGRADE - [action spécifiée] impossible. Il y a encore des entrées dans MQJWP.
"29177" - UCUDB : ZERO_DOWNTIME_UPGRADE - La mise en cache de la structure de table n'est plus utilisée.
"29178" - UCUDB : ZERO_DOWNTIME_UPGRADE - La mise en cache de la structure de table est activée.
"38276" - ZERO_DOWNTIME_UPGRADE = seul 'Y' est autorisé si un système est actif.

 


Rubriques connexes :

Eléments de script Description
:SHUTDOWN Arrête un système AE.
SYS_HOST_ALIVE Vérifie si un hôte particulier est actif.
SYS_SERVER_ALIVE Vérifie qu'un processus Serveur particulier est actif
TOGGLE_SYSTEM_STATUS Arrête ou démarre le traitement automatique de l'intégralité d'un Client.