Contexte

Le check Files Matching [$KEY$] by WinRM permet de superviser simultanément plusieurs propriétés des fichiers présents dans un répertoire : taille, nombre, date de dernière modification et date de dernier accès. Chaque dimension est indépendante et peut être activée ou désactivée individuellement via ses seuils.


Paramétrage

Le check utilise la ligne de commande suivante :

$WINDOWS-BY-WINRM__SHINKEN__PLUGINSDIR$/check_windows_health_by_winrm_rust --check check_files_matching
            --hostname "$HOSTADDRESS$"
            --port "$_HOSTWINDOWS_BY_WINRM__PORT$"
            --username "$_HOSTWINDOWS_BY_WINRM__DOMAINUSER$"
            --password "$_HOSTWINDOWS_BY_WINRM__DOMAINPASSWORD$"
            --auth_method "$_HOSTWINDOWS_BY_WINRM__AUTHMETHOD$"
            --timeout "$_HOSTWINDOWS_BY_WINRM__TIMEOUT$"

            --path "$ARG1$"
            --filter "$ARG2$"

            --size-warn "$ARG3$"
            --size-crit "$ARG4$"
            --size-unit "$ARG5$"

            --count-warn "$ARG6$"
            --count-crit "$ARG7$"

            --last-update-warn "$ARG8$"
            --last-update-crit "$ARG9$"

            --last-access-warn "$ARG10$"
            --last-access-crit "$ARG11$"

            --recursive "$ARG12$"
            --include_hidden "$ARG13$"

            --kind "multi"

Données utilisées provenant du modèle

Données communes pour les checks du modèle

Données spécifiques pour ce check

Les variables suivantes sont à définir sur le modèle d'hôtes. Chaque dimension peut être désactivée individuellement en positionnant ses deux seuils à NONE. Au moins une dimension doit rester active.

NomModifiable surValeur par défautDescription
WINDOWS_BY_WINRM__FILES-MATCHING-SIZE__SIZE-WARN

l'Hôte

( Onglet Données )

100

Taille d'un fichier à partir de laquelle le check passe en statut ATTENTION

L'unité utilisée est définie par WINDOWS_BY_WINRM__FILES-MATCHING-SIZE__UNIT.

WINDOWS_BY_WINRM__FILES-MATCHING-SIZE__SIZE-CRIT

l'Hôte

( Onglet Données )

200

Taille d'un fichier à partir de laquelle le check passe en statut CRITIQUE

L'unité utilisée est définie par WINDOWS_BY_WINRM__FILES-MATCHING-SIZE__UNIT.

WINDOWS_BY_WINRM__FILES-MATCHING-SIZE__UNIT

l'Hôte

( Onglet Données )

MB

Unité utilisée pour l'affichage des tailles de fichiers ainsi que pour l'évaluation des seuils (SIZE-WARN et SIZE-CRIT).

Valeurs supportées : B , KB , MB , GB ou TB .

WINDOWS_BY_WINRM__FILES-MATCHING-COUNT__COUNT-WARN

l'Hôte

( Onglet Données )

50Nombre de fichiers à partir duquel le check passe en statut ATTENTION. Mettre à NONE pour désactiver. Incompatible avec le mode liste.
WINDOWS_BY_WINRM__FILES-MATCHING-COUNT__COUNT-CRIT

l'Hôte

( Onglet Données )

100Nombre de fichiers à partir duquel le check passe en statut CRITIQUE. Mettre à NONE pour désactiver. Incompatible avec le mode liste.
WINDOWS_BY_WINRM__FILES-MATCHING-LAST-UPDATE__NO-UPDATE-SINCE-HOURS-WARN

l'Hôte

( Onglet Données )

24Délai en heures depuis la dernière modification à partir duquel le check passe en statut ATTENTION. Mettre à NONE pour désactiver.
WINDOWS_BY_WINRM__FILES-MATCHING-LAST-UPDATE__NO-UPDATE-SINCE-HOURS-CRIT

l'Hôte

( Onglet Données )

48Délai en heures depuis la dernière modification à partir duquel le check passe en statut CRITIQUE. Mettre à NONE pour désactiver.
WINDOWS_BY_WINRM__FILES-MATCHING-LAST-ACCESS__NO-ACCESS-SINCE-HOURS-WARN

l'Hôte

( Onglet Données )

