Forum général.cherche-logiciel Analyse de trafic HTTP

Posté par .
Tags : aucun
1
27
mar.
2010
Hello tout le monde,

Je suis à la recherche d'un moyen d'obtenir une liste des fichiers chargés par un navigateur lors de l'accès à une page : nom du fichier (html, js,css, images...) ainsi que le temps de chargement par fichier.

Curl permet de le faire, mais uniquement sur un fichier, car il n'est pas récursif.
wget est récursif, mais ne permet pas d'obtenir les infos temps.
Le panneau net de firebug permet d'obtenir les infos, mais n'est pas utilisable via une tache cron.

Et là, je sèche grave. Quelqu'un aurait-il une piste ?

Merci :)
  • # pour faire quoi ?

    Posté par . Évalué à 2.

    un test de debit entre le serveur et toi ?

    ou pour faire un test de performance du serveur ?

    pcq tu dois pouvoir faire ca avec gltail et les logs du serveur
    • [^] # Re: pour faire quoi ?

      Posté par . Évalué à 1.

      C'est effectivement entre un serveur et moi, j'aurai du le préciser. Je n'ai pas accès aux serveurs de contenu. En relisant mon post je me rend compte qu'il est un poil succinct, j'aurai du prendre un peu de recul avant de poster :/

      Il y a des sites (genre site-perf.com) qui le font, mais je ne peux pas m'en servir pour mon projet. Pareil pour firebug, ou fiddler (c'est du .net, et je ne crois pas qu'il y ai possibilité de l'appeler en ligne de commande).

      En gros, j'ai besoin de tracer les infos suivantes par url appelée (soit par un navigateur, ou par un wget) :

      nom des fichiers chargés, temps de latence, temps de mise en attente, temps de chargement, et entête HTTP.
      • [^] # Re: pour faire quoi ?

        Posté par . Évalué à 2.

        en scriptant peut-etre ?
        time wget url

        ou alors en mettant un proxy entre toi et le serveur
        • [^] # Re: pour faire quoi ?

          Posté par . Évalué à 2.

          Pour le time j'aurai un résultat global du wget, sans les infos de latence and co.

          Par contre, l'histoire du proxy je ne sais pas. A quoi penses tu ?
          • [^] # Re: pour faire quoi ?

            Posté par (page perso) . Évalué à 2.

            l'histoire du proxy je ne sais pas. A quoi penses tu ?

            je crois qu'il pense à Squid
            • [^] # Re: pour faire quoi ?

              Posté par . Évalué à 2.

              Malheureusement Squid ne log pas les données que je cherche (type latence par exemple). Je vais mater les autres proxy (style fiddler sous windows).
              • [^] # Re: pour faire quoi ?

                Posté par . Évalué à 2.

                squid par defaut ne le fait peut-etre pas, mais en configuration les logs y a peut-etre moyen d'avoir des infos
                ensuite suffirait de passer le log dans une moulinette
                • [^] # Re: pour faire quoi ?

                  Posté par . Évalué à 1.

                  j'ai assez peu d'utilité d'un proxy mais quand j'en prends un j'aime bien privoxy en général
                  (je suis malheureusement incapable de préciser s'il remplit les besoins décrits ici)
                  • [^] # Re: pour faire quoi ?

                    Posté par . Évalué à 1.

                    Privoxy est extra, mais pas pour mon usage :( Dans les logs il manque l'analyse temporelle.
  • # Apache Benchmark ?

    Posté par . Évalué à 1.

    • [^] # Re: Apache Benchmark ?

      Posté par . Évalué à 1.

      Hélas ab c'est lorsque l'on a accès au serveur. Ce qui n'est pas mon cas. En l'occurence je cherche plutot a monitorer les informations entrantes.
      • [^] # Re: Apache Benchmark ?

        Posté par . Évalué à 1.

        Pas besoin d'avoir accès au serveur pour utiliser ab. C'est une application s'exécutant sur un poste client.
        Par contre, elle ne correspond effectivement pas à ton besoin : elle exécute l'appel d'une URL un nombre important de fois et en parallèle, elle ne charge pas récursivement les éléments référencés dans la page.
        • [^] # Re: Apache Benchmark ?

          Posté par . Évalué à 1.

          Je pensais qu'il faisait l'analyse sur le serveur. Ca ne résous pas mon problème actuel, mais je le garde sous le coude :) Merci.
  • # re

    Posté par (page perso) . Évalué à 1.

    • [^] # Re: re

      Posté par . Évalué à 1.

      Effectivement ça s'approche, d'autant que la dernière version est hyper puissante.

      Par contre, impossible de l'appeler via une tache cron :(
  • # curl -v --trace-time

    Posté par . Évalué à 1.

    suivit de quelques grep/awk/... et soustractions.
    • [^] # Re: curl -v --trace-time

      Posté par . Évalué à 1.

      Curl n'est malheureusement pas récursif, du coup je n'aurai que le fichier html, puis il faudrait le parser, puis parser les css.
      • [^] # Re: curl -v --trace-time

        Posté par (page perso) . Évalué à 2.

        peut-être coupler Ht-//Dig avec curl ; je crois qu'il gérait curl mais ça fait très (très) longtemps que je n'ai pas re-regardé... mais sinon, il doit avoir des stats de parcours iirc. Dommage, http://htdig.org/ ne semble pas répondre actuellement :/
  • # tcpdump

    Posté par . Évalué à 1.

    Je crois que je vais devoir analyser les logs d'un tcpdump. Arrrrgggggg.
  • # Firebug

    Posté par (page perso) . Évalué à 1.

    Lance ton firefox favoris, installe firebug, clique sur l'onglet du petit cafard en bas à droite, vas dans l'onglet réseau et tu trouveras ton bonheur ;)

    Je te conseille même d'installer page speed de google qui te permettra d'avoir un onglet en plus sur firebug te donnant les points noirs de ta page web.

    Les liens :
    http://getfirebug.com/
    http://code.google.com/speed/page-speed/

    La fonction qui t'intéresse :
    http://getfirebug.com/network

    Amélioration d'une page :
    http://code.google.com/intl/fr/speed/page-speed/docs/using.h(...)

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.