L'agent ''[[http://mathias-kettner.de/check_mk.html|check_mk]]'' permet de superviser avec un seul outil tout un ensemble de //métriques//. En particulier, il utilise ''[[http://ipmitool.sourceforge.net/|ipmitool]]'' pour récupérer des valeurs d'environnement (tensions d'alimentation, fonctionnement des ventilateurs, températures, etc.) L'exécution de la commande ''ipmitool sensor list'' étant relativement couteuse, un fichier de cache (''ipmitool_sensors.cache'') est utilisé. Il est régénéré toute les 20 minutes (''IPMI_MAXAGE=1200''). Au moins jusqu'à la version qu'on utilise (''1.1.12p7-2'') ce fichier de cache est créé dans ''/etc/check_mk'' ce qui pose un certain nombre de problèmes. Pour nous, le plus //évident// est le fait que le contenu de ''/etc'' est surveillé par ''[[https://labs.riseup.net/code/projects/metche|metche]]'' qui constate donc régulièrement que la date de modification du répertoire a changé et n'arrive pas à converger vers une version stable. Nous utilisons une version patchée qui localise ce fichier de cache dans un sous-répertoire de ''/var/cache'' : --- orig/check_mk_agent 2012-12-28 11:41:32.000000000 +0100 +++ patched/check_mk_agent 2012-12-28 11:42:31.000000000 +0100 @@ -29,6 +29,12 @@ export MK_LIBDIR="/usr/lib/check_mk_agent" export MK_CONFDIR="/etc/check_mk" +export MK_CACHEDIR="/var/cache/check_mk" + +if [ ! -d "$MK_CACHEDIR" ] +then + mkdir -p "$MK_CACHEDIR" +fi # Make sure, locally installed binaries are found PATH=$PATH:/usr/local/bin @@ -186,7 +192,7 @@ if which ipmitool >/dev/null then echo '<<>>' - IPMI_FILE=$MK_CONFDIR/ipmitool_sensors.cache + IPMI_FILE=$MK_CACHEDIR/ipmitool_sensors.cache # Do not use cache file after 20 minutes IPMI_MAXAGE=1200