Base de connaissances > Automation Engine et systèmes cibles > z/OS > Evènement de système de fichiers automatique

Evénement de système de fichiers automatique

L'agent z/OS supporte la surveillance du système de fichiers et la fermeture des fichiers. L'événement est déclenché lorsque le fichier est fermé conformément aux conditions définies.

Dans un objet événement, vous pouvez filtrer par le nom de fichier ou en spécifiant une série de critères de filtrage. Ces derniers incluent le nom de fichier, le job ayant traité le fichier et son code retour.

!Traitement est exécuté quand l'événement est déclenché. La fonction de script GET_EVENT_INFO fournit des informations sur le fichier.

L'administrateur doit définir le paramètre smfwrite=1 dans le fichier INI de l'agent ou du moniteur d'événements. Vérifiez dans votre système z/OS que le sous-système SMF autorise les exits de système IEFU83 et IEFU84. Vérifiez que les entrées 14, 15, 30 et 64 sont bien journalisées.

Les événements du système de fichiers automatiques ne sont pas pris en charge sur les membres PDS.

Déroulement 

  1. Créez un objet événement de type système de fichiers.
  2. Ouvrez-le et passez à l'onglet Système de fichiers.
  3. Sélectionnez un Agent z/OS.
  4. La section Contrôle de périodicité affiche désormais in élément de menu supplémentaire nommé "Automatiquement". Sélectionnez-le.

Nom de fichier comme filtre

  1. Dans le champ Chemin, saisissez un nom de fichier avec ou sans caractère générique, selon que vous souhaitiez surveiller un fichier donné ou plusieurs fichiers.
  2. L'option Evénement de démarrage permet de vérifier l'existence du fichier lors de l'activation de l'objet événement. Si le fichier est disponible, un événement est également déclenché.
  3. Saisissez les instrcutions de script à exécuter quand l'événement est déclenché dans l'onglet !Traitement. Utilisez la fonction de script GET_EVENT_INFO.
  4. Enregistrez l'objet événement et démarrez-le dès que la surveillance du fichier doit démarrer.

Plusieurs critères de filtrage

  1. Créez un fichier contenant les critères de filtrage sur le LPAR sur lequel s'exécute l'agent. Il doit suivre un certain format décrit dans le tableau ci-dessus.
  2. Dans le champ Chemin, spécifiez le nom de ce fichier de filtrage au format suivant : *file(DSNAME)
    Exemple : *file(SGD.PROD.MASSFILTER)
    Les caractères génériques ne sont pas autorisés dans le DSNAME.
  3. Saisissez les instrcutions de script à exécuter quand l'événement est déclenché dans l'onglet !Traitement. Utilisez la fonction de script GET_EVENT_INFO.
    Notez que le !Traitement n'est pas exécuté si le fichier de filtre contient la spécification d'un objet à démarrer.
  4. Enregistrez l'objet événement et démarrez-le dès que la surveillance du fichier doit démarrer.

Critère de filtrage

Le moniteur d'événements est capable de prendre en compte plusieurs critères de filtrage lors d'une notification de la fermeture d'un fichier. De cette façon, l'événement est uniquement déclenché lorsque, par exemple, un certain Job a traité le fichier ou lorsqu'un code retour spécial se produit.

Les critères de filtre sont enregistrés dans un fichier distinct. Ce dernier contient un Filtre d'analyse. Si plusieurs Filtres d'analyse correspondent lors d'un événement, par exemple parce qu'il existe des recoupements entre les critères de filtrage, un événement est déclenché par ligne.

Le fichier de filtrage doit contenir les attributs DCB RECFM=FB, LRECL=512 et BLKSIZE=5120.

Chaque ligne du fichier de filtrage fait 307 caractères maximum et se décompose dans les domaines suivants :

Critère de filtrage

Positions d'une ligne

Description

Nom de fichier

1 à 81

Filtre sur le nom de fichier

Les noms DS partiellement et entièrement qualifiés y compris les membres PDS et GDG sont pris en charge. Vous pouvez utiliser des caractères génériques.

