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

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

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

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.