La commande EDH_STATUS est destinée à contrôler l’état du processus de réplication, de façon ponctuelle ou périodique. L’invite de la commande propose les paramètres suivants :
EDH – Etat des réplications (EDH_STATUS)
Indiquez vos choix, puis appuyez sur ENTREE.
Environnement . . . . . . . . . __ Nom
Type d'environnement . . . . . . *SND *SND, *RCV
Délai avant alerte . . . . . . . 60 10-3600
Le code environnement est requis.
A l’exécution de la commande, différents contrôles vont être exécutés :
Contrôle de l’activité de l’environnement
Contrôle du retard des réplications / journaux
Contrôle du nombre d’objets en attente ou en anomalie de synchronisation
Selon les différents cas rencontrés, différents messages vont être produits :
Réplication INACTIVE
EDH0038 – L’environnement &1 est inactif
Ce message est directement retourné au programme appelant en mode « Escape », avec gravité 40. Le programme peut ainsi prendre directement la décision de redémarrer la réplication par la commande PMEDHSTR
Retard SUPERIEUR à 60 secondes
EDH0040 – L’environnement &1 accuse un retard de n secondes
Ce message est adressé à la file d’attente PMEDHUSR/PMEDH mode « Diag », avec gravité 40
Au moins 1 objet non synchronisé – 2 messages
EDH0041 – &2 objets de l’environnement &1 ne sont pas synchronisés
EDH0117 - ATTENTION - il y a &2 objets en ERREUR de synchronisation sur l'environnement &1
Ces messages sont adressés à la file d’attente PMEDHUSR/PMEDH mode « Diag », avec gravité 40
Deux messages de synthèse concernant les environnements actifs :
EDH0190, de gravité 00, s’il n’y a ni retard de réplication, ni objets en attente ou en erreur de synchronisation.
EDH0191, de gravité 40, s’il y a du retard de réplication et/ou des objets en attente et/ou en erreur de synchronisation.
Exemple de présentation :
ID message . . . . . . : EDH0191 Gravité . . . . . . . : 40
Type de message . . . : Information
Date d'envoi . . . . . : 30/09/14 Heure d'envoi . . . . : 18:51:05
Message . . . . : EDH_STATUS: Environnement BK ACTIF
Retard : 000000000
Objets en attente : 000000000
Erreurs : 000000008
Note : Les 6 messages d’anomalie sont volontairement adressés à la file d’attente PMEDHUSR/PMEDH. Ainsi, le monitoring des tools ou un outil de surveillance de messages peut facilement les intercepter et vous alerter en conséquence.
De plus, une *DTAARA est mise à jour avec cette information.
La *DTAARA se nomme EDH_xx dans PMEDHUSR (xx= code environnement) et est alimentée comme suit :
| 275 | 6 | CURDAT, Date actuelle |
|---|---|
| 281 | 6 | CURTIM, Heure actuelle |
| 257 | 9 | W_DLYA, Retard de lecture |
| 401 | 9 | Retard de lecture en seconde |
| 410 | 1 | Unité du retard de lecture de la valeur donnée en position 257 ('d', 'h', 'm' or 's') |
| 266 | 9 | W_ERRA, Nombre d’objets en erreur de synchronisation |
| 291 | 9 | W_WAIA, Nombre d’objets en attente de synchronisation |
| 301 | 9 | W_WNBA, Nombre de synchronisation OK |
| 311 | 9 | W_RUNA, Nombre de synchronisation en cours |
| 321 | 1 | NOIO (0 = I / O, 1 = 1 NO I / O) |
| 322 | 1 | NOJRN (0 = JRN, 1 = 1 NO JRN) |
| 323 | 1 | Env active (0 = env stopped, 1 = env started) |
| 411 | 9 | Retard d’écriture |
| 412 | 1 | Unité du retard d’écriture de la valeur donnée en position 411 ('d', 'h', 'm' or 's') |
| 421 | 9 | Retard d’écriture en seconde |
| 431 | 9 | Nombre d’objet en cours |
Vous pouvez donc par exemple écrire un CLP, permettant de ne stopper la réplication que s’il n’y a pas de retard:
Lancer EDH_STATUS
Lire la DTAARA – Position 257 à 265 sur 9 positions
Si supérieur à 0 – faire un DLYJOB et boucler sur EDH_STATUS
Si égal à 0 – Faire un PMEDHEND xx et arrêter le CLP
Depuis décembre 2011, EDH_STATUS produit également un spool de rapport.
Attention : Lorsque l’environnement est arrêté (utiliser 323 | 1 Env active pour vérifier), les valeurs de délais remontées par EDH_STATUS pour les délais de lecture et écriture sont les dernières valeurs enregistrées lorsque l’environnement fonctionnait. Ces valeurs sont différentes des valeurs affichées dans l’environnement car ces dernières sont dynamiques.