• EnglishEspañol日本語한국어Português
  • EntrarComeçar agora

Esta tradução de máquina é fornecida para sua comodidade.

Caso haja alguma divergência entre a versão em inglês e a traduzida, a versão em inglês prevalece. Acesse esta página para mais informações.

Criar um problema

Suporte de agente PHP para Guzzle

A New Relic oferece suporte às versões 3, 4, 5, 6 e 7 do Guzzle HTTP client library com o agente PHP New Relic versão 7.0 ou superior.

A biblioteca Guzzle permite solicitações sequenciais e paralelas. Esta página descreve como cada tipo de solicitação aparecerá na páginaSummary da interface do New Relic. Para descobrir qual chamada foi a mais lenta, consulte a página Serviços Externos , que exibe o tempo de chamadas externas individuais.

Solicitações sequenciais

Este código PHP faz múltiplas solicitações sequenciais com o Guzzle:

$client = new \GuzzleHttp\Client;
$response = $client->get('http://YOUR_SITE.com/api/foo');
$client->delete('http://YOUR_SITE.com/api/foo/'.$response->getBody());

Este código apareceria na interface do New Relic como:

one.newrelic.com > All capabilities > APM & services > (select an app) > Overview > Web transactions time: Solicitações sequenciais com Guzzle na interface New Relic.

O tempo de resposta é mostrado como a linha azul escura. O web external time verde representa o tempo gasto na biblioteca Guzzle. Como as solicitações foram feitas sequencialmente, o tempo de resposta é equal em relação ao tempo total gasto em PHP, MySQL e atividades externas da web.

Solicitações paralelas

Este código PHP faz múltiplas requisições em paralelo desembrulhando uma matriz de promessas:

$client = new \GuzzleHttp\Client;
$promises = [
$client->getAsync('http://YOUR_SITE.com/api/foo'),
$client->getAsync('http://YOUR_SITE.com/api/bar'),
$client->getAsync('http://YOUR_SITE.com/api/quux'),
];
\GuzzleHttp\Promise\unwrap($promises);

Este código apareceria na interface do New Relic como:

one.newrelic.com > All capabilities > APM & services > (select an app) > Summary > Web transactions time: Solicitações paralelas com Guzzle na interface New Relic

O web external time verde representa o tempo gasto na biblioteca Guzzle. Como as solicitações foram executadas de forma assíncrona, o tempo total gasto em PHP, MySQL e web externa é greater maior que o tempo de resposta.

Cronometragem com Guzzle 6 e 7

Ao contrário das versões anteriores, o Guzzle 6 e 7 não geram um evento quando uma solicitação é enviada. Em vez disso, o agente começa a cronometrar uma solicitação quando o objeto de solicitação é criado. Se um objeto de solicitação for criado e trabalho adicional for realizado antes do envio, a New Relic poderá relatar que a solicitação demorou mais do que realmente demorou.

Desativar suporte ao Guzzle

Para desativar o suporte do Guzzle:

  1. Adicione newrelic.guzzle.enabled = false ao seu arquivo newrelic.ini .
  2. Reinicie seu servidor web (Apache, Nginx, PHP-FPM, etc.).
Copyright © 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.