Notes
This release of the Python agent adds utilization for Azure App Services, instrumentation for Azure Service Bus, support for a new Kinesis method, and support for Google ADK for v2.10.0 and above. This release also fixes an issue in httplib where distributed trace headers were duplicated as well as the setup.py installation file.
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
- Removed support for Python 3.9
* Python 3.9 reached End-of-Life on October 31, 2025 and is no longer supported by the agent. Please consider upgrading your application to a supported version of Python in order to continue to receive updates to the Python Agent.
New Features
Utilization for Azure App Service
- Utilization for Azure App Service was added to enable entity relationship mapping.
- This also adds a new setting,
utilization.detect_azureappservice
New instrumentation for Azure Service Bus
- Instrumentation was added for Microsoft Azure Service Bus.
New instrumentation for new Kinesis method
- The
update_stream_record_distribution_strategymethod is now supported in Kinesis.
- The
Security Updates
The internal urllib3 package has been updated to
2.8.0to resolve all current CVEs inurllib3.- This resolves all known CVEs in the agent to date.
Enhanced Features
Support for Google ADK v2.10.0 and above.
- Instrumentation has been updated for Google ADK on versions 2.10.0 and above.
Bugs
Duplicated distributed tracing headers in httplib
- Fixed issues where
httplibinstrumentation could produce duplicate headers fortraceparent, resulting in a malformed value.
- Fixed issues where
setup.pyinstall file now works for all supported Python versions- If a user wanted to use the
setup.pyfile directly to install the Python Agent on Python 3.12 and above, they would come across anImportError. This is becausedistutilshas been deprecated since Python 3.10 and entirely removed from the standard library in Python 3.12.
- If a user wanted to use the
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.
Notas
Esta versão do agente Python corrige problemas com cabeçalhos assinados no botocore (SigV4).
Instale o agente usando easy_install/pip/distribute através do Índice de Pacotes Python, usando conda através do Índice de Pacotes Conda-Forge ou baixe-o diretamente do site de download do New Relic.
Bugs
Corrige problemas com cabeçalhos assinados no botocore (SigV4)
- A alteração anterior nos cabeçalhos de distributed tracing do botocore foi revertida para evitar o envio de cabeçalhos duplicados.
- Anteriormente, quaisquer cabeçalhos de distributed tracing que fossem gerados por outras bibliotecas de rastreamento poderiam causar problemas com a instrumentação no botocore devido à assinatura de cabeçalho. Isso foi corrigido desativando a assinatura para esses cabeçalhos no botocore.
Declaração de apoio
Recomendamos atualizar para a versão mais recente do agente assim que estiver disponível. Se você não puder atualizar para a versão mais recente, atualize seu agente para uma versão com no máximo 90 dias. Saiba mais sobre como manter o agente atualizado.
Consulte a New Relic Python política de fim de vida útil do agente para obter informações sobre lançamentos de agentes e datas de suporte.
Notas
Esta versão do agente Python adiciona suporte para OpenSearch, Microsoft Azure SQL, novos métodos do Kinesis e uma nova configuração browser_monitoring.version. Além disso, foram feitas melhorias na instrumentação do Anthropic, MCP e Google ADK. Problemas com cabeçalhos assinados no botocore (SigV4) e na análise de ferramentas do Gemini também foram corrigidos para esta versão.
Instale o agente usando easy_install/pip/distribute através do Índice de Pacotes Python, usando conda através do Índice de Pacotes Conda-Forge ou baixe-o diretamente do site de download do New Relic.
Novo recurso
Nova instrumentação para o opensearch-py
- Foi adicionada instrumentação para o conector oficial do banco de dados OpenSearch.
Nova instrumentação para mssql-python
- A instrumentação foi adicionada para o Microsoft Azure SQL.
Nova instrumentação para novos métodos do Kinesis
Os seguintes métodos agora são suportados no Kinesis:
create_channeldelete_channeldescribe_channellist_channelsupdate_channel
Nova configuração para
browser_monitoring.version- A nova configuração
browser_monitoring.versionpermite que os usuários especifiquem versões específicas do nosso agente de monitoramento de Browser a serem injetadas. - Consulte a lista de Versões suportadas do agente do browser para escolher.
- A nova configuração
Recursos Melhorados
Suporte aprimorado para anthropic.
- Análise aprimorada de parâmetros de solicitação para o Anthropic SDK nas versões 1.0.0 e superiores.
- Nova análise para respostas via
Messages.with_raw_response.createpermitindo melhor compatibilidade com o LangChain.
Suporte para mcp v2.0.0 e superior.
- A instrumentação foi atualizada após a grande refatoração feita no
mcpv2.0.0 e deve voltar a funcionar como esperado.
- A instrumentação foi atualizada após a grande refatoração feita no
Suporte para Google ADK v2.9.0 e superior.
- A instrumentação foi atualizada para o Google ADK nas versões 2.9.0 e superiores.
Bugs
Corrige problemas com cabeçalhos assinados no botocore (SigV4)
- Anteriormente, quaisquer cabeçalhos de distributed tracing que fossem gerados por outras bibliotecas de rastreamento poderiam causar problemas com a instrumentação no botocore devido à assinatura de cabeçalho. Isso foi corrigido, e os cabeçalhos de distributed tracing agora são modificados antes da assinatura.
Correção para análise de ferramentas do Gemini
- Anteriormente, algumas instâncias de ferramentas criadas com o Gemini apresentavam falha de análise e falhavam silenciosamente, resultando em nenhuma resposta para essa solicitação específica. O problema foi resolvido.
Declaração de apoio
Recomendamos atualizar para a versão mais recente do agente assim que estiver disponível. Se você não puder atualizar para a versão mais recente, atualize seu agente para uma versão com no máximo 90 dias. Saiba mais sobre como manter o agente atualizado.
Consulte a New Relic Python política de fim de vida útil do agente para obter informações sobre lançamentos de agentes e datas de suporte.
Notas
Esta versão do agente Python adiciona suporte para o Azure CosmosDB, adiciona instrumentação para HTTPX2 e novas APIs de eventos de streaming do LangChain/LangGraph, adiciona suporte para convenções semânticas de banco de dados mais recentes do OpenTelemetry e resolve vários problemas, incluindo relatórios de pacotes incompletos, uma penalidade de desempenho de pesquisa de pacotes e um bug de relatório de nome de banco de dados MySQL.
Instale o agente usando easy_install/pip/distribute através do Índice de Pacotes Python, usando conda através do Índice de Pacotes Conda-Forge ou baixe-o diretamente do site de download do New Relic.
Novo recurso
Adicionado suporte para Azure CosmosDB
- O agente Python agora está instrumentado para as operações de cliente do Azure Cosmos DB, relatando métricas e traces de armazenamento de dados para operações de banco de dados, contêiner e usuário realizadas por meio do SDK
azure-cosmos.
- O agente Python agora está instrumentado para as operações de cliente do Azure Cosmos DB, relatando métricas e traces de armazenamento de dados para operações de banco de dados, contêiner e usuário realizadas por meio do SDK
Adicionado suporte para HTTPX2
Adicionada instrumentação de eventos de streaming do LangChain/LangGraph
Suporte adicionado para convenções semânticas de banco de dados mais recentes do OpenTelemetry
- Ao executar o agente Python junto com o OpenTelemetry (modo de agente híbrido), o agente agora lê os nomes de atributo de span de banco de dados do OpenTelemetry legados e mais recentes (
db.name/db.namespace,db.statement/db.query.text,db.mongodb.collection/db.collection.name), para que o rastreamento de banco de dados continue a funcionar corretamente, independentemente de qual versão de convenção semântica a biblioteca de instrumentação do OpenTelemetry emite.
- Ao executar o agente Python junto com o OpenTelemetry (modo de agente híbrido), o agente agora lê os nomes de atributo de span de banco de dados do OpenTelemetry legados e mais recentes (
Bugs
Corrigido o relato incompleto de pacotes para o New Relic
- Anteriormente, o agente Python podia omitir alguns pacotes instalados dos dados de ambiente relatados ao New Relic se a descoberta de módulos levasse mais tempo do que a janela de tempo fixa alocada durante o ciclo de coleta lento, e a lista de pacotes não fosse atualizada após a reinicialização do agente. A captura de pacotes agora é executada durante o ciclo de coleta rápido e é totalmente recapturada no encerramento/reinicialização do agente, para que a lista de pacotes relatada fique completa.
Sobrecarga reduzida de pesquisas de versão de pacote
- Anteriormente, a pesquisa de versões de pacotes instalados verificava novamente o sistema de arquivos para cada pacote em cada pesquisa, incorrendo em uma penalidade de tempo O(n^2) que aumentava com o número de pacotes instalados durante a inicialização do agente. O resultado de
importlib.metadata.packages_distributions()agora é armazenado em cache após a primeira pesquisa para evitar essa sobrecarga.
- Anteriormente, a pesquisa de versões de pacotes instalados verificava novamente o sistema de arquivos para cada pacote em cada pesquisa, incorrendo em uma penalidade de tempo O(n^2) que aumentava com o número de pacotes instalados durante a inicialização do agente. O resultado de
Corrigido
get_linking_metadatapara passar corretamente pelo aplicativo especificado- Anteriormente, a chamada de
newrelic.agent.get_linking_metadata(application=...)ignorava o argumentoapplicatione sempre retornava metadados de vinculação para o aplicativo padrão. Isso afetava processos que se reportavam a mais de um aplicativo. O aplicativo especificado agora é repassado corretamente. - Obrigado ckarnell pela contribuição!
- Anteriormente, a chamada de
Corrigido o relato do nome do banco de dados MySQL ao usar o argumento de palavra-chave
database- Anteriormente, o agente verificava apenas o argumento de palavra-chave legado
dbao analisar o nome do banco de dados dos argumentos de conexão do mysql-connector-python, de modo que as conexões feitas usando o argumento de palavra-chave modernodatabasenão relatavam nenhum nome de banco de dados nas métricas de armazenamento de dados. O agente agora verificadatabaseprimeiro, recorrendo adb.
- Anteriormente, o agente verificava apenas o argumento de palavra-chave legado
Aviso corrigido ao acessar valores
GraphOutputdo LangGraph v1.1+- Anteriormente, a instrumentação do LangGraph v1.1+ acessava os valores de retorno
GraphOutputusando a sintaxe de acesso a itens obsoleta, acionando um aviso de descontinuação. O agente agora lêGraphOutput.valuediretamente.
- Anteriormente, a instrumentação do LangGraph v1.1+ acessava os valores de retorno
Declaração de apoio
Recomendamos atualizar para a versão mais recente do agente assim que estiver disponível. Se você não puder atualizar para a versão mais recente, atualize seu agente para uma versão com no máximo 90 dias. Saiba mais sobre como manter o agente atualizado.
Consulte a New Relic Python política de fim de vida útil do agente para obter informações sobre lançamentos de agentes e datas de suporte.
Notas
Esta versão do agente Python adiciona suporte para comandos do Redis introduzidos no Redis v8.10.0 e redis-py v8.1.0. Esta versão também resolve o problema de eventos LlmChatCompletion ausentes no LangChain ao usar ferramentas MCP.
Instale o agente usando easy_install/pip/distribute através do Índice de Pacotes Python, usando conda através do Índice de Pacotes Conda-Forge ou baixe-o diretamente do site de download do New Relic.
Novo recurso
Adicionados comandos do Redis introduzidos no Redis v8.10.0 e redis-py v8.1.0
O agente Python agora suporta os seguintes comandos adicionados recentemente no Redis:
himport_discard_allhimport_discardhimport_preparelmovemnrangenrevrangequerylabelsreadsdiffcardsunioncardaliaslist
Bugs
Eventos LlmChatCompletion ausentes corrigidos no Gemini ao usar ferramentas MCP
Trocado para o ID de cache de trace no LangChain e no framework do agente
- Para fins de propagação de contexto, a instrumentação do LangChain e do framework do agente deve ser trocada para armazenar apenas o ID de cache de trace em vez do trace completo em um atributo de referência. Isso serve para evitar que esses objetos sejam serializados inesperadamente em caso de vazamentos. O ID é um objeto muito menor, enquanto o trace pode conter MBs de dados.
Declaração de apoio
Recomendamos atualizar para a versão mais recente do agente assim que estiver disponível. Se você não puder atualizar para a versão mais recente, atualize seu agente para uma versão com no máximo 90 dias. Saiba mais sobre como manter o agente atualizado.
Consulte a New Relic Python política de fim de vida útil do agente para obter informações sobre lançamentos de agentes e datas de suporte.
Notes
This release of the Python agent adds support for AI Monitoring server-side configuration, adds context propagation for Bedrock invocations made through Microsoft Agent Framework, fixes duplicate tool entities for LangChain tools backed by a remote MCP server, reduces race condition risk in the garbage collection data sampler, fixes inconsistent transaction names when using Wagtail, and removes byte encoding from outbound Kombu distributed tracing headers.
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.
New Features
Add support for AI Monitoring server-side configuration
- The Python agent now supports server-side configuration of AI Monitoring. When configured, the server-side
ai_monitoring.enabled,ai_monitoring.record_content.enabled, andai_monitoring.streaming.enabledvalues take precedence over the local settings.
- The Python agent now supports server-side configuration of AI Monitoring. When configured, the server-side
Add context propagation for Bedrock invocations through Agent Framework
- Propagates trace context across thread boundaries created by Microsoft Agent Framework's Bedrock integration. This allows the agent's existing botocore instrumentation to capture LLM events for Bedrock invocations made through Agent Framework. This does not add full instrumentation of Agent Framework itself.
Bugs
Fix inconsistent transaction names when using Wagtail
- Previously, transaction names for apps built on Wagtail were inconsistent and could be the same for different page views. This has been fixed.
Fix duplicate tool entities for LangChain tools backed by a remote MCP server
- Previously, when a LangChain tool was backed by a remote MCP server that was also separately instrumented, duplicate tool entities appeared in the UI. This has been fixed by gating subcomponent attributes off of LangChain tools when a known remote tool is detected.
Fix missing User Input field for LangChain and LangGraph MCP tool calls
- Previously, when LangChain or LangGraph used tools from an MCP server, the User Input field could be missing from AI monitoring data if the input message wasn't the last message in the streamed sequence. This has been fixed, and the agent now correctly extracts the input message in these cases.
Reduce race condition risk in the garbage collection data sampler
- Previously, the agent always called
gc.get_objects()to sample garbage collector object counts, regardless of configuration. This has been changed sogc.get_objects()is only called whentop_object_count_limitis configured above0, avoiding unnecessary heap iteration for customers who don't track object types collected by the garbage collector.
- Previously, the agent always called
Remove byte encoding from outbound Kombu distributed tracing headers
- Previously, distributed tracing headers added by Kombu instrumentation were byte-encoded, which broke transports that serialize payloads with the standard library
jsonmodule (for example, SQLAlchemy-backed transports). The byte encoding has been removed so these transports work correctly.
- Previously, distributed tracing headers added by Kombu instrumentation were byte-encoded, which broke transports that serialize payloads with the standard library
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.