24Délai en heures depuis le dernier accès à partir duquel le check passe en statut ATTENTION. Mettre à NONE pour désactiver.
WINDOWS_BY_WINRM__FILES-MATCHING-LAST-ACCESS__NO-ACCESS-SINCE-HOURS-CRIT

l'Hôte

( Onglet Données )

48Délai en heures depuis le dernier accès à partir duquel le check passe en statut CRITIQUE. Mettre à NONE pour désactiver.

Les données DFE ( Duplicate Foreach )

NomModifiable surValeur par défautDescriptionExemple
WINDOWS_BY_WINRM__FILES-MATCHING

l'Hôte

( Onglet Données )

--
ValeurExplicationExemple
$KEY$ Nom utilisé pour garantir l'unicité des checks DFE générés. LOGS
$ARG1$Répertoire principal à analyser.
  • C:\shinken
$ARG2$

Filtre à appliquer sur ce répertoire. Il peut prendre deux formes différentes :

  • un pattern
  • une liste de noms de fichiers
  • *.log
  • [fichier1.log,fichier2.log] ou fichier1.log;fichier2.log
$ARG3$

Seuil de taille à partir duquel le check passe en statut ATTENTION .

Hérite de WINDOWS_BY_WINRM__FILES-MATCHING-SIZE__SIZE-WARN.

Mettre à NONE pour désactiver la dimension size.

  • 10
  • NONE
$ARG4$

Seuil de taille à partir duquel le check passe en statut CRITIQUE .

Hérite de WINDOWS_BY_WINRM__FILES-MATCHING-SIZE__SIZE-CRIT.

Mettre à NONE pour désactiver la dimension size.

  • 100
  • NONE
$ARG5$

Unité utilisée pour l'affichage ainsi que pour l'évaluation des seuils de taille.

Hérite de WINDOWS_BY_WINRM__FILES-MATCHING-SIZE__UNIT.

  • B, KB, MB, GB ou TB.
$ARG6$

Seuil de nombre de fichiers à partir duquel le check passe en statut ATTENTION.

Hérite de WINDOWS_BY_WINRM__FILES-MATCHING-COUNT__COUNT-WARN.

Mettre à NONE pour désactiver la dimension count. Incompatible avec le mode liste.

  • 50
  • NONE
$ARG7$

Seuil de nombre de fichiers à partir duquel le check passe en statut CRITIQUE.

Hérite de WINDOWS_BY_WINRM__FILES-MATCHING-COUNT__COUNT-CRIT.

Mettre à NONE pour désactiver la dimension count. Incompatible avec le mode liste.

  • 100
  • NONE
$ARG8$

Délai en heures depuis la dernière modification à partir duquel le check passe en statut ATTENTION.

Hérite de WINDOWS_BY_WINRM__FILES-MATCHING-LAST-UPDATE__NO-UPDATE-SINCE-HOURS-WARN.

Mettre à NONE pour désactiver la dimension last_update.

  • 24
  • NONE
$ARG9$

Délai en heures depuis la dernière modification à partir duquel le check passe en statut CRITIQUE.

Hérite de WINDOWS_BY_WINRM__FILES-MATCHING-LAST-UPDATE__NO-UPDATE-SINCE-HOURS-CRIT.

Mettre à NONE pour désactiver la dimension last_update.

  • 48
  • NONE
$ARG10$

Délai en heures depuis le dernier accès à partir duquel le check passe en statut ATTENTION.

Hérite de WINDOWS_BY_WINRM__FILES-MATCHING-LAST-ACCESS__NO-ACCESS-SINCE-HOURS-WARN.

Mettre à NONE pour désactiver la dimension last_access.

  • 24
  • NONE
$ARG11$

Délai en heures depuis le dernier accès à partir duquel le check passe en statut CRITIQUE.

Hérite de WINDOWS_BY_WINRM__FILES-MATCHING-LAST-ACCESS__NO-ACCESS-SINCE-HOURS-CRIT.

Mettre à NONE pour désactiver la dimension last_access.

  • 48
  • NONE
$ARG12$

Active ou désactive la recherche récursive dans le répertoire principal. Il peut accepter 2 types de données :

  • un booléen
  • un nombre entier

Hérite de WINDOWS_BY_WINRM__FILES-MATCHING__RECURSIVE.

  • true/false

    Note : À "true", le check analysera le répertoire et tous ses dossiers jusqu'à la profondeur maximale.

  • 3 (Le check analysera le répertoire et ses dossiers à une profondeur maximale de 3).
