Notas
Esta versión del agente de Python agrega compatibilidad con Azure CosmosDB, agrega instrumentación para HTTPX2 y las nuevas API de eventos de transmisión de LangChain/LangGraph, agrega compatibilidad con las convenciones semánticas de base de datos de OpenTelemetry más recientes y resuelve varios problemas, que incluyen informes de paquetes incompletos, una penalización de rendimiento en la búsqueda de paquetes y un error en los informes de nombres de base de datos de MySQL.
Instale el agente usando easy_install/pip/distribute a través del Índice de paquetes de Python, usando conda a través del Índice de paquetes de Conda-Forge, o descárguelo directamente desde el sitio de descargas de New Relic.
Nueva característica
Se agregó compatibilidad con Azure CosmosDB
- El agente de Python ahora instrumenta las operaciones del cliente de Azure Cosmos DB, reportando métricas y trazas del almacenamiento de datos para operaciones de base de datos, contenedor y usuario realizadas a través del SDK de
azure-cosmos.
- El agente de Python ahora instrumenta las operaciones del cliente de Azure Cosmos DB, reportando métricas y trazas del almacenamiento de datos para operaciones de base de datos, contenedor y usuario realizadas a través del SDK de
Se agregó soporte para HTTPX2
Se agregó instrumentación de eventos de transmisión de LangChain/LangGraph
Se agregó compatibilidad con las convenciones semánticas de base de datos de OpenTelemetry más recientes
- Al ejecutar el agente de Python junto con OpenTelemetry (modo de agente híbrido), el agente ahora lee los nombres de atributo de span de base de datos de OpenTelemetry legacy y más recientes (
db.name/db.namespace,db.statement/db.query.text,db.mongodb.collection/db.collection.name), por lo que el rastreo de base de datos continúa funcionando correctamente independientemente de la versión de convención semántica que emita la biblioteca de instrumentación de OpenTelemetry.
- Al ejecutar el agente de Python junto con OpenTelemetry (modo de agente híbrido), el agente ahora lee los nombres de atributo de span de base de datos de OpenTelemetry legacy y más recientes (
Errores
Se corrigió el informe incompleto de paquetes a New Relic
- Anteriormente, el agente de Python podía omitir algunos paquetes instalados de los datos de entorno reportados a New Relic si el descubrimiento de módulos tomaba más tiempo que la ventana de tiempo fija asignada durante el ciclo de recolección lento, y la lista de paquetes no se actualizaba después de un reinicio del agente. La captura de paquetes ahora se ejecuta durante el ciclo de recolección rápido y se vuelve a capturar por completo al apagar/reiniciar el agente, por lo que la lista de paquetes reportada está completa.
Se redujo la sobrecarga de las búsquedas de versiones de paquetes
- Anteriormente, la búsqueda de versiones de paquetes instalados volvía a escanear el sistema de archivos para cada paquete en cada búsqueda, lo que incurría en una penalización de tiempo O(n^2) que escalaba con la cantidad de paquetes instalados durante la inicialización del agente. El resultado de
importlib.metadata.packages_distributions()ahora se almacena en caché después de la primera búsqueda para evitar esta sobrecarga.
- Anteriormente, la búsqueda de versiones de paquetes instalados volvía a escanear el sistema de archivos para cada paquete en cada búsqueda, lo que incurría en una penalización de tiempo O(n^2) que escalaba con la cantidad de paquetes instalados durante la inicialización del agente. El resultado de
Se corrigió
get_linking_metadatapara que pase correctamente por la aplicación especificada- Anteriormente, llamar a
newrelic.agent.get_linking_metadata(application=...)ignoraba el argumentoapplicationy siempre devolvía metadatos de vinculación para la aplicación predeterminada. Esto afectaba a los procesos que informaban a más de una aplicación. La aplicación especificada ahora se transfiere correctamente. - ¡Gracias ckarnell por la contribución!
- Anteriormente, llamar a
Se corrigió el reporte del nombre de la base de datos MySQL al usar el argumento de palabra clave
database- Anteriormente, el agente solo verificaba el argumento de palabra clave
dblegacy al analizar el nombre de la base de datos de los argumentos de conexión de mysql-connector-python, por lo que las conexiones realizadas con el argumento de palabra clavedatabasemoderno no reportaban ningún nombre de base de datos en las métricas del almacenamiento de datos. El agente ahora verificadatabaseprimero, recurriendo adb.
- Anteriormente, el agente solo verificaba el argumento de palabra clave
Se corrigió la advertencia al acceder a los valores de
GraphOutputde LangGraph v1.1+- Anteriormente, la instrumentación de LangGraph v1.1+ accedía a los valores de retorno de
GraphOutpututilizando una sintaxis de acceso a elementos obsoleta, lo que desencadenaba una advertencia de obsolescencia. El agente ahora leeGraphOutput.valuedirectamente.
- Anteriormente, la instrumentación de LangGraph v1.1+ accedía a los valores de retorno de
Declaración de apoyo
Recomendamos actualizar a la última versión del agente tan pronto como esté disponible. Si no puede actualizar a la última versión, actualice su agente a una versión que no tenga más de 90 días de antigüedad. Obtenga más información sobre cómo mantener al agente actualizado.
Consulte la New Relic Python política de fin de vida del agente para obtener información sobre los lanzamientos del agente y las fechas de soporte.