Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Passe-partout requis pour les scripts d’événements

RÉSUMÉ Définissez le modèle standard pour les scripts d’événements.

Les scripts d’événements Junos OS peuvent être écrits en XSLT (Extensible Stylesheet Language Transformations), SAX (Stylesheet Language Alternative, SLAX) ou Python. Les scripts d’événements doivent inclure le modèle standard requis pour ce langage de script, tant pour les fonctionnalités de script de base que pour toutes les fonctionnalités facultatives utilisées dans le script, telles que les fonctions d’extension Junos OS et les modèles nommés. Cette rubrique fournit un modèle standard standard qui peut être utilisé dans les scripts d’événements XSLT, SLAX et Python.

Les scripts d’événements SLAX et XSLT sont basés sur Junos XML et les éléments de balise de protocole Junos XML. Comme tous les éléments XML, les chevrons entourent le nom d’un élément de balise de protocole Junos XML ou Junos XML dans ses balises d’ouverture et de fermeture. Il s’agit d’une convention XML, et les crochets sont une partie obligatoire du nom complet de l’élément de balise. Elles ne doivent pas être confondues avec les chevrons utilisés dans la documentation pour indiquer les parties facultatives des chaînes de commande CLI de Junos OS.

XSLT Boilerplate pour les scripts d’événements

Le scénario standard du script d’événement XSLT est le suivant :

La ligne 1 est l’instruction de traitement (PI) du langage de balisage extensible (XML). Ce PI spécifie que le code est écrit en XML à l’aide de la version 1.0. Le PI XML, s’il est présent, doit être le premier jeton sans commentaire dans le fichier de script.

La ligne 2 ouvre la feuille de style et spécifie que la version XSLT est 1.0.

Les lignes 3 à 6 répertorient tous les mappages d’espaces de noms couramment utilisés dans les scripts d’événements. Tous ces préfixes ne sont pas utilisés dans cet exemple, mais répertorier les mappages d’espaces de noms qui ne sont pas référencés n’est pas une erreur. La liste de tous les mappages d’espaces de noms évite les erreurs si les mappages sont utilisés dans des versions ultérieures du script.

La ligne 7 est une instruction d’importation XSLT. Il charge les modèles et les variables à partir du fichier référencé en tant que .. /import/junos.xsl, fourni avec Junos OS (dans le fichier /usr/libdata/cscript/import/junos.xsl). Le fichier junos.xsl contient un ensemble de modèles nommés que vous pouvez appeler dans vos scripts. Ces modèles nommés sont abordés dans Présentation des modèles nommés dans les scripts d’automatisation Junos OS.

La ligne 8 définit un modèle qui correspond à l’élément </> . L’élément <xsl:template match="/"> est l’élément racine et représente le niveau supérieur de la hiérarchie XML. Toutes les expressions XPath du script doivent commencer au niveau supérieur. Cela permet au script d’accéder à tous les appels de procédure à distance (RPC) de protocole Junos XML et Junos XML. Pour plus d’informations, consultez Vue d’ensemble de XPath.

Après l’élément <xsl:template match="/"> de balise, les <event-script-results> balises et </event-script-results> container doivent être les balises enfants de niveau supérieur, comme indiqué aux lignes 9 et 10.

La ligne 11 ferme le modèle.

Entre la ligne 11 et la ligne 12, vous pouvez définir des modèles XSLT supplémentaires qui sont appelés à partir <xsl:template match="/"> du modèle.

La ligne 12 ferme la feuille de style et le script d’événement.

Passe-partout SLAX pour les scripts d’événements

Le script SLAX op ister est le suivant :

Python Boilerplate pour les scripts d’événements

Les scripts d’événements Python n’ont pas de passe-partout requis, mais ils doivent importer tous les objets utilisés dans le script. Les scripts d’événements Python peuvent importer les éléments suivants :

  • Junos_Context dictionary : contient des informations sur l’environnement d’exécution du script.

  • Junos_Trigger_Event and Junos_Received_Events objects : contiennent des détails sur les événements qui ont déclenché la stratégie d’événements correspondante.

  • Junos_Remote_Execution_Details: fonction de générateur requise pour accéder aux détails d’exécution à distance configurés pour un script d’événement au niveau de la [edit event-options event-script file filename remote-execution] hiérarchie.

  • jcs library : permet au script d’utiliser les fonctions d’extension Junos OS et la fonctionnalité de modèle nommé Junos OS dans le script.

  • jnpr.junos module and classes : permet au script d’utiliser Junos PyEZ.

Par exemple:

Les scripts d’automatisation Python n’ont pas besoin d’inclure une ligne de directive d’interpréteur (#!/usr/bin/env python) au début du script. Cependant, le programme s’exécutera toujours correctement s’il y en a un.