Personnalisation des tâches du moniteur de ressources MFT avec la substitution de variables
Lorsque les conditions de déclenchement d'un moniteur de ressources actif sont satisfaites, la tâche définie est appelée. En plus d'appeler la tâche de transfert ou de commande avec le même agent de destination ou le même nom de fichier de destination à chaque fois, vous pouvez également modifier la définition de la tâche lors de l'exécution. Pour ce faire, vous devez insérer des noms de variable dans le fichier XML de définition de tâche. Lorsque le moniteur détermine que les conditions de déclenchement sont satisfaites et que la définition de tâche contient des noms de variable, il remplace les noms de variable par les valeurs de variable, puis appelle la tâche.
Les variables utilisées pour la substitution ne sont disponibles que pour les conditions de déclenchement positives. Seules les conditions de déclenchement match et fileSize remplacent les variables. Si une condition noMatch est utilisée et qu'il existe des noms de variable de substitution dans la définition de tâche, la tâche n'est pas appelée et le moniteur émet un code retour de 110 et un message d'erreurBFGDM0060E.
Si la ressource contrôlée est une file d'attente
La valeur de toute propriété de message IBM® MQ du premier message à lire dans la file d'attente surveillée peut être remplacée dans la définition XML de la tâche.
Les propriétés de message définies par l'utilisateur sont préfixées avec usr. mais n'incluent pas ce préfixe dans le nom de la variable. Les noms de variable doivent être précédés d'un signe dollar ($) et placés entre accolades { }.
Par exemple, ${destFileName} est remplacé par la valeur de la propriété de message usr.destFileName du premier message à lire dans la file d'attente source. Pour plus d'informations, voir Propriétés des messagesMQ lues par MFT à partir des messages des files d'attente source et Surveillance d'une file d'attente et utilisation de la substitution de variables.
outputN.log):BFGDM0113W: Trigger failure for <monitor name> for reason BFGDM0060E: A monitor task could
not complete as a variable substitution <variable name> was not present.resmoneventN.log):BFGDM0060E: A monitor task could not complete as a variable substitution
<variable name> was not present.
Pour plus d'informations sur la journalisation des moniteurs de ressources, reportez-vous à la section Journalisation des moniteurs de ressources MFT.
${AGENTNAME} est remplacé par le nom de l'agent du moniteur de ressources.| Variable | Description |
|---|---|
| AgentName | Nom de l'agent du moniteur de ressources. |
| QUEUENAME | Nom de la file d'attente surveillée. |
| ENCODING | Codage de caractères du premier message de la file d'attente ou du premier message d'un groupe. |
| ID message | ID message IBM MQ du premier message de la file d'attente ou du premier message du groupe. |
| groupID | ID groupe IBM MQ du groupe ou ID message si un seul message est trouvé. Cette variable est uniquement définie si vous contrôlez des groupes complets. |
| CurrentTimeStamp | Horodatage basé sur l'heure locale à laquelle le moniteur a été déclenché. La valeur d'horodatage est unique pour l'agent. |
| CurrentTimeStampUTC | Horodatage basé sur l'heure, dans le fuseau horaire UTC, à laquelle le moniteur a été déclenché. La valeur d'horodatage est unique pour l'agent. |
Si la ressource contrôlée est un répertoire
| Variable | Description |
|---|---|
| FilePath | Nom de chemin complet du fichier de déclenchement. |
| FileName | Partie du nom de fichier du déclencheur. |
| LastModifiedTime | Heure de la dernière modification du fichier de déclenchement. Cette heure est exprimée en tant qu'heure locale du fuseau horaire dans lequel l'agent s'exécute et est formatée en tant qu'heure ISO 8601. |
| LastModifiedDate | Date de la dernière modification du fichier de déclenchement. Cette date est exprimée en tant que date locale du fuseau horaire dans lequel l'agent s'exécute et est formatée en tant que date ISO 8601. |
| LastModifiedTimeUTC | Heure de la dernière modification du fichier de déclenchement. Cette heure est exprimée sous la forme de l'heure locale convertie au fuseau horaire UTC et est formatée sous la forme d'une heure ISO 8601 |
| LastModifiedDateUTC | Date de la dernière modification du fichier de déclenchement. Cette date est exprimée sous forme de date locale convertie au fuseau horaire TUC et est formatée sous forme de date ISO 8601. |
| AgentName | Nom de l'agent du moniteur de ressources. |
| CurrentTimeStamp | Horodatage basé sur l'heure locale à laquelle le moniteur a été déclenché. La valeur d'horodatage est unique pour l'agent. |
| CurrentTimeStampUTC | Horodatage basé sur l'heure du fuseau horaire UTC à laquelle le moniteur a été déclenché. La valeur d'horodatage est unique pour l'agent. |
Si la ressource contrôlée est un fichier de déclenchement
| Variable | Description |
|---|---|
| contentSource | Nom de chemin complet du fichier source. |
| contentDestination | Nom de chemin complet du fichier de destination. |
Les noms de variable doivent être précédés d'un signe dollar ($) et placés entre accolades, { }. Par exemple, ${FilePath} est remplacé par le chemin de fichier qualifié complet du fichier de déclenchement correspondant.
- jeton
- L'indice du jeton à substituer (commençant à 1 à partir de la gauche et commençant à -1 à partir de la droite)
- séparateur
- Caractère unique permettant de segmenter la valeur de la variable. La valeur par défaut est la barre oblique (/) sur les plateformes AIX® and Linux® ou la barre oblique inversée (\) sur les plateformes Windows , mais le séparateur peut être tout caractère valide pouvant apparaître dans la valeur de la variable.
Si le mot clé de séparation est indiqué dans un nom de variable, la valeur de la variable est divisée en unités lexicales en fonction du caractère de séparation.
La valeur affectée au mot clé token est utilisée comme index pour sélectionner le jeton à utiliser pour remplacer le nom de la variable. L'index de jeton est relatif au premier caractère de la variable et commence à 1. Si le mot clé token n'est pas spécifié, la totalité de la variable est insérée.
Toutes les valeurs qui sont substituées dans un nom d'agent dans le message XML sont traitées de manière non sensible à la casse. Tous les noms Managed File Transfer Agent sont en majuscules. Si la valeur Paris est remplacée par un attribut d'agent dans le message XML, cette valeur est interprétée comme une référence à l'agent PARIS.