Contexte

Le check File Matching [$KEY$] LAST ACCESS by WinRM permet de vérifier la date de dernier accès des fichiers présents dans un répertoire, en fonction d'un filtre spécifique ou d'une liste.


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$"

          --last-access-warn "$ARG3$"
          --last-access-crit "$ARG4$"

          --recursive "$ARG5$"
          --include_hidden "$ARG6$"

          --kind "last_access"

Données utilisées provenant du modèle

Données communes pour les checks du modèle

Données spécifiques pour ce check

NomModifiable surValeur par défautDescription
WINDOWS_BY_WINRM__FILES-MATCHING-LAST-ACCESS__NO-ACCESS-SINCE-HOURS-WARN

l'Hôte

( Onglet Données )

24Délai en heures écoulées depuis le dernier accès à un fichier avant de passer le check en statut ATTENTION
WINDOWS_BY_WINRM__FILES-MATCHING-LAST-ACCESS__NO-ACCESS-SINCE-HOURS-CRIT

l'Hôte

( Onglet Données )

48Délai en heures écoulées depuis le dernier accès à un fichier avant de passer le check en statut CRITIQUE

Les données DFE ( Duplicate Foreach )

NomModifiable surValeur par défautDescriptionExemple
WINDOWS_BY_WINRM__FILES-MATCHING-LAST-ACCESS

l'Hôte

( Onglet Données )

--

KEY$(VALUE1)$$(VALUE2)$$(VALUE3)$$(VALUE4)$$(VALUE5)$$(VALUE6)$.

  • KEY correspond à une description des fichiers à superviser.
  • VALUE1 correspond au répertoire principal dans lequel regarder.
  • VALUE2 correspond au filtre à appliquer sur ce répertoire. Il peut s'agir d'un pattern (ex : *.log ) ou d'une liste de noms de fichiers (ex: [fichier1.log,fichier2.log]).

Cette donnée utilise des valeurs par défaut héritées du modèle d'hôtes :

  • VALUE3 hérite de WINDOWS_BY_WINRM__FILES-MATCHING-LAST-ACCESS__NO-ACCESS-SINCE-HOURS-WARN
  • VALUE4 hérite de WINDOWS_BY_WINRM__FILES-MATCHING-LAST-ACCESS__NO-ACCESS-SINCE-HOURS-CRIT
  • VALUE5 hérite de WINDOWS_BY_WINRM__FILES-MATCHING__RECURSIVE
  • VALUE6 hérite de WINDOWS_BY_WINRM__FILES-MATCHING__INCLUDE-HIDDEN

Ces valeurs par défaut peuvent être écrasées pour chaque check généré en remplissant les VALUEs associées.

LOGS$(C:\LOGS\)$(*.log)$$(24)$$(48)$$(true)$$(true)$

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 dépend du retour de sonde et de la configuration spécifique du check pour les données suivantes :

      • WINDOWS_BY_WINRM__FILES-MATCHING-LAST-ACCESS__NO-ACCESS-SINCE-HOURS-WARN
      • WINDOWS_BY_WINRM__FILES-MATCHING-LAST-ACCESS__NO-ACCESS-SINCE-HOURS-CRIT
    • 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
  • Au moins un fichier n'a pas été accédé depuis un délai dépassant la valeur de WINDOWS_BY_WINRM__FILES-MATCHING-LAST-ACCESS__NO-ACCESS-SINCE-HOURS-WARN

ATTENTION

  • Au moins un fichier n'a pas été accédé depuis un délai dépassant la valeur de WINDOWS_BY_WINRM__FILES-MATCHING-LAST-ACCESS__NO-ACCESS-SINCE-HOURS-CRIT

CRITIQUE

  • Aucun fichier ne correspond au filtre dans le répertoire ciblé

CRITIQUE

  • Mode liste — au moins un fichier attendu est absent du répertoire ciblé

CRITIQUE

Résultat

Renvoie pour chaque fichier en dépassement de seuil le temps écoulé depuis son dernier accès, ainsi que le répertoire ciblé et le filtre utilisé.

Résultat Long

Affiche un tableau arborescent des fichiers dont la durée écoulée depuis le dernier accès dépasse un seuil configuré, en affichant pour chaque fichier le temps écoulé ainsi que sa date de dernier accès (ex : 26h15 (2024-01-14 08:45)).

En mode liste (VALUE2 sous la forme   [fichier1.log, fichier2.log, ....]), le résultat long est toujours émis. Il présente en tête les fichiers manquants s'il y en a, puis les fichiers présents avec leur durée depuis le dernier accès.

Métriques

Définition

NomUnitéDescriptionSeuil d'avertissementSeuil critique

files_accessed_elapsed_h_(NOM_FICHIER)

HRetourne le nombre d'heures écoulées depuis le dernier accès au fichier.WINDOWS_BY_WINRM__FILES-MATCHING-LAST-ACCESS__NO-ACCESS-SINCE-HOURS-WARNWINDOWS_BY_WINRM__FILES-MATCHING-LAST-ACCESS__NO-ACCESS-SINCE-HOURS-CRIT

Exemple

Erreurs et pré-requis

Files Matching $KEY$ LAST ACCESS by WinRM



MONITORED HOST - BAD STATE – LastAccessTime updates are disabled.



Résolution

Le check supervise la date de dernier accès aux fichiers via l'horodatage NTFS LastAccessTime. Si les mises à jour de cet horodatage sont désactivées sur l'hôte Windows, la valeur retournée par le système n'est plus fiable et le check passe en statut INCONNU.

Par défaut, les mises à jour de LastAccessTime sont :

  • Désactivées sur tous les Windows Server (2012 R2, 2016, 2019, 2022, 2025)
  • Activées sur Windows 10 build 2004+ et Windows 11

1. Vérifier l'état actuel sur l'hôte supervisé

fsutil behavior query disablelastaccess
  • 0x80000000 (0) ou 0x80000002 (2) → mises à jour activées
  • 0x80000001 (1) ou 0x80000003 (3) → mises à jour désactivées

2. Activer les mises à jour (commande à exécuter en administrateur sur l'hôte supervisé)

fsutil behavior set disablelastaccess 0

Impact performance NTFS : activer les mises à jour de LastAccessTime déclenche une écriture disque à chaque lecture de fichier. À tester avant activation, en particulier sur les serveurs accédant à un grand nombre de fichiers (file servers, environnements de build, partages applicatifs, etc.).

3. Alternative si l'activation n'est pas envisageable

  • Utiliser Files Matching [$KEY$] LAST UPDATE by WinRM.
  • Pour le check Files Matching [$KEY$] by WinRM : positionner les seuils $ARG10$ et $ARG11$ (ou les variables WINDOWS_BY_WINRM__FILES-MATCHING-LAST-ACCESS__NO-ACCESS-SINCE-HOURS-WARN / ...-CRIT) à NONE pour désactiver la dimension last_access.


















Votre essai Premium est terminé