Tivoli Workload Automation version 9.2

Personnalisation de votre flot de travaux

Ce scénario décrit l'utilisation de Dynamic Workload Console pour créer un flot de travaux, le programmer pour qu'il s'exécute à des moments précis et modifier son comportement en fonction du jour d'exécution planifié.

Présentation

Un responsable du service commercial a besoin de collecter des données sur les rapports de ventes, à la fois au niveau des unités commerciales et au niveau de l'entreprise. Pour cela, il doit créer des rapports hebdomadaires et mensuels. Les données des rapports sont stockées dans deux répertoires distincts, à savoir :
  • Les données des rapports hebdomadaires sont stockées dans un ensemble de fichiers situés dans le répertoire /reports/weekly.
  • Les données des rapports mensuels sont stockées dans un ensemble de fichiers situés dans le répertoire /reports2/monthly.

Le flot de travaux utilisé pour générer les rapports est associé à une dépendance relative à la présence de ces fichiers. Pour collecter les données requises, l'administrateur Tivoli Workload Scheduler crée un flot de travaux avec deux cycles d'exécution différents, le premier étant planifié pour s'exécuter sur une base hebdomadaire, le second sur une base mensuelle.

Chaque cycle d'exécution fait référence à deux tables de variables distinctes, lesquelles contiennent la variable et la valeur associée permettant de définir le chemin d'accès dans lequel sont situés les fichiers en entrée appropriés.

Création du flot de travaux et des objets associés

Afin de créer tous les objets de base de données nécessaires pour atteindre l'objectif commercial, le concepteur Tivoli Workload Scheduler utilise Concepteur de charge de travail sur Dynamic Workload Console.
  1. Il se connecte à Dynamic Workload Console et, à partir de la barre d'outils de navigation sur la gauche, il clique sur Administration Administration > Conception de la charge de travail > Gestion des définitions de charge de travail. Concepteur de charge de travail s'ouvre.

    A l'aide du menu Nouveau de la section Liste de travail, l'administrateur peut créer tous les objets nécessaires. Il peut également rechercher des objets existants pour les modifier et les insérer dans le plan de la section Ouverture rapide.

  2. L'administrateur sélectionne Nouveau > Table de variables pour créer les deux tables de variables requises dans le but de fournir les deux valeurs différentes correspondant au chemin d'accès au fichier en entrée.
    1. Il crée une table de variables nommée SC1_WEEKLY_DATA_TABLE. Il s'agit de la table par défaut. Le chemin d'accès aux fichiers requis pour générer les rapports hebdomadaires est indiqué par la variable REP_PATH variable, à laquelle il affecte la valeur "/reports/weekly".
    2. Il crée une table de variables nommée SC1_MONTHLY_DATA_TABLE. Le chemin d'accès aux fichiers requis pour générer les rapports mensuels est indiqué par la variable REP_PATH variable, à laquelle il affecte la valeur "/reports2/monthly".
  3. L'administrateur sélectionne Nouveau > Définition de travail > Définition de travail Windows pour créer les définitions de travaux servant à générer les rapports. Chacune des définitions de travaux exécute un script, qui reçoit la valeur de la variable REP_PATH comme valeur en entrée. Les définitions de travaux suivantes sont créées :
    1. La définition de travail nommée SC1_PARSE_DATA SCRIPTNAME s'exécute sur le poste de travail adéquat en se connectant comme root. Elle exécute un script qui contient l'instruction suivante : "/reportApp/parseData.sh ^REP_PATH^".
    2. La définition de travail nommée SC1_PROCESS_DATA SCRIPTNAME s'exécute sur le poste de travail adéquat en se connectant comme root. Elle exécute un script qui contient l'instruction suivante : "/reportApp/processData.sh ^REP_PATH^".
    3. La définition de travail nommée SC1_CREATE_REPORTS SCRIPTNAME s'exécute sur le poste de travail adéquat en se connectant comme root. Elle exécute un script qui contient l'instruction suivante : "/reportApp/createReports.sh ^REP_PATH^".
  4. L'administrateur sélectionne Nouveau > Flot de travaux pour créer le flot contenant les travaux. Ce flot de travaux, nommé SC1_RUN_REPORTS, s'exécute sur le poste de travail adéquat.
  5. L'administrateur sélectionne Ajouter aux éléments sélectionnés> Cycle d'exécution > Inclusif pour définir deux cycles d'exécution pour le flot de travaux, de la façon suivante :
    1. Le cycle d'exécution nommé SC1_WEEKLY_RCY utilise la table de variables SC1_WEEKLY_DATA_TABLE, qui contient la valeur correspondant au chemin d'accès à utiliser pour générer le rapport hebdomadaire. Le cycle d'exécution indique également que le flot de travaux doit s'exécuter une fois par semaine, le vendredi.
    2. Le cycle d'exécution nommé SC1_MONTHLY_RCY utilise la table de variables SC1_MONTHLY_DATA_TABLE, qui contient la valeur correspondant au chemin d'accès à utiliser pour générer le rapport mensuel. Le cycle d'exécution indique également que le flot de travaux doit s'exécuter une fois par mois, le 27.
  6. L'administrateur sélectionne Ajouter aux éléments sélectionnés > Ajouter une dépendance > Fichier afin de définir une dépendance à partir des fichiers contenant les données utilisées pour la génération de rapports. Il utilise la variable REP_PATH pour définir le chemin d'accès aux fichiers requis.
  7. L'administrateur cherche les définitions de travaux qu'il a précédemment créées(SC1_PARSE_DATA SCRIPTNAME, SC1_PROCESS_DATA SCRIPTNAME, SC1_CREATE_REPORTS SCRIPTNAME) puis il les ajoute au flot de travaux.
  8. L'administrateur crée un plan couvrant une période de 30 jours pour générer plusieurs instances du flot de travaux.

En conséquence, plusieurs valeurs sont affectées à la variable REP_PATH, en fonction du cycle d'exécution concerné. L'administrateur définit deux cycles d'exécution, chacun faisant référence à une table de variables spécifique.

Ainsi, les instances du flot de travaux ont une dépendance pour un ensemble de fichiers différent, en fonction du type de rapports qu'elles doivent produire (hebdomadaire ou mensuel), de la façon suivante :
  • Les instances du flot de travaux qui génèrent le rapport hebdomadaire ont une dépendance pour les fichiers situés dans le répertoire /reports/weekly.
  • Les instances du flot de travaux qui génèrent le rapport mensuel ont une dépendance pour les fichiers situés dans le répertoire /reports2/monthly.
Par ailleurs, le nom du répertoire cible est correctement remplacé dans la chaîne de tâche des trois travaux d'exécution exécutés par chaque instance du flot de travaux, comme ceci :
  • Les travaux exécutés par les instances de flot qui génèrent le rapport hebdomadaire exécutent des scripts de shell en utilisant le répertoire /reports/weekly comme argument d'entrée.
  • Les travaux exécutés par les instances de flot qui génèrent le rapport mensuel exécutent des scripts de shell en utilisant le répertoire /reports2/monthly comme argument d'entrée.
Ainsi, l'administrateur peut définir un seul flot de travaux avec des cycles d'exécution différents et s'assurer que les rapports appropriés sont générés aux dates demandées, sans aucune autre intervention de l'utilisateur.