| Scroll Ignore | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||
|
Contexte
Nous avons fait le choix que le statut de ce modèle check reste en OK il ne passera pas en Warning ou en Critical. Les métriques supervisées par ce modèle ne sont pas bloquantes pour le bon fonctionnement du serveur web IIS.
Les checks que nous fournissons ne renvoie que des métriques car nous ne pouvons pas faire de corrélation entre ces métriques et le bon fonctionnement du serveur iis.
Si vous voulez ajouter un seuil à ces métriques pour que le check passe en Warning ou en Critical, cette page est là pour vous montrer comment créer de nouveaux checks et de nouvelles commandes. Ainsi qu'une présentation des différents arguments que vous pouvez ajouter aux commandes pour répondre au mieux à vos besoins.
Pour des besoins plus précis, il vous sera nécessaire de créer de nouveaux checks ( voir la page Les bonnes pratiques d'utilisation d'un pack livré par Shinken ).
Comment créer de nouveaux checks et commandes ?
En premier lieu nous vous conseillons de créer des clones des commandes et checks existants plutôt que de modifier directement ceux fournis par Shinken, cela vous évitera d'avoir des "Différences" dans Staging.
Créer de nouveaux checks et commandesVous pouvez cloner les commandes, les checks et le modèle d'hôte apporté apportés par le pack IIS et par la suite modifier les clones voici des pages de doc à ce sujet créés.
Les pages de documentation suivantes expliquent comment vous devez procéder :
Les différents arguments
personnalisablesdu script
La sonde "check_wmi_plus" permet de superviser une machine Windows et ses différents service, il possède plus de 80 vérifications, nous avons pour vous isoler les 5 vérifications permettant de Les commandes utilisées pour superviser un serveur web IIS dans des checks. Nous allons maintenant vous présenter les différents arguments fournis pour personnaliser ces checks et comment les utiliser.
Les arguments suivants ne sont pas configurables dans les commandes de base fournies par Shinken possèdent différents arguments dont la personnalisation par des données directement dans le pack n'est pas mise en place n'étant utile que dans des cas particuliers et pouvant amener à des confusions, les voici :
- -a : Le Cet argument permet de spécifier le nom de l'instance du serveur web pour lequel on veut voir les statistiquesque vous voulez superviser. Utilisez _Total pour les statistiques totales de tous les sites web. (Par défaut Shinken utilise _Total), sinon pour monitorer un serveur web en particulier, entrez son nom.
- ( Par défaut Shinken utilise _Total )
- --nokeepstate : Permets Cet argument permet de ne pas conserver l'état des résultats fournis par le check dans le dossier temporaire du système. Par défaut, sans cet argument, le check va créer un fichier dans /Tmp temporaire pour conserver l'état des métriques résultats et faire une moyenne lors des prochains appelésappels, cela permet d'avoir une moyenne plus précise. Mais nous ne vous recommandons pas de conserver l'état et donc d'utiliser --nokeepstate lorsque vous lorsque vous utilisez plusieurs Pollers, . Car les pollers Pollers ne partageant pas leurs /Tmp fichiers temporaires et cela peut produire des erreurs ou des résultat incohérents. ( Par défaut Shinken utilise --nokeepstate pour éviter les erreurs lors de l'utilisation de plusieurs Pollers )
Les arguments suivants sont configurables par des données dans les commandes de base fournies par Shinken :
- -t :
- Cet argument spécifie le nombre de secondes
- au-delà duquel la commande est interrompue. Certaines requêtes WMI prennent plus de temps que d'autres et
- un réseau avec une latence élevée peuvent
- nécessiter une augmentation de la valeur par défaut qui est de 15 secondes.
- -y :
- Cet argument spécifie le nombre de secondes sur lequel
- le check est effectué. Plus le délai est long, plus le calcul sera précis
- . Valable uniquement si vous spécifiez également l'argument --nokeepstate, c'est-à-dire si vous n'utilisez pas la fonction de conservation de l'état
- . Les métriques qui dépendent de cette donnée ont un nom qui termine par "PerSec". La valeur par défaut est
- de 2 secondes.
| Info |
|---|
Plus le temps donné à l'argument -y sera élevé, plus la valeur renvoyée sera précise. Mais cela a un coût sur les ressources utilisées par le Poller exécutant la commande. Si le temps d'exécution de la commande dépasse la valeur de l'argument -t, la commande va s'interrompre avant d'avoir son résultat. Il est recommandé d'affecter une valeur à l'argument -t toujours supérieure à celle de l'argument -y d'au moins 6 secondes. |
| Info |
|---|
Si le temps donné à l'argument -t dépasse les 60 secondes, le check devra être surchargé pour modifier le "temps maximum d'exécution d'un check" à la valeur définie en paramètre de l'argument -t . Voir Temps maximum d'exécution d'un check ( voir Editer un check ). |
Voici les arguments optionnels que nous n'utilisons pas et qui peuvent vous être utile :
- -w : Définit à quelle valeur le check passe en Warning.
- -c : Définit à quelle valeur le check passe en Critique.
Attention, par défaut pour les arguments -w et -c, une seule métrique est supervisée pour chaque commande, et non pas toutes.
Consultez la section "Les métriques supervisées par défaut" présente plus bas dans cette page, pour connaitre la métrique supervisée par défaut pour chaque commande.
Vous pouvez personnaliser la métrique supervisée avec la syntaxe suivante :
| Info |
|---|
-w METRIQUE=VALUE ou -c METRIQUE=VALUE |
METRIQUEétant le nom de la métrique à superviser et VALUE la valeur à laquelle le check passe en Warning/Critique
.
Pour chacune des commandes du pack IIS vous avez accès à la liste des métriques que renvoie chaque commande. Cette liste est disponible sur la page de documentation de chaque check dans la rubrique Métriques. Voici les liens vers chacune des pages de documentation correspondantes :
- Connections - Modèle iis
- Errors - Modèle iis
- RequestsActivity - Modèle iis
- TransfertsActivity - Modèle iis
- Users - Modèle iis
Les métriques supervisées par défaut
Pour chacune des commandes de supervision d'un serveur web IIS, une seule métrique
par défaut est supervisé les voici :est supervisée, voici celles supervisé par défaut si vous n'en spécifiez aucune :
| Check Name | Métriques supervisé par défaut |
|---|---|
| Connections | CurrentConnections |
| Errors | _NotFoundErrorsPersec |
| RequestsActivity | _GetRequestsPersec |
| TransfertsActivity | _BytesTotalPersec |
| Users | _LogonAttemptsPersec |
Exemple
Création d'une nouvelle commande
Voici un exemple pour une modification de la commande "Connections", le procédé reste le même pour toutes les autres commandes.
Nous vous conseillons de créer un clone de la commande plutôt que de modifier directement la commande, cela vous éviteras d'avoir des "Différence" dans le Staging
On sélectionne- Sélection de la commande que vous voulez modifier :
| Panel |
|---|
- Clone de la commande :
| Panel |
|---|
( Voir la page Personnaliser une commande livrée par un pack Shinken )
- Contenue de la page d'édition de la commande :
| Panel |
|---|
Ici nous allons modifier le contenue contenu de la commande, pour plus d'informations concernant le reste des éléments de cette page vous pouvez lire cette page : la doc ( voir Les commandes ).Nous voulons
| Panel |
|---|
|
- Ajout d'un argument pour que notre
- check puisse passer en warning :
On ajoute l'argument -w pour que le check puisse passer en Warning, ainsi qu'une donnée "_HOSTIIS_CONNECTIONS_WARN" pour pouvoir définir à quel seuil le check passe en le seuil de Warning.
| Info |
|---|
Lors de la création d'une nouvelle donnée toujours ajouter _HOST devant le nom de votre donnée. |
| Panel |
|---|
- Choix de la métrique à superviser :
Comme expliqué plus haut, Les métriques supervisées par défautdans "Les différents arguments personnalisables", le Warning ne se feras fera que sur une seule métrique, ici CurrentConnections, le check Connections contient aussi une métrique _ConnectionAttemptsPerSec.
Si vous voulez superviser la métrique _ConnectionAttemptsPerSec plutôt que la métrique CurrentConnections nous pouvons le spécifier dans notre commande avec "METRIQUE=VALUE", ici _ConnectionAttemptsPerSec="$_HOSTIIS_CONNECTIONS_WARN$"
| Panel |
|---|
Création d'un nouveau modèle d'hôte
Nous allons créer- Création d'un nouveau modèle d'hôte :
Notre modèle va hériter du modèle Windows-base, le modèle Windows-base pour que notre modèle est accès aux données nécessaires au bon fonctionnement des checks
Nous allons maintenant ajouter la donnée que nous utilisons dans notre commande à notre modèle :
précise les données nécessaires pour la connexion à la machine Windows. Vous pouvez aussi faire hériter votre modèle d'hôte du modèle d'hôte IIS pour avoir accès à l'ensemble de ses checks et données.
| Panel |
|---|
- Ajout de la donnée utilisé par notre commande, dans notre modèle :
La donnée que nous utilisons dans notre commande est _HOSTIIS_CONNECTIONS_WARN, pour le nom de la donnée de notre modèle d'hôte il faut utilise utiliser le même nom sans le _HOST.HOST. Par défaut la commande iis_connections utilise deux autres données, IIS_CONNECTIONS_DELAY et IIS_CONNECTIONS_TIMEOUT. Nous n'avons pas retiré leur utilisation dans la commande, il faut donc les ajouter à notre modèle d'hôte. Sauf si vous héritez du modèle d'hôte iis.
| Panel |
|---|
( Voir la page Créer un modèle d'hôte hérité d'un modèle livré dans un pack Shinken )
Création d'un nouveau check appliqué aux modèle d'hôtes
- Création d'un nouveau check :
Pour cela utilisant notre commande, nous allons copier notre check Connections :
| Panel |
|---|
- Contenu de la page d'édition
- du check :
1 : Si vous avez apporté des modifications au
Modèlemodèle de Check iis-service
vous pouvez le conserveret que vous souhaitez les conserver sur votre check vous pouvez hériter du modèle de Check iis-service, sinon créer votre propre modèle de check ou simplement
utiliséutiliser le modèle generic-service.
2 : Ici vous
devez supprimer iis et le remplacer parentrez le nom de votre modèle d'hôte, dans cet exemple c'est IIS_Connection
Upgrade.On change la commande par celle_warn_ConnectionAttempts.
| Panel |
|---|
- Modifiez le check pour utiliser la commande que nous avons créée :
| Panel |
|---|
- Votre modèle d'hôte a maintenant accès à votre nouveau check et sa nouvelle commande.
- Vous pouvez appliquer ce modèle à n'importe quel hôte, pour qu'il ait accès à ce nouveau check.
( Voir la pageCréer un check attaché à un modèle d'hôte hérité d'un modèle livré dans un pack Shinken ) la commande de votre nouveau check.
