Nom de Job

82 à 89

Filtre sur le nom du Job en z/OS qui a fermé le fichier.

Les caractères génériques "*" et "?" sont autorisés.

Fin du Job

90

Attente de la fin du Job

Valeurs autorisées : " ", "X", "N" ou "A"

" " : la fermeture du fichier déclenche immédiatement l'événement. Le système n'attend pas la fin du Job.
"X" : la fermeture du fichier déclenche l'événement uniquement à la fin du Job. Le code retour n'a pas d'importance.
"N" : l'événement est déclenché si le Job se termine normalement, c'est-à-dire avec un code retour compris entre 0 et 4095.
"A" : l'événement est déclenché si le job se termine anormalement, c'est-à-dire avec un code retour compris entre 4096 et 12287.

Le critère de filtrage "Code retour du Job" vous permet de définir précisément les codes retour attendus.

Lors de l'analyse de la fin du Job, l'agent se base sur les enregistrements SMF de la fin de job ou sur les enregistrements de la fin des steps.  Dans le premier cas, il est uniquement possible de faire la différence entre les fins de Job normales et anormales. La définition des codes retour STEP est plus précise. Dans ce cas, le moniteur d'événements récupère la valeur maximum.

L'administrateur peut définir si seule la fin de Job ou également les fermetures STEP doivent être prises en compte lors du contrôle du code retour. Les spécifications sont réalisés dans le fichier INI du moniteur d'événements utilisant le paramètre smfStepFilter=.

Code retour du Job

91 à 106

Filtrage du code retour du Job (Condition Codes, User Abends et System Abends).

Vous pouvez indiquer les valeurs identiques à celles dans z/OS ou selon la syntaxe habituelle d'AE.

Si vous voulez indiquer plusieurs codes retour, il faut les séparer avec ";" ou ",". Les domaines sont formulés à l'aide de "-".

Action

107

Action devant suivre l'événement

Valeurs autorisées : "Y" et "N" (valeur par défaut).

"Y" : l'objet que vous indiquez dans le domaine suivant est exécuté à la place du !Script.
"N" : aucune exécution de l'objet éventuellement entré ne se produit.

Objet

108 à 307

Nom de l'objet qui doit être exécuté.

Vous pouvez, par exemple, enregistrer ici un objet Job.

Attention : le contenu du !Script n'est pas exécuté ! En revanche, l'objet indiqué ici est activé.

Dans l'exemple suivant, la largeur de 307 caractères ainsi que le nombre précis de caractères n'ont pas été respectés en raison d'un manque de place.

DEV.DS1         JOBA     A    
DEV.DS1         JOBB     A    S806            Y    CALL.ADMIN
UC4.D*.*LIB     TEST2    N    0-12;16-18      Y    MM.CLOSING
SYS1.PARMLIB    
TEST.S62*.T*    TEST1    X    11-17;S806

Au démarrage de l'objet événement, l'agent lit le fichier de filtrage et avertit automatiquement les moniteurs d'événements. Lors de la modification des critères de filtrage, vous devez redémarrer l'objet événement concerné ou charger à nouveau le fichier de filtrage avec l'instruction MODIFY.

Syntaxe :

MODIFY nom de l'agent STC,FEVNT=nom du fichier de filtrage

Exemple :

MODIFY UC600T1,FEVNT=UC600T.FILTER1

En option, vous pouvez définir un objet devant être activé comme réaction à l'événement survenu. Dans ce cas, l'agent enregistre toutes les informations du cache que vous pouvez lire dans l'objet événement avec la fonction de script GET_EVENT_INFO, en utilisant des mots-clés. L'objet activé est ainsi capable de récupérer les données à l'aide de l'instruction de script :READ. Comme noms de Variable, il faut indiquer les mots clés.

Exemple :

:SET &FILENAME# = GET_EVENT_INFO (FILENAME)

:READ &FILENAME#,,

 

Rubriques connexes :

GET_EVENT_INFO
Moniteur d'événements