Par défaut, le modèle SMART de Zabbix applique un seuil global (ex: 50°C) à l’ensemble des disques durs et SSD découverts. Pour appliquer un seuil spécifique à un disque particulier (comme un disque dur externe USB qui chauffe différemment), il faut adapter le prototype de trigger pour qu’il accepte les contextes de macros.
Les triggers générés par la découverte automatique doivent inclure explicitement la macro de découverte {#NAME} au sein de la macro de seuil.
Dans l’interface Zabbix, aller dans :
SMART by Zabbix agent 2avg(/proxmoxhome/smart.disk.temperature[{#NAME}],5m)>{$SMART.TEMPERATURE.MAX.WARN:"{#NAME}"}
| Ancienne syntaxe | Nouvelle syntaxe (Avec contexte) |
|---|---|
{$SMART.TEMPERATURE.MAX.WARN} | {$SMART.TEMPERATURE.MAX.WARN:“{#NAME}”} |
Lors de l’évaluation du déclencheur pour le disque sdb sat, Zabbix va chercher la valeur du seuil en respectant cet ordre de priorité (du plus spécifique au plus global) :
+ 1. Macro définie sur l'**Hôte** avec le contexte exact : ''{$SMART.TEMPERATURE.MAX.WARN:"sdb sat"}''
+ 2. Macro définie sur le **Template** avec le contexte exact (si existante)
+ 3. Macro globale de l'**Hôte** sans contexte : ''{$SMART.TEMPERATURE.MAX.WARN}''
+ 4. Macro globale du **Template** sans contexte (Valeur d'usine par défaut)
Pour appliquer la dérogation sur votre machine :
proxmoxhome > Onglet Macros > Sous-onglet Inherited and template macros{$SMART.TEMPERATURE.MAX.WARN} et cliquer sur Change tout à droite.{$SMART.TEMPERATURE.MAX.WARN:"sdb sat"} => Valeur : 40
Les autres disques (comme sda) n’ayant pas de macro à leur nom hériteront automatiquement du seuil par défaut du template.