Notas
Esta versión del agente de Python agrega soporte para la configuración del lado del servidor de monitoreo de IA, agrega propagación del contexto para las invocaciones de Bedrock realizadas a través de Microsoft Agent Framework, corrige las entidades de herramientas duplicadas para las herramientas de LangChain respaldadas por un servidor MCP remoto, reduce el riesgo de condición de carrera en el muestreador de datos de recolección de basura, corrige los nombres de transacción inconsistentes al usar Wagtail y elimina la codificación de bytes de los encabezados de rastreo distribuido de Kombu salientes.
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
Agregar soporte para la configuración del lado del servidor de monitoreo de IA
- El agente de Python ahora admite la configuración del lado del servidor de monitoreo de IA. Cuando se configuran, los valores
ai_monitoring.enabled,ai_monitoring.record_content.enabledyai_monitoring.streaming.enableddel lado del servidor tienen prioridad sobre la configuración local.
- El agente de Python ahora admite la configuración del lado del servidor de monitoreo de IA. Cuando se configuran, los valores
Agregar propagación del contexto para las invocaciones de Bedrock a través de Agent Framework
- Propaga el contexto de traza a través de los límites de subprocesos creados por la integración de Bedrock de Microsoft Agent Framework. Esto permite que la instrumentación de botocore existente del agente capture eventos de LLM para las invocaciones de Bedrock realizadas a través de Agent Framework. Esto no agrega la instrumentación completa de Agent Framework en sí.
Errores
Se corrigieron los nombres de transacción inconsistentes al usar Wagtail
- Anteriormente, los nombres de transacción para las aplicaciones creadas en Wagtail eran inconsistentes y podían ser los mismos para diferentes vistas de página. Esto ya fue solucionado.
Corregir entidades de herramientas duplicadas para las herramientas de LangChain respaldadas por un servidor MCP remoto
- Anteriormente, cuando una herramienta de LangChain estaba respaldada por un servidor MCP remoto que también estaba instrumentado por separado, aparecían entidades de herramientas duplicadas en la UI. Esto se ha solucionado al bloquear los atributos de subcomponentes de las herramientas de LangChain cuando se detecta una herramienta remota conocida.
Corregir el campo de entrada de usuario faltante para las llamadas a herramientas MCP de LangChain y LangGraph
- Anteriormente, cuando LangChain o LangGraph usaban herramientas de un servidor MCP, el campo de entrada del usuario podía faltar en los datos de monitoreo de IA si el mensaje de entrada no era el último mensaje en la secuencia transmitida. Esto se ha solucionado y el agente ahora extrae correctamente el mensaje de entrada en estos casos.
Reduce el riesgo de condición de carrera en el muestreador de datos de recolección de basura
- Anteriormente, el agente siempre llamaba a
gc.get_objects()para muestrear los recuentos de objetos del recolector de basura, independientemente de la configuración. Esto se ha cambiado para quegc.get_objects()solo se llame cuandotop_object_count_limitesté configurado por encima de0, lo que evita la iteración innecesaria del montón para los clientes que no rastrean los tipos de objetos recopilados por el recolector de basura.
- Anteriormente, el agente siempre llamaba a
Eliminar la codificación de bytes de los encabezados de rastreo distribuido de Kombu salientes
- Anteriormente, los encabezados de rastreo distribuido agregados por la instrumentación de Kombu estaban codificados en bytes, lo que interrumpía los transportes que serializan las cargas con el módulo
jsonde la biblioteca estándar (por ejemplo, transportes respaldados por SQLAlchemy). Se ha eliminado la codificación de bytes para que estos transportes funcionen correctamente.
- Anteriormente, los encabezados de rastreo distribuido agregados por la instrumentación de Kombu estaban codificados en bytes, lo que interrumpía los transportes que serializan las cargas con el módulo
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.
Notas
Esta versión del agente de Python agrega soporte de instrumentación para Google ADK, agrega el conteo de tokens para múltiples proveedores de IA (Anthropic, Google GenAI, OpenAI y AWS Bedrock), reduce el tamaño del encabezado tracestate saliente y soluciona un bloqueo en la instrumentación de graphql-core.
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.
Características mejoradas
Se agregó instrumentación para Google ADK
El agente de Python ahora instrumenta los flujos de trabajo de agente de IA de Google ADK (Agent Development Kit).
Los componentes instrumentados incluyen:
LlmAgentvinculado a los backends de Gemini o VertexAI a través degoogle.genai- Instancias de
FunctionTooldefinidas por el usuario - Flujos de trabajo de subagentes, incluidos los agentes secundarios y las instancias de
AgentTool - Flujos de trabajo de múltiples agentes, incluida la clase
Workflowy las clases obsoletasLoopAgent,ParallelAgentySequentialAgent
Se agregó el conteo de tokens para Anthropic, Gemini, OpenAI y Bedrock
El agente de Python ahora informa los conteos de tokens para todas las invocaciones de LLM en múltiples proveedores de IA:
- SDK de Anthropic
- SDK de Google GenAI
- SDK de OpenAI
- AWS Bedrock a través de botocore y aiobotocore
Errores
Se solucionó el bloqueo de instrumentación para graphql-core v3.2.10
- Anteriormente, graphql-core v3.2.10 cambió el nombre del atributo
errorsacollected_errorsenExecutionContext, lo que provocaba que el agente fallara. Esto se ha solucionado y el agente ahora funciona correctamente con graphql-core v3.2.10 y versiones posteriores.
- Anteriormente, graphql-core v3.2.10 cambió el nombre del atributo
Se eliminó
spanIddel encabezadotracestatesaliente- Anteriormente, el agente incluía
spanIden el encabezadotracestatesaliente. Debido a quespanIdya está presente en el encabezadotraceparent, esta era una duplicación innecesaria. Se ha eliminadospanIddetracestatepara reducir el tamaño del encabezado saliente.
- Anteriormente, el agente incluía
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.
Notas
Esta versión del agente de Python agrega información adicional del modelo a los eventos de LLM de la cadena de LangChain y soluciona un error en la instrumentación de streaming de LangGraph.
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.
Características mejoradas
Agregar información adicional del modelo a los eventos de LLM de la cadena de LangChain
- Agregue los atributos
request.modelyresponse.modela los eventos de LLM producidos por las cadenas de LangChain. - Esta información se recopila en la medida de lo posible y puede no estar siempre disponible.
- Agregue los atributos
Errores
Corregir TypeError en la instrumentación de streaming de LangGraph
- Anteriormente, al usar un subconjunto de API de streaming en LangGraph, el agente encontraba un
TypeErrordebido al uso deweakref.WeakMethodpor parte de LangGraph. Esto se ha corregido, y el agente ahora debería funcionar correctamente con esos métodos de streaming de LangGraph.
- Anteriormente, al usar un subconjunto de API de streaming en LangGraph, el agente encontraba un
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.
Notas
Esta versión del agente de Python agrega soporte para varios comandos nuevos de Redis, corrige un error en la instrumentación de LangGraph y mejora el manejo y el logging de la configuración de los límites de recolección.
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.
Características mejoradas
Agregar instrumentación para nuevos comandos de Redis v8.8.0
Agregue instrumentación para los siguientes nuevos comandos de Redis de redis-py v8.8.0:
- Comandos varios: INCREX, XNACK
- Comandos de matriz: ARCOUNT, ARDEL, ARDELRANGE, ARGET, ARGETRANGE, ARGREP, ARINFO, ARINSERT, ARLASTITEMS, ARLEN, ARMGET, ARMSET, ARNEXT, AROP, ARRING, ARSCAN, ARSEEK, ARSET
Errores
Corregir fallo en la instrumentación de LangGraph
- Anteriormente, al usar la instrumentación de LangGraph, el agente fallaba debido a un problema con la propagación del contexto a los trabajos en AsyncBackgroundExecutor. Esto se ha corregido, y el agente ahora debería funcionar correctamente con LangGraph.
Manejo y logging mejorados de la configuración del límite de recolección
- El agente ahora reporta con mayor precisión la lista de métodos de recolección y límites a la pestaña Entorno en New Relic One.
- El agente ahora tiene un logging de depuración más consistente al inicio para la configuración del límite de recolección.
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.
Notas
Esta versión del agente de Python soluciona un problema de propagación del contexto en LangChain y LangGraph, un problema de registro de finalización de chat de OpenAI y un problema al usar el streaming de OpenAI(https://pypi.org/project/openai) a través de LiteLLM como proxy.
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.
Errores
Corregir la propagación del contexto en LangChain y LangGraph
Solucionar un problema de registro de completado de chat de OpenAI
- OpenAI reintrodujo la lógica que cierra la respuesta en streaming incluso si el consumidor no ha leído todos los datos. Anteriormente, los datos de finalización del chat solo se registraban al llegar al final del flujo, lo que provocaba que los datos de finalización del chat no se registraran al cierre del flujo. Ahora se ha agregado lógica para capturar los datos de finalización del chat incluso si el flujo no se ha leído por completo.
Solucionar un problema al usar el streaming de OpenAI a través de LiteLLM como proxy
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.
Notes
This release of the Python agent removes support for Python lambda function in the config file, excludes the newrelic header by default, adds support for exclude and include settings for Hybrid Agent traces, anthropic instrumentation, gemini response streaming, improves caching of IS_PYPY in gc_data.py for performance, and adds http.statusCode attribute in transaction events. This release also resends modules during reconnect ensuring they are recorded, guards garbage collection metrics against re-entrant calls, fixes task propagation in async generators and starlette context propagation in StreamingResponse.
Install the agent using easy_install/pip/distribute via the Python Package Index, using conda via the Conda-Forge Package Index, or download it directly from the New Relic download site.
Removed features
Remove support for Python lambda functions in the config file
- Previously, the agent allowed specifying a Python lambda function to dynamically name transactions, background task, database trace, profile trace, external trace url and method, function trace, generator trace, and memcache trace. Since support for this feature exposes a security vulnerability in the agent this feature is being removed.
Deprecations
- The
response.statusattribute inWebTransactions is considered deprecated and will be removed in the upcoming 14.0.0 release. It is being replaced byhttp.statusCode. We recommend replacing all references toresponse.statuswithhttp.statusCode.
New features
Exclude the
newrelicheader by default- The
newrelicdistributed tracing header is now no longer sent by default. Only the W3Ctraceparentandtracestateheaders will be sent.
- The
Add exclude and include settings for Hybrid Agent traces
opentelemetry.traces.includefor the configuration file orNEW_RELIC_OPENTELEMETRY_TRACES_INCLUDEto be used as an environment variableopentelemetry.traces.excludefor the configuration file orNEW_RELIC_OPENTELEMETRY_TRACES_EXCLUDEto be used as an environment variable
The Hybrid Agent's default behavior will be different as well. Now, only libraries and tracers that are supported by OpenTelemetry but not already supported by New Relic will utilize OpenTelemetry's instrumentation. Otherwise, the agent will default to the New Relic instrumentation hooks.
More information about these settings can be found in the Python Agent configuration page as well as the OpenTelemetry API support page.
Add Anthropic streaming instrumentation
- Adds instrumentation support for anthropic.
Improve caching of IS_PYPY in gc_data.py for performance
Now checks and caches IS_PYPY once when the module is loaded.
Add Gemini response streaming
- Add response streaming support to Gemini through the google-genai package.
Add
http.statusCodeattribute to transaction events- To conform with the rest of the language agents, the Python agent now sends the http status to the
WebTransactionattributehttp.statusCode. The Python agent will continue to send the attribute toresponse.statusas well, but theresponse.statusattribute will be removed in the future.
- To conform with the rest of the language agents, the Python agent now sends the http status to the
Bugs
Resend modules during reconnect
- The agent previously only sent the module list periodically after the first connect cycle. If the agent reconnected to the collector, this data would not be resubmitted, so the UI would no longer show the module data. This has now been fixed.
Guard garbage collection metrics against re-entrant calls
- Adds a flag to prevent re-entrant calls to
_GCDataSource.record_gc()to prevent infinite recursion on Python 3.13+.
- Adds a flag to prevent re-entrant calls to
Enable task propagation in async generators
- Fixes an issue where
AsyncGeneratorProxywould not properly handle transaction context propagation if spread over multiple tasks.
- Fixes an issue where
Fix Starlette context propagation in
StreamingResponse- Adds trace context propagation to starlette
StreamingResponsefor both synchronous and asynchronous generators.
- Adds trace context propagation to starlette
Support statement
We recommend updating to the latest agent version as soon as it's available. If you can't upgrade to the latest version, update your agents to a version no more than 90 days old. Read more about keeping agents up to date.
See the New Relic Python agent EOL policy for information about agent releases and support dates.