Unix (Гну/Linux, Mac OS X) программа или команда для подсчета HTTP-соединений сделанными программой

У меня есть комплект тестирования для приложения, который выполняет много Запросов HTTP.

Это число изменяется каждый раз, когда Вы запускаете тесты. Существует ли команда Unix или программа, которая "слушает" другую программу, считая ее запросы HTTP?

1
задан 08.08.2010, 22:21

2 ответа

Любой анализатор пакетов сделает это для Вас. Проверьте tcpdump или wireshark. Необходимо будет установить несколько фильтров на данных, которые они собирают, но это легко.

0
ответ дан 24.11.2019, 01:44
  • Можно проследить системные вызовы приложения с truss/trace/strace/... (имя, синтаксис командной строки и выходной формат зависимы от операционной системы), и часы для connect вызовы. Если Ваше приложение также использует не-HTTP, объединяющий Вас в сеть, вероятно, придется работать немного тяжелее для фильтрации соответствующих соединений.

  • Можно использовать LD_PRELOAD или отладчик для изменения функции, которая создает HTTP-соединения. Но это может быть слишком навязчиво для теста.

  • Можно поместить простой прокси между приложением и сетью. И жемчуг и Python идут с библиотеками, которые сделали бы его 10 20 программ строки. Это - подход, который я предпочел бы, если Вы конкретно не тестируете поведение своего приложения против определенного сервера или прокси.

0
ответ дан 24.11.2019, 01:44

Теги

Похожие вопросы