Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Exemple : Générer un message de journal système personnalisé

Les scripts de validation de Junos OS peuvent générer des messages de journal système personnalisés lors d’une opération de validation pour vous alerter lorsque la configuration n’est pas conforme aux règles de configuration personnalisées. Le processus de validation n’est pas affecté par la génération de messages de journal système. Cet exemple crée un script de validation qui génère un message de journal système personnalisé lorsqu’une instruction spécifique n’est pas incluse dans la configuration de l’appareil.

Exigences

Junos OS version 16.1R3 ou ultérieure lors de l’utilisation d’un script Python.

Vue d’ensemble et script de validation

À l’aide d’un script de validation, écrivez un message de journal système personnalisé qui s’affiche lorsque l’instruction n’est read-write pas incluse au niveau de la [edit snmp community community-name authorization] hiérarchie.

Le script est affiché en XSLT, SAX et Python.

Syntaxe XSLT

Syntaxe SLAX

Syntaxe Python

Configuration

Procédure

Procédure étape par étape

Téléchargez, activez et testez le script. Pour vérifier qu’un script de validation génère correctement un message de journal système, assurez-vous que la configuration candidate contient la condition qui déclenche le message de journal système. Pour cet exemple, assurez-vous que l’instruction n’est read-write pas incluse au niveau de la [edit snmp community community-name authorization] hiérarchie.

Pour tester l’exemple de cette rubrique, procédez comme suit :

  1. Copiez le script dans un fichier texte, nommez le fichier read-write.xsl, read-write.slax ou read-write.py selon le cas, puis copiez-le dans le répertoire /var/db/scripts/commit/ de l’équipement.

    Note:

    Les scripts Python non signés doivent appartenir à l’utilisateur root ou à un utilisateur de la classe de connexion Junos OS super-user , et seul le propriétaire du fichier peut disposer d’une autorisation d’écriture sur le fichier.

  2. En mode configuration, configurez l’instruction file et le nom de fichier du script au niveau de la [edit system scripts commit] hiérarchie.

  3. Si le script est écrit en Python, activez l’exécution de scripts Python non signés.

    Note:

    Configurez l’instruction language python3 pour qu’elle utilise Python 3 pour exécuter des scripts Python, ou configurez l’instruction language python pour qu’elle utilise Python 2.7 pour exécuter des scripts Python. Pour plus d’informations, reportez-vous à la section langue.

  4. (Facultatif) Pour tester la condition, si l’instruction read-write est incluse au niveau de la [edit snmp community community-name authorization] hiérarchie pour chaque communauté, supprimez temporairement l’autorisation d’une communauté SNMP existante.

  5. Exécutez la commande suivante pour vérifier que la journalisation système est configurée pour écrire dans un fichier (un nom de fichier couramment utilisé est messages) :

    Pour plus d’informations sur la configuration du journal système, consultez l’Explorateur du journal système.

  6. Exécutez la commit commande pour valider la configuration.

Vérification

Vérification de l’exécution d’un script

But

Vérifiez le message du journal système généré par le script de validation.

Note:

Les messages du journal système sont générés lors d’une opération de validation pour les scripts Python, SAX et XSLT, mais ils ne sont générés que lors d’une opération de vérification de validation pour les scripts Python. Cela signifie que vous ne pouvez pas utiliser les commit check | display xml commandes du mode de configuration ou commit check | display detail pour vérifier la sortie des messages du journal système pour les scripts SLAX et XSLT.

Action

Une fois l’opération de validation terminée, inspectez le fichier journal système. Le répertoire par défaut des fichiers journaux est /var/log/. Affichez le fichier journal en exécutant la show log filename commande mode opérationnel. Par exemple, si les messages sont consignés dans le fichier de messages , exécutez la commande suivante :

Les entrées du journal système générées par les scripts de commit ont le format suivant :

Étant donné que l’instruction read-write n’a pas été incluse au niveau de la [edit snmp community community-name authorization] hiérarchie, le script de validation doit générer le message « La communauté SNMP n’a pas d’accès en lecture-écriture » dans le fichier journal système.