ServiceNav propose 2 modèles de services pour permettre d’exécuter ses propres requêtes SQL MS-MSSQL-request-integer et MS-MSSQL-request-integer.
Par défaut ces modèles fonctionnent avec Microsoft SQLServer et avec Sybase.
Nous allons nous intéresser ici au modèle MS-MSSQL-Request-Integer
Utilisation du modèle MS-MSSQL-request-integer
Ce modèle permet d’exécuter une requête qui devra retourner une valeur de type entier sur une seule ligne.
La valeur retournée pourra être comparée à des seuils.
Prérequis pour la configuration :
Compte de supervision de type MS SQL ayant le droit de lancer la commande sur l’instance et la base de données de SQL Server ou Sybase.
Configuration du fichier freetds.conf. Pour consulter la documentation sur ce lien : https://coservit.com/servicenav/fr/documentation/configurer-la-supervision-pour-une-base-ms-sql-server/
Paramètre du modèle :
– Le nom du serveur : Il s’agit du nom défini dans le fichier freetds.conf : [NOM_CONNEXION]
– Le nom de la base de données à requêter
– La requête SQL
– Le texte à afficher en préfixe de la valeur retournée
– Le seuil d’alerte et le seuil critique de type entier
Cas d’usage – Contrôler un scénario applicatif
Objectif : J’ai une application qui gère des scénarios applicatifs. N’ayant pas de modèle pour cette application dans ServiceNav, j’ai néanmoins la possibilité de contrôler le temps d’exécution du scénario directement en base de données.
En utilisant le modèle MS-MSSQL-request-integer présent dans ServiceNav, je vais donc créer mon propre modèle de service pour superviser mon scénario applicatif.
Depuis son serveur SQL
Dans sa console Microsoft SQL Server Management, préparer sa requête pour ne retourner qu’une seule valeur sur une ligne.
select top 1 status from SchedItemResult where webscriptName=’ServiceNav – Demo’ and DATEDIFF(minute, PollTime, getdate()) < 5 order by PollTime desc;
Le résultat est celui-ci :
Ici, j’ai un résultat avec la colonne «Totaltime» qui me servira à connaître le temps d’exécution de mon scénario.
Il suffit maintenant de l’implémenter dans un modèle de service ServiceNav.
Depuis ServiceNav
Créer un nouveau service unitaire depuis le modèle MS-MSSQL-Query_Integer
Dans le Module Configuration / Menu Services / Listes
Cliquer sur le bouton Ajouter :
Choisir le Modèle de service
Instancier les champs :
La requête va donc renvoyer une valeur de type entier que je vais comparer aux seuils définis.
Ajouter ce service sur son équipement qui gère les scénarios.
Cliquer sur Valider et recharger sa configuration.
Vérification de ce nouveau modèle dans la supervision
Dans le Module Supervision / Exploitation Technique
Rechercher son point de contrôle et vérifier son fonctionnement.
Il y a également accès aux données de performance.
Cliquer sur le service
Ce modèle ouvre de nombreuses possibilités qu’il est possible d’exposer dans son module MAP.