Monitorer Nginx avec Zabbix

Configuration de Nginx

Le serveur nginx doit donner sont status en local via l’url http://localhost:61123/nginx_status

Pour cela, il faut ajouter le “ server ” suivant qui sera disponible uniquement via localhost sur le port 61123:

        listen       127.0.0.1:61123;
        server_name  localhost;
        location /nginx_status {
                stub_status on;
                access_log   off;
                allow 127.0.0.1;
                deny all;
        }
}```

# Configuration de l'agent Zabbix

Dans la configuration de l'agent Zabbix ajouter les paramètres suivant pour remonter au serveur les nouvelles clefs

UserParameter=nginx.active[],curl -s http://localhost:61123/nginx_status | awk ‘/^Active/ {print $NF} UserParameter=nginx.reading[],curl -s http://localhost:61123/nginx_status | awk ‘/Reading/ {print $$2} UserParameter=nginx.writing[],curl -s http://localhost:61123/nginx_status | awk ‘/Writing/ {print $$4} UserParameter=nginx.waiting[],curl -s http://localhost:61123/nginx_status | awk ‘/Waiting/ {print $$6} UserParameter=nginx.accepted[],curl -s http://localhost:61123/nginx_status | awk ‘/1+[0-9]+[ \t]+[0-9]+[ \t]+[0-9]+/ {print $$1} UserParameter=nginx.handled[],curl -s http://localhost:61123/nginx_status | awk ‘/2+[0-9]+[ \t]+[0-9]+[ \t]+[0-9]+/ {print $$2} UserParameter=nginx.requests[*],curl -s http://localhost:61123/nginx_status | awk ‘/3+[0-9]+[ \t]+[0-9]+[ \t]+[0-9]+/ {print $$3}’```

Import du template

Télécharger et importer zbx_templates_nginx.xml dans vos modèles

Ce template contient toutes les clefs et deux graphiques :

  • Nginx current connections
  • Nginx requests

Have fun 🙂


Voir également

comments powered by Disqus