$ARG13$

Active ou désactive la prise en compte des fichiers cachés.

Hérite de WINDOWS_BY_WINRM__FILES-MATCHING__INCLUDE-HIDDEN.

  • true/false
  • Mode pattern :
LOGS$(C:\shinken)$$(*.log)$$(10)$$(100)$$(MB)$$(50)$$(100)$$(24)$$(48)$$(24)$$(48)$$(true)$$(true)$
  • Mode liste :
LOGS$(C:\shinken)$$([fichier1.log,fichier2.log])$$(10)$$(100)$$(MB)$$(NONE)$$(NONE)$$(24)$$(48)$$(24)$$(48)$$(true)$$(true)$

Si aucune valeur n'est renseignée pour un $ARGn$ sur un check, la valeur définie sur la donnée associée dont il hérite est utilisée à la place. Cette donnée peut à son tour avoir sa propre valeur par défaut.

Tous les checks DFE générés à partir du modèle Modèle windows-by-WinRM__files-one-property-per-check héritent de ses valeurs par défaut. Cela implique que :

  • Effet global : tant que $ARGn$ n'est pas renseigné sur une instance, celle-ci lit la variable hôte définie par le modèle. Si plusieurs instances laissent $ARGn$ vide, elles partagent toutes la même valeur. Modifier la variable hôte (ou la valeur par défaut du modèle) se répercute donc sur toutes les instances qui n'ont pas renseigné $ARGn$.
  • Comportement spécifique à une instance : la seule façon de donner à une instance un comportement différent est de renseigner explicitement le $ARGn$ concerné sur cette instance. 



Exemple$ARG12$ et  $ARG13$ (fichiers cachés et récursivité) du check Files Matching [$KEY$] by WinRM :

  1. Si ils ne sont pas renseignés sur l'instance, le modèle utilise les variables hôtes WINDOWS_BY_WINRM__FILES-MATCHING__RECURSIVE et WINDOWS_BY_WINRM__FILES-MATCHING__INCLUDE-HIDDEN.

  2. Si ces variables ne pas sont pas définies, elles prendront leur propre valeur par défaut, true.


    La coloration ici, indique que les valeurs par défauts sont utilisés

  3. Si plusieurs instances ne déclarent pas $ARG12$ et  $ARG13$, les 2 utiliseront les même données.
  4. Conséquence : plusieurs instances générées sans $ARG12$ et  $ARG13$ utiliseront toutes true. Pour qu'une instance particulière utilise false, il faut renseigner $ARG12$ et $ARG13$ sur cette instance ; modifier WINDOWS_BY_WINRM__FILES-MATCHING__RECURSIVE et WINDOWS_BY_WINRM__FILES-MATCHING__INCLUDE-HIDDEN à false ferait basculer toutes les instances sans surcharge à false.



Données utilisées provenant du check

Pas de données provenant du check

Résultat

Exemple

Interprétation

Statut

  • Il peut prendre quatre valeurs OK / CRITIQUE / ATTENTION / INCONNU .

    • Le statut global est le plus sévère parmi toutes les dimensions actives. Les données concernées sont :

      • WINDOWS_BY_WINRM__FILES-MATCHING-SIZE__SIZE-WARN / ...-CRIT ou DFE position $ARG3$/$ARG4$
      • WINDOWS_BY_WINRM__FILES-MATCHING-COUNT__COUNT-WARN / ...-CRIT ou DFE position $ARG6$/$ARG7$
      • WINDOWS_BY_WINRM__FILES-MATCHING-LAST-UPDATE__NO-UPDATE-SINCE-HOURS-WARN / ...-CRIT ou DFE position $ARG8$/$ARG9$
      • WINDOWS_BY_WINRM__FILES-MATCHING-LAST-ACCESS__NO-ACCESS-SINCE-HOURS-WARN / ...-CRIT
      • ou DFE position $ARG10$/$ARG11$
    • Voici un tableau récapitulatif du statut attendu suivant le retour de sonde :

Le texte de la colonne "Affichage des seuils" montre les paramètres utilisés et leur valeur définie sur l'équipement supervisé.

Situation Statut Exemple
  • 2 dimensions actives (size + count) — au moins un fichier dépasse le seuil d'avertissement d'une dimension

ATTENTION

  • 2 dimensions actives (size + count) — au moins un fichier dépasse le seuil critique d'une dimension

