Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Configuration d’une stratégie d’événement pour transmettre les arguments à un script d’événement

Lorsqu’une stratégie d’événement appelle un script d’événement, celle-ci peut transmettre des arguments au script. Les sections suivantes expliquent comment configurer les arguments de la stratégie d’événements et utiliser les arguments dans le script d’événement :

Configuration des arguments de script d’événements dans une stratégie d’événements

Vous configurez les arguments qu’une stratégie d’événement transmet à un script d’événement dans la then clause de la stratégie sous la event-script filename arguments hiérarchie. Vous pouvez configurer n’importe quel nombre d’arguments pour chaque script d’événement invoqué.

Vous incluez des arguments au script sous la forme de paires nom/valeur. Les valeurs d’argument peuvent inclure des variables qui contiennent des informations sur l’événement de déclenchement ou d’autres événements reçus. Le script d’événement peut ensuite référencer ces informations pendant l’exécution. Vous pouvez utiliser des variables des formes suivantes :

  • {$$.attribute-name}: la notation du signe double dollar ($$) représente l’événement qui déclenche une stratégie. Lorsqu’elle est combinée avec un nom d’attribut, la variable se résout à la valeur de l’attribut associé à l’événement déclencheur. Par exemple, {$$.interface-name} résout le nom de l’interface associé à l’événement de déclenchement.

  • {$event.attribute-name}— Le signe dollar unique avec la notation du nom de l’événement ($event) représente l’événement le plus récent correspondant eventà . Lorsqu’elle est combinée avec un nom d’attribut, la variable se résout à la valeur de l’attribut associé à cet événement. Par exemple, {$COSD_CHAS_SCHED_MAP_INVALID.interface-name} résout le nom de l’interface associé à l’événement le plus récent COSD_CHAS_SCHED_MAP_INVALID mis en cache par le processus événementiel.

Pour un événement donné, vous pouvez consulter une liste d’attributs d’événement que vous pouvez référencer en publiant la help syslog event commande.

Par exemple, dans la commande de sortie suivante, le texte entre crochets d’angle (< >) affiche les attributs de l’événement COSD_CHASSIS_SCHEDULER_MAP_INVALID :

Une autre façon d’afficher une liste d’attributs d’événement est d’émettre la commande du set attributes-match event? mode de configuration au niveau de la [edit event-options policy policy-name] hiérarchie.

Par exemple, dans la sortie de commande suivante, la event.attribute liste indique que error-message et interface-name sont les attributs de l’événement cosd_chassis_scheduler_map_invalid :

Dans cette set commande, il n’y a pas d’espace entre le nom de l’événement et le point d’interrogation (?).

Pour afficher la liste de tous les attributs d’événements que vous pouvez référencer, émettez la commande du set attributes-match ? mode de configuration au niveau de la [edit event-options policy policy-name] hiérarchie.

Utilisation d’arguments dans un script d’événement

Lorsqu’une stratégie d’événement appelle un script d’événement, celui-ci peut faire référence à n’importe quel argument transmis par la stratégie. Les noms des arguments dans le script d’événement doivent correspondre aux noms des arguments configurés pour ce script d’événement sous la [edit event-options policy policy-name then event-scripts filename arguments] hiérarchie de la configuration.

Pour utiliser les arguments dans un script d’événements SLAX ou XSLT, vous devez inclure une déclaration de paramètre pour chaque argument. Le script d’événement attribue la valeur de chaque argument de script au paramètre correspondant du même nom, qui peut ensuite être référencé dans l’ensemble du script.

Syntaxe XSLT

Syntaxe SLAX

Pour utiliser les arguments d’un script d’événements Python, vous pouvez utiliser n’importe quel moyen valide dans le langage Python. L’exemple suivant utilise le module Python argparse pour traiter les arguments de script. Une parser.add_argument instruction doit être incluse pour chaque argument transmis au script.

Syntaxe Python