Table des matières

Zabbix: Monitorer un service

Notes : Pour BSD il faut autoriser les utilisateurs à voir les autres process

Première possibilité

  1. Dans Configuration → Modèles, créer un nouveau modèle
  2. Dans élément, rajouter un ou plusieurs services que vous pouvez mesurer. Ex:
    1. proc.num[smbd]
    2. proc.mem[smbd]
  3. Créer un déclencheur sur base d’un élément
  4. Dans Administration → Script, créer un nouveau script qui devra être envoyé sur le zabbix agent
    1. Scope: Action Operation
    2. Type: Script
  5. Dans Configuration → Actions → TRigger Action, créer une nouvelle action

Deuxième possibilité: systemctl

Cette version nécessite qu'on autorise les actions system.run.

system.run["systemctl status chronyd | grep -q running;echo $?"]

Cette commande renvoie 1 quand le service est down.

Troisième possibilité: via l'agent

Ici on configure une clé/commande dans le ficier conf de l'agent. Après redémarrage de celui-ci, on peut faire un nouveau élément dans le UI de Zabbix

UserParameter=ping.srv1auto,C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe if (test-connection 10.31.3.50 -Delay 1 -Quiet) { echo 1} else {echo 0}
UserParameter=ping.srv1sync,C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe if (test-connection 10.50.50.50 -Delay 1 -Quiet) { echo 1} else {echo 0}
UserParameter=ping.plc-chauffage,C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe if (test-connection 10.31.3.111 -Delay 1 -Quiet) { echo 1} else {echo 0}
UserParameter=ping.plc-granulation,C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe if (test-connection 10.50.50.50 -Delay 1 -Quiet) { echo 1} else {echo 0}
#rajouter ceci pour permettre l'exécution du script
Timeout=30