El agente Ruby puede trazar las solicitudes HTTP salientes realizadas por su aplicación o script a:
- Registre métricas sobre cuánto tiempo están tardando sus solicitudes HTTP y a qué hosts llegan.
- Anota la traza de la transacción con nodos para cada solicitud HTTP.
- Proporcionar rastreo distribuido para solicitudes entre aplicaciones instrumentadas con New Relic.
Biblioteca de clientes HTTP soportada
El agente Ruby admite actualmente la siguiente biblioteca de clientes HTTP:
Nombre | Versión mínima admitida | Notas |
---|---|---|
0.59.0 | ||
0.9.3 | Curl::Multi requests obtienen instrumentación parcial. Consulte Notas sobre Curb. | |
0.12.0 | Ver notas de Ethon. | |
0.56.0 | Ver notas de Excon. | |
2.8.3 | No se soporta la instrumentación de solicitudes asincrónicas. | |
2.2.2 | ||
1.0.0 | ||
Net::HTTP | N/A (parte de la biblioteca estándar de Ruby) | También incluye una biblioteca basada en Net::HTTP, como httparty. |
1.3.0 |
Notas Ethon
El mismo equipo que mantiene a Ethon y depende de Ethon para su funcionalidad también mantiene a Typhoeus. Para evitar informes duplicados para cada solicitud HTTP, el agente desactiva la instrumentación de Ethon cuando detecta Typhoeus.
Notas Excon
El agente Ruby admite la versión 0.56.0 or higher. de Excon. La instrumentación de Excon se basa en la capacidad de agregar un middleware Excon a la clave :middlewares
de Excon.defaults
, por lo que si su aplicación modifica Excon.defaults
, debe asegurarse de conservar el valor de :middlewares
tecla.
Notas de acera
El agente Ruby admite la versión 0.9.3 or higher. de Curb. No se admite la instrumentación de Curb en JRuby.
Las solicitudes realizadas a través de la API Curl::Multi
actualmente solo tienen soporte parcial de rastreo distribuido. El agente de Ruby registrará un único nodo de traza de la transacción que representa todo el lote, pero no podrá ver los detalles de las solicitudes individuales del lote.