Итак, я пытаюсь загрузить тест REST API, который возвращает значение JSON.
Для этого я создаю несколько экземпляров сценария perl.
Сценарий Perl в основном вызывает этот URL и пытается decode_json
. Очевидно, что когда создается значительная нагрузка, он выходит из строя.
Теперь я столкнулся с проблемой: ошибка отображается в командной строке, но не записывает это сообщение об ошибке в файл.
Сообщение об ошибке
неверно сформированная строка JSON, ни массив, ни объект, ни число, ни строка, ни атом, при символьном смещении 0 (перед «Невозможно подключиться к 209 ...») в строке 39 json_load_test.pl.
Во всех трех попытках ниже строка 39 ссылается на:
decode_json($actual_response);
Я просто запускаю сценарий в командной строке как:
perl json_load_test.pl >> logs/output.txt
Я ОЖИДАЮ, ЧТО СООБЩЕНИЕ ОБ ОШИБКЕ БУДЕТ НАПИСАНО В "output.txt"
My три неудачных попытки заключаются в следующем.
my $ua = LWP::UserAgent->new;
$ua->timeout(3);
$ua->env_proxy;
my $response = $ua->get("http://$j_env/jobs/all.json?status=active");
my $actual_response=$response->decoded_content;
decode_json($actual_response);
if ($? == -1)
{print "\n Failed to execute: $!\n"; }
my $ua = LWP::UserAgent->new;
$ua->timeout(3);
$ua->env_proxy;
my $response = $ua->get("http://$j_env/jobs/all.json?status=active");
my $actual_response=$response->decoded_content;
my $perl_scalar= decode_json($actual_response);
if ($perl_scalar)
{ok(1,"For process $u2 inside counter $counter ");}
else
{ok(0,"FAILED!!! process $u2 inside counter $counter");}
my $ua = LWP::UserAgent->new;
$ua->timeout(3);
$ua->env_proxy;
my $response = $ua->get("http://$j_env/jobs/all.json?status=active");
my $actual_response=$response->decoded_content;
decode_json($actual_response) or die "FAILED!!!!";