Le 26/05/2016 11:57, Michel blanc a écrit :
Le 26/05/2016 à 11:13, Wallace a écrit :
Bonjour,
Je cherche une méthode simple (logiciel ou scripts) pour superviser sur quelques heures une page web.
Les besoins sont :
- récupérer la réponse http et si 30x donner la destination
- mesurer le temps de réponse
- mesurer le temps de first byte
- récupérer des champs dans les header http
- faire tourner cela toutes les secondes et les stocker en base ou
fichier à plat
Hello,
Est-ce que tu veux scripter un client HTTP, ou sniffer le traffic ?
Dans le premier cas, est-ce qu'un truc du genre:
while true; do curl -fsw "%{http_code};%{time_starttransfer};%{time_total};" http://www.google.fr -o /dev/null -D /tmp/head && grep 'Cache-Control:' /tmp/head; sleep 1; done
(mind the CRLF & adjust)
ferait l'affaire ?
Pas mal du tout simple et efficace :)
Si tu tourne sous nginx, tu peux aussi changer le log format et avoir (presque) toutes ces infos dans le log.
C'est une idée, mais le but est de mesurer le tout en dehors de la plateforme. On pourrait au mieux le mettre sur le load balancer.
Dans le deuxième cas, si c'est pas du https, un tcpdump peut le faire mais il faudra coder sérieux derrière pour coller les métriques dans, par exemple influxdb et visu avec grafana. Il doit exister des outils pour logger des flux HTTP mais je ne vois pas (https://github.com/buger/gor avec --input-raw-track-response peut être ? Pas sur que tu aies la métadata qui t'intéresse avec).
Là pour le coup vu le trafic ça risque d'être énorme en volume à gérer.