Programa ou comando do Unix (Gnu / Linux, Mac OS X) para contar as conexões HTTP feitas por um programa

1

Eu tenho um conjunto de testes para aplicativos que realizam muitas solicitações HTTP.

Esse número é alterado toda vez que você executa os testes. Existe um comando ou programa do Unix que "escuta" outro programa contando suas solicitações http?

    
por dgraziotin 08.08.2010 / 15:53

2 respostas

0

Qualquer sniffer de pacote fará isso por você. Confira o tcpdump ou o wireshark . Você terá que configurar alguns filtros nos dados coletados, mas isso é fácil.

    
por 08.08.2010 / 16:52
0
  • Você pode rastrear as chamadas do sistema do aplicativo com truss / trace / strace / ... (o nome, a sintaxe da linha de comando e o formato de saída dependem do sistema operacional) e observe connect de chamadas. Se o seu aplicativo também usar rede não HTTP, talvez seja necessário trabalhar um pouco mais para filtrar as conexões relevantes.

  • Você pode usar LD_PRELOAD ou um depurador para modificar a função que cria as conexões HTTP. Mas isso pode ser muito intrusivo para um teste.

  • Você pode colocar um proxy simples entre seu aplicativo e a web. Tanto o perl quanto o python vêm com bibliotecas que o tornariam um programa de 10 a 20 linhas. Essa é a abordagem que prefiro, a menos que você esteja testando especificamente o comportamento de seu aplicativo em relação a um servidor ou proxy específico.

por 08.08.2010 / 18:31