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.
Notas
Esta versão do agente Python adiciona suporte para a configuração no lado do servidor do AI Monitoring, adiciona propagação de contexto para invocações do Bedrock feitas por meio do Microsoft Agent Framework, corrige entidades de ferramentas duplicadas para ferramentas do LangChain apoiadas por um servidor MCP remoto, reduz o risco de condição de corrida no amostrador de dados de coleta de lixo, corrige nomes de transação inconsistentes ao usar o Wagtail e remove a codificação de bytes dos cabeçalhos de distributed tracing de saída do Kombu.
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
Adicionar suporte para a configuração no lado do servidor do AI Monitoring
- O agente Python agora suporta a configuração no lado do servidor do AI Monitoring. Quando configurados, os valores
ai_monitoring.enabled,ai_monitoring.record_content.enabledeai_monitoring.streaming.enabledno lado do servidor têm precedência sobre as configurações locais.
- O agente Python agora suporta a configuração no lado do servidor do AI Monitoring. Quando configurados, os valores
Adiciona propagação de contexto para invocações do Bedrock através do Agent Framework
- Propaga o contexto do trace através dos limites de thread criados pela integração do Bedrock do Microsoft Agent Framework. Isso permite que a instrumentação existente do botocore do agente capture eventos de LLM para invocações do Bedrock feitas através do Agent Framework. Isso não adiciona instrumentação completa do próprio Agent Framework.
Bugs
Corrigir nomes de transação inconsistentes ao usar o Wagtail
- Anteriormente, os nomes de transação para aplicativos criados no Wagtail eram inconsistentes e podiam ser os mesmos para diferentes visualizações de página. O problema foi resolvido.
Corrige entidades de ferramenta duplicadas para ferramentas do LangChain com suporte de um servidor MCP remoto
- Anteriormente, quando uma ferramenta do LangChain era apoiada por um servidor MCP remoto que também era instrumentado separadamente, entidades de ferramenta duplicadas apareciam na interface. Isso foi corrigido desativando os atributos de subcomponentes das ferramentas do LangChain quando uma ferramenta remota conhecida é detectada.
Corrige o campo de entrada do usuário ausente para chamadas de ferramenta MCP do LangChain e LangGraph
- Anteriormente, quando o LangChain ou o LangGraph usavam ferramentas de um servidor MCP, o campo de entrada do usuário podia estar ausente dos dados do AI Monitoring se a mensagem de entrada não fosse a última mensagem na sequência transmitida. Isso foi corrigido, e o agente agora extrai corretamente a mensagem de entrada nesses casos.
Reduzir o risco de condição de corrida no amostrador de dados de coleta de lixo
- Anteriormente, o agente sempre chamava
gc.get_objects()para amostrar as contagens de objetos do coletor de lixo, independentemente da configuração. Isso foi alterado para quegc.get_objects()seja chamado apenas quandotop_object_count_limitestiver configurado acima de0, evitando a iteração desnecessária de heap para clientes que não rastreiam os tipos de objetos coletados pelo coletor de lixo.
- Anteriormente, o agente sempre chamava
Remover a codificação de bytes dos cabeçalhos de distributed tracing de saída do Kombu
- Anteriormente, os cabeçalhos de distributed tracing adicionados pela instrumentação do Kombu eram codificados em bytes, o que quebrava os transportes que serializam cargas com o módulo
jsonda biblioteca padrão (por exemplo, transportes apoiados pelo SQLAlchemy). A codificação de bytes foi removida para que esses transportes funcionem corretamente.
- Anteriormente, os cabeçalhos de distributed tracing adicionados pela instrumentação do Kombu eram codificados em bytes, o que quebrava os transportes que serializam cargas com o módulo
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 de instrumentação para o Google ADK, adiciona contagem de tokens para vários provedores de IA (Anthropic, Google GenAI, OpenAI e AWS Bedrock), reduz o tamanho do cabeçalho tracestate de saída e corrige uma falha na instrumentação do graphql-core.
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.
Recursos Melhorados
Adicionada instrumentação para Google ADK
O agente Python agora instrumenta os fluxos de trabalho de agente de IA do Google ADK (Agent Development Kit).
Componentes instrumentados incluem:
LlmAgentvinculado a backends do Gemini ou VertexAI viagoogle.genai- Instâncias de
FunctionTooldefinidas pelo usuário - Fluxos de trabalho de subagentes, incluindo agentes filhos e instâncias de
AgentTool - Fluxos de trabalho multiagente incluindo a classe
Workflowe as classes descontinuadasLoopAgent,ParallelAgenteSequentialAgent
Adicionada contagem de tokens para Anthropic, Gemini, OpenAI e Bedrock
O agente Python agora relata as contagens de token para todas as invocações de LLM em vários provedores de IA:
- SDK da Anthropic
- Google GenAI SDK
- OpenAI SDK
- AWS Bedrock via botocore e aiobotocore
Bugs
Corrigida falha de instrumentação para graphql-core v3.2.10
- Anteriormente, o graphql-core v3.2.10 renomeou o atributo
errorsparacollected_errorsemExecutionContext, fazendo com que o agente falhasse. Isso foi corrigido, e o agente agora funciona corretamente com o graphql-core v3.2.10 e versões posteriores.
- Anteriormente, o graphql-core v3.2.10 renomeou o atributo
Removido
spanIddo cabeçalhotracestatede saída- Anteriormente, o agente incluía
spanIdno cabeçalhotracestatede saída. ComospanIdjá está presente no cabeçalhotraceparent, isso era uma duplicação desnecessária. OspanIdfoi removido detracestatepara reduzir o tamanho do cabeçalho de saída.
- Anteriormente, o agente incluía
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 informações adicionais de modelo aos eventos de LLM de cadeia do LangChain e corrige um bug na instrumentação de streaming do LangGraph.
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.
Recursos Melhorados
Adicionar informações adicionais do modelo aos eventos de LLM da cadeia do LangChain
- Adicione os atributos
request.modeleresponse.modelaos eventos de LLM produzidos por cadeias do LangChain. - Essas informações são coletadas com base no melhor esforço e podem não estar sempre disponíveis.
- Adicione os atributos
Bugs
Corrigir TypeError na instrumentação de streaming do LangGraph
- Anteriormente, ao usar um subconjunto de APIs de streaming no LangGraph, o agente encontrava um
TypeErrordevido ao uso deweakref.WeakMethodpelo LangGraph. Isso foi corrigido, e o agente agora deve funcionar corretamente com esses métodos de streaming do LangGraph.
- Anteriormente, ao usar um subconjunto de APIs de streaming no LangGraph, o agente encontrava um
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.