Zabbix: Monitorer un service

Première possibilité

Dans Configuration → Modèles, créer un nouveau modèle

Dans élément, rajouter un ou plusieurs services que vous pouvez mesurer. Ex:

proc.num[smbd]

proc.mem[smbd]

Créer un déclencheur sur base d’un élément

Dans Administration → Script, créer un nouveau script qui devra être envoyé sur le zabbix agent

Scope: Action Operation

Type: Script

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