Страницы

Поиск по вопросам

пятница, 13 марта 2020 г.

Создание корректных запросов для yandex.tank\phantom

#яндекс_танк


Т.к. я только начинаю знакомиться с танком, возник еще один вопрос - как правильно
задать ему запрос. Имеется локальный web-сервер, на нем крутиться небольшой сайт. К
нему напрямую подключен сервер с танком. Нагрузка генерируется фантомом. Но апач постоянно
выдает в логах ssl ошибку Invalid URI in request. Можете посоветовать, чем можно "вытащить"
корректные запросы к сайту? wget? может быть, curl?

UPD

пример вывода answ.log:

208 488 35886 852 0
HTTP/1.1 404 Not Found
Date: Thu, 28 Jan 2016 13:39:50 GMT
Server: Apache/2.4.6 (CentOS)
Content-Length: 289
Connection: close
Content-Type: text/html; charset=iso-8859-1
ERROR 404: Not Found.
HTTP/1.1 400 Bad Request^M
Date: Tue, 02 Feb 2016 10:56:39 GMT^M
Server: Apache/2.4.6 (CentOS)^M
Content-Length: 307^M
Connection: close^M
Content-Type: text/html; charset=iso-8859-1^M
^M


400 Bad Request

Bad Request

Your browser sent a request that this server could not understand.


Apache/2.4.6 (CentOS) Server at 192.168.238.211 Port 443
366 488 35985 688 0 HTTP/1.1 200 OK Date: Thu, 28 Jan 2016 13:39:50 GMT Server: Apache/2.4.6 (CentOS) Last-Modified: Sat, 26 Jun 2010 09:38:02 GMT ETag: "369-489eba4cc1280" Accept-Ranges: bytes Content-Length: 873 Connection: close Content-Type: text/css 0K 100% 44,7M=0s HTTP/1.1 400 Bad Request^M Date: Tue, 02 Feb 2016 10:56:39 GMT^M Server: Apache/2.4.6 (CentOS)^M Content-Length: 307^M Connection: close^M Content-Type: text/html; charset=iso-8859-1^M ^M 400 Bad Request

Bad Request

Your browser sent a request that this server could not understand.


Apache/2.4.6 (CentOS) Server at 192.168.238.211 Port 443
load.ini: [phantom] threads=60 phantom_path=/usr/bin/phantom phantom_modules_path=/usr/lib/phantom/ instances=5000 address=192.168.238.211 ;Target's address port=443 ;target's port rps_schedule=const(1000,30s) ;load scheme writelog=all gatling_ip=192.168.238.210 ;generator's network interface ammofile=https://192.168.238.211/ammo/ammo.txt ssl=1


Ответы

Ответ 1



В комментах уже выяснили, что у вас неверный формат запросов, как нужно делать описано в документации. На практике наиболее используемые uri-style и request-style. Uri-style – это просто список uri в отдельном файле, опционально после uri через пробел можно задать тег, тогда будут дополнительные агрегаты по тегам; заголовки задаются в любом месте в [] и применяются ко всем последующим запросам: [Connection: close] [Host: example.com] / /test?param=1 Если у вас только GET запросы - этого достаточно. Чтобы слать запросы произвольного вида нужно использовать request-style, там содержимое запроса отправляется практически "как есть" исправляются только переводы строки в заголовках на \r\n при необходимости, формат описан в документации. Собрать GET запросы можно по логам веб-сервера, с POST/PUT сложнее, если нужны они то, можно сделать генератор под конкретный сервис, узнав, что за данные в него нужно слать. Если нет хорошего описания, что за данные надо слать, можно посмотреть, что фактически отправляется - или через developer tools браузера или при помощи утилит для захвата трафика, например, wireshark (с https тут будут проблемы).

Комментариев нет:

Отправить комментарий