@dumbdumb

Как посчитать длину патрона для Yandex.Tank?

Есть некий сформированный руками патрон для Yandex.Tank.
POST /some/path HTTP/1.1
Host: some.host
Content-Length: 169
Connection: Close

{
  "some": "json"
}


Согласно документации и примеров, первой строкой ammo.txt должен являться размер запроса. Посчитав байтовый размер текста из запроса я получил число 271. На это я получаю ошибку от Танка, говорящую о том что это число неверное:
<class 'yandextank.stepper.module_exceptions.AmmoFileError'>: Error while reading ammo file. Position: 4, header: '271', original exception: list index out of range


Пройдясь по примерам я понимаю, что длины запросов в примерах не соответствуют значениям, которые я насчитывал для этих запросов. Очевидно я делаю что-то не так.

load.yaml на всякий случай:
phantom:
#  ssl: true
  address: some.host
#  port: '443'
  port: '80'

  load_profile:
    load_type: rps
    schedule: const(100, 5m)

  timeout: '60'
  instances: 100500

  ammo_type: uripost
  ammofile: ammo.txt

uploader:
  enabled: true
  package: yandextank.plugins.DataUploader
  api_address: https://overload.yandex.net
  token_file: token.txt
  job_name: "test"
  job_dsc: "test"

autostop:
  autostop:
    - net(110, 10, 5)
    - http(503, 10, 5)

telegraf:
  enabled: false


Вопрос: как посчитать размер уже составленного руками POST запроса?
  • Вопрос задан
  • 1006 просмотров
Решения вопроса 1
@dumbdumb Автор вопроса
Добавил маркер после размера запроса:
yyy marker
POST ...

И Танк вернул мне ошибку "read xxx bytes instead of yyy".
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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