CRITIQUE

  • Toutes les dimensions actives (size + count + last_update + last_access) — au moins un fichier dépasse le seuil d'avertissement d'une dimension

ATTENTION

  • Toutes les dimensions actives (size + count + last_update + last_access) — au moins un fichier dépasse le seuil critique d'une dimension

CRITIQUE

  • Mode liste — au moins un fichier attendu est absent du répertoire ciblé (les fichiers présents sont évalués normalement sur les dimensions actives)

CRITIQUE

  • Mode liste — tous les fichiers attendus sont absents du répertoire ciblé

CRITIQUE

  • Mode pattern — Aucun fichier correspondant au filtre n'est trouvé.

CRITIQUE

Résultat

Selon les dimensions activées (parmi count, size, last_update, last_access) et leur statut, une ou plusieurs lignes, triées par sévérité décroissante :

  • Pour la dimension count : CRITIQUE : N fichier(s) trouvé(s) (≥ C critique). / ATTENTION : N fichier(s) trouvé(s) (≥ W avertissement). / OK : N fichier(s) trouvé(s).
  • Pour chaque dimension (size / last_update / last_access) : mêmes lignes CRITIQUE/ATTENTION/OK que la dimension correspondante.
  • Mode liste, si au moins un fichier manquant : ligne supplémentaire en tête N fichier(s) manquant(s).
  • Court-circuit : dimension count active et 0 fichier : CRITIQUE : 0 file(s) found., ligne unique, aucune autre dimension évaluée.
  • 0 fichier trouvé (mode pattern, sans dimension count) : Aucun fichier trouvé correspondant à '<filtre>' dans '<chemin>'.

Résultat Long

Affiche un tableau arborescent par sévérité (critique puis attention) avec pour chaque fichier en dépassement une colonne par dimension active (Name | [Count] | Size | Last Update | Last Access), valeur dans la cellule colorée selon le statut de la dimension (ex : 150.25 MB, 72.5 H). Si la dimension count est active, une colonne Count est ajoutée avec le total et une cellule récapitulative sur la première ligne du tableau quand sa sévérité correspond à celle de la section.

En mode liste ($ARG3$ sous la forme [fichier1.log, fichier2.log, ...]), le résultat long est toujours émis :

  • Une table MISSING en tête si au moins un nom de la liste est absent du répertoire.
  • Puis, pour les fichiers présents, les tables crituque/attention si des seuils sont dépassés ; sinon (tout OK), un unique tableau Detected N file(s): listant tous les fichiers avec leurs valeurs par dimension.
  • Pas de colonne Count en mode liste (combo count + liste interdit en amont).

Métriques

Définition

Les métriques émises dépendent des dimensions actives :

NomUnitéDescriptionSeuil d'avertissementSeuil critique
files_size_(NOM_FICHIER)BTaille en octets de chaque fichier. Émise uniquement si la dimension size est active.WINDOWS_BY_WINRM__FILES-MATCHING-SIZE__SIZE-WARN (ou DFE position $ARG3$)WINDOWS_BY_WINRM__FILES-MATCHING-SIZE__SIZE-CRIT (ou DFE position $ARG4$)
files_total_size_(CONTEXTE)BTaille totale en octets de l'ensemble des fichiers détectés. Composé du répertoire supervisé et du filtre utilisé. Émise uniquement si la dimension size est active.
files_updated_elapsed_h_(NOM_FICHIER)HHeures écoulées depuis la dernière modification. Émise uniquement si la dimension last update est active.WINDOWS_BY_WINRM__FILES-MATCHING-LAST-UPDATE__NO-UPDATE-SINCE-HOURS-WARN (ou DFE position $ARG8$)WINDOWS_BY_WINRM__FILES-MATCHING-LAST-UPDATE__NO-UPDATE-SINCE-HOURS-CRIT (ou DFE position $ARG9$)
files_accessed_elapsed_h_(NOM_FICHIER)HHeures écoulées depuis le dernier accès. Émise uniquement si la dimension last access est active.WINDOWS_BY_WINRM__FILES-MATCHING-LAST-ACCESS__NO-ACCESS-SINCE-HOURS-WARN (ou DFE position $ARG10$)WINDOWS_BY_WINRM__FILES-MATCHING-LAST-ACCESS__NO-ACCESS-SINCE-HOURS-CRIT (ou DFE position $ARG11$)

Exemple

Erreurs et pré-requis