Remarques
Cette version de l'agent Python supprime la prise en charge du tracing inter-application (CAT), de Python 3.8 et des certificats SSL intégrés. Il met également à jour tous les paquets vendored vers leurs dernières versions, et ajoute la prise en charge de CPython free-threaded, des systèmes d'exploitation Windows, ainsi qu'une instrumentation améliorée pour Microsoft AG2 (Autogen). De plus, cette version inclut un nouvel extra optionnel pour installer des certificats SSL via certifi. Cette version corrige également un bug dans l'instrumentation de Strands Agents qui entraînait le signalement d'exceptions en double.
Installez l'agent en utilisant easy_install/pip/distribute via l' index des packagesPython , en utilisant conda via l' index des packages Conda-Forge, ou téléchargez-le directement depuis le site de téléchargement de New Relic.
Fonctionnalité supprimée
Le tracing inter-application (CAT) a été supprimé au profit du tracing distribué (DT).
- Le Cross Application Tracing (CAT) a été déprécié dans la version 7.0.0.166 de l'agent et a été supprimé dans cette version. Si vous utilisez encore Cross Application Tracing (CAT), nous vous recommandons de migrer vers le tracing distribué (DT) dès que possible pour éviter toute interruption.
Les certificats SSL inclus ont été supprimés.
- Si vous avez besoin de certificats pour votre environnement, vous pouvez les installer via le gestionnaire de paquets de votre système d'exploitation ou installer l'agent avec l'extra optionnel
newrelic[certificates].
- Si vous avez besoin de certificats pour votre environnement, vous pouvez les installer via le gestionnaire de paquets de votre système d'exploitation ou installer l'agent avec l'extra optionnel
La prise en charge de Python 3.8 a été supprimée.
- Python 3.8 a atteint sa fin de vie le 2024-10-07 et n'est plus pris en charge par l'agent. Veuillez envisager de mettre à niveau votre application vers une version de Python prise en charge afin de continuer à recevoir les mises à jour de l'Agent Python.
Sécurité
Tous les packages internes ont été mis à jour vers leurs dernières versions.
urllib3mis à jour vers la v2.6.3- Ceci corrige toutes les CVE ouvertes sur
urllib3à la date de cette version.
- Ceci corrige toutes les CVE ouvertes sur
opentelemetry_protomis à jour vers la v1.40.0wraptmis à jour vers la v2.1.2asgirefmis à jour vers la v3.11.1
Nouvelles fonctionnalités
Nouvel extra
newrelic[certificates]pour l'installation de certificats SSL via certifi.- L'agent fournit désormais un extra
newrelic[certificates]optionnel qui peut être utilisé pour installer les certificats SSL inclus. Ceci est destiné aux utilisateurs qui ont besoin de certificats mais qui ne peuvent pas les installer via le gestionnaire de paquets de leur système d'exploitation.
- L'agent fournit désormais un extra
Prise en charge de CPython free-threaded
- À partir de Python 3.13, CPython publie des versions de Python avec le Global Interpreter Lock (GIL) désactivé, permettant un véritable multithreading.
- Cette version ajoute la prise en charge de ce comportement, permettant à l'agent de s'exécuter en toute sécurité dans un environnement à thread libre.
- Cette version inclut également des binaires précompilés pour CPython free-threaded sur Linux et Windows, permettant une installation facile dans ces environnements.
Prise en charge de Windows
- Cette version inclut des binaires précompilés pour CPython 3.13 ou version ultérieure sous Windows.
- Notez que Python 3.12 ou une version antérieure n'est pas officiellement pris en charge sous Windows en raison de variations importantes dans la résolution des timers. Il est toujours possible d'installer et d'utiliser l'agent à partir des sources, mais les utilisateurs peuvent rencontrer des problèmes de données de chronométrage inexactes et devraient passer à Python 3.13 ou une version ultérieure pour une expérience optimale.
Instrumentation améliorée pour Microsoft AG2 (Autogen)
- Ajout de la prise en charge des réponses en streaming via la méthode de générateur asynchrone
on_messages_stream(). - L'instrumentation inclut désormais un attribut
subcomponentsur les spans qui représentent des appels d'outils ou d'agents. Ceci est utilisé pour fournir un mappage d'entités amélioré dans l'interface utilisateur New Relic.
- Ajout de la prise en charge des réponses en streaming via la méthode de générateur asynchrone
Bugs
Exceptions dupliquées dans Strands Agents
- Après une mise à jour de Strands Agents qui encapsule certaines exceptions dans un nouveau type
EventLoopException, des erreurs en double pourraient être signalées. Cela a été corrigé et l'erreur sous-jacente ne devrait être signalée qu'une seule fois.
- Après une mise à jour de Strands Agents qui encapsule certaines exceptions dans un nouveau type
Déclaration de soutien
Nous vous recommandons de mettre à jour vers la dernière version de l'agent dès qu'elle est disponible. Si vous ne pouvez pas effectuer la mise à niveau vers la dernière version, mettez à jour vos agents vers une version datant de moins de 90 jours. En savoir plus sur la façon de tenir les agents informés.
Consultez la politique EOL de l'agent Python de New Relic pour obtenir des informations sur la sortie de l'agent et les dates de support.
Remarques
Cette version de l'agent Python ajoute la prise en charge des traces/spans pour Hybrid Agent, l'intégration de New Relic avec OpenTelemetry. Cela ajoute également des GUID d'entité aux fichiers de vérification de l'état d'Agent Control, des attributs subcomponent à l'instrumentation de l'IA agentique, la prise en charge de nouvelles méthodes client Redis, corrige un bug pouvant entraîner des instances ImportHookFinder en double et un bug dans l'instrumentation OracleDB Cursor.callproc().
Installez l'agent en utilisant easy_install/pip/distribute via l' index des packagesPython , en utilisant conda via l' index des packages Conda-Forge, ou téléchargez-le directement depuis le site de téléchargement de New Relic.
Caractéristiques
Ajouter la prise en charge du tracing pour l'Agent hybride (Hybrid Agent)
L'agent hybride est conçu pour combler le fossé pour les équipes cherchant à adopter les normes OpenTelemetry tout en maintenant la rétrocompatibilité avec leurs dashboards New Relic existants. Hybrid Agent offre le « meilleur des deux mondes » en combinant la visibilité approfondie de New Relic avec la compatibilité de l'API OpenTelemetry. Il fournit une solution d'observabilité avec une prise en charge intégrée des API OpenTelemetry suivantes :
- Tracé
- Instrumentation de bibliothèques autonomes et de frameworks natifs
Des améliorations clés telles que les Span Links et les Events on Spans sont désormais disponibles, garantissant une interopérabilité transparente dans les environnements en mode mixte.
Introduit un nouvel échantillonneur basé sur le ratio de Trace ID
- Un nouvel échantillonneur basé sur le ratio d'ID de trace. Cet algorithme d'échantillonnage est basé sur l'échantillonneur du même nom d'OpenTelemetry et peut être configuré pour échantillonner un pourcentage défini de transactions.
Ajouter
subcomponentattributs à l'instrumentation de l'IA agentiqueAjouter le GUID de l'entité aux fichiers de contrôle de santé d'Agent Control
- Lorsque l'agent est démarré dans un environnement Agent Control, un fichier de bilan de santé est créé à l'emplacement de fichier configuré pour chaque processus de l'agent. Ce fichier inclut désormais le GUID de l'entité associée à l'agent lorsqu'il est disponible.
Ajouter l'instrumentation pour les nouvelles méthodes Redis
Ajoutez l'instrumentation pour les nouvelles méthodes suivantes sur les clients Redis :
- hotkeys_get
- Réinitialiser les raccourcis
- hotkeys_start
- hotkeys_stop
- vrange
- xcfgset
Bugs
Correction des instances ImportHookFinder en double
- Auparavant, il était possible que des doublons du finder de hook d'importation soient ajoutés à
sys.meta_path.
- Auparavant, il était possible que des doublons du finder de hook d'importation soient ajoutés à
Corriger la signature incorrecte sur OracleDB
Cursor.callproc()- Auparavant, tenter d'utiliser des arguments nommés avec
Cursor.callproc()provoquait des plantages car les noms d'arguments étaient incorrects dans notre instrumentation. Cela a été corrigé et l'argument supplémentairekeyword_parametersest désormais également pris en charge.
- Auparavant, tenter d'utiliser des arguments nommés avec
Déclaration de soutien
Nous vous recommandons de mettre à jour vers la dernière version de l'agent dès qu'elle est disponible. Si vous ne pouvez pas effectuer la mise à niveau vers la dernière version, mettez à jour vos agents vers une version datant de moins de 90 jours. En savoir plus sur la façon de tenir les agents informés.
Consultez la politique EOL de l'agent Python de New Relic pour obtenir des informations sur la sortie de l'agent et les dates de support.
Remarques
Cette version de l'agent Python ajoute la prise en charge des agents LangGraph.
Installez l'agent en utilisant easy_install/pip/distribute via l' index des packagesPython , en utilisant conda via l' index des packages Conda-Forge, ou téléchargez-le directement depuis le site de téléchargement de New Relic.
Caractéristiques
Ajouter la prise en charge des agents LangGraph
- Ajoute une instrumentation pour les invocations d'agents LangGraph via
create_agent()dans LangChain. Cela inclut les appels de l'agent versinvoke(),ainvoke(),stream()etastream().
- Ajoute une instrumentation pour les invocations d'agents LangGraph via
Déclaration de soutien
Nous vous recommandons de mettre à jour vers la dernière version de l'agent dès qu'elle est disponible. Si vous ne pouvez pas effectuer la mise à niveau vers la dernière version, mettez à jour vos agents vers une version datant de moins de 90 jours. En savoir plus sur la façon de tenir les agents informés.
Consultez la politique EOL de l'agent Python de New Relic pour obtenir des informations sur la sortie de l'agent et les dates de support.
Remarques
Cette version de l'agent Python ajoute de nouvelles façons de transmettre les erreurs à notice_error(), ajoute la prise en charge de la capture des erreurs d'outils synchrones Strands-Agent, ajoute la prise en charge de gpt-5 et des modèles OpenAI LLM plus récents, et corrige un plantage dans la logique d'utilisation d'Azure Functions.
Installez l'agent en utilisant easy_install/pip/distribute via l' index des packagesPython , en utilisant conda via l' index des packages Conda-Forge, ou téléchargez-le directement depuis le site de téléchargement de New Relic.
Caractéristiques
Ajouter la prise en charge des instances d'exception comme arguments à
notice_error()notice_error()peut désormais accepter une instance d'exception interceptée (telle qu'une instance provenant d'un bloc try/except) pour l'argumenterror, plutôt qu'un tuple d'exception provenant desys.exc_info().Ceci s'ajoute au comportement existant et ne le remplace pas. L'utilisation précédente de
notice_error()sans arguments ou avec un tuple d'exception devrait toujours fonctionner correctement.
Ajouter la prise en charge de
gpt-5et des modèles LLM OpenAI plus récents- Ajouter des mises à jour à l'instrumentation OpenAI pour prendre en charge les noms d'attributs plus récents utilisés avec les modèles OpenAI ultérieurs
Ajouter la prise en charge de la capture d'erreurs d'outils synchrones Strands-Agent
- Les fonctions Python synchrones utilisées comme outils dans Strands-Agents ont désormais une capture d'erreur appropriée et capturent les traces dans des outils tels que les recherches dans la base de données.
Débogage
Se prémunir contre les plantages lors de l'utilisation d'Azure Functions
- Auparavant, certains utilisateurs rencontraient des cas limites où la détection d'utilisation d'Azure Functions plantait lors de la tentative de correspondance des expressions régulières. Le plantage a été corrigé et ne devrait plus être possible à l'avenir.
Déclaration de soutien
Nous vous recommandons de mettre à jour vers la dernière version de l'agent dès qu'elle est disponible. Si vous ne pouvez pas effectuer la mise à niveau vers la dernière version, mettez à jour vos agents vers une version datant de moins de 90 jours. En savoir plus sur la façon de tenir les agents informés.
Consultez la politique EOL de l'agent Python de New Relic pour obtenir des informations sur la sortie de l'agent et les dates de support.
Remarques
Cette sortie de l'agent Python ajoute la prise en charge des éléments suivants :
- Brins
- AWS Bedrock Converse Streaming
- Méthodes Redis
hybrid_searchetmsetex - Attributions de rôles LangChain pour l'événement LLM
- LLM événement horodatage capturé au moment de la demande LLM
loop_factoryparamètre dansasyncio.Runner
Cette mise à jour corrige également un bug dans l'instrumentation ASGI où les en-têtes ne sont pas signalés par le serveur web.
Installez l'agent en utilisant easy_install/pip/distribute via l' index des packagesPython , en utilisant conda via l' index des packages Conda-Forge, ou téléchargez-le directement depuis le site de téléchargement de New Relic.
Caractéristiques
Ajout de la prise en charge de Strands
- Ajouter des instruments pour les outils et agents Strands dans des configurations mono-agent et multi-agents (essaims, graphes, etc.).
Ajout de la prise en charge du streaming Converse sur AWS Bedrock
- Ajout de la prise en charge monitoring pour l'API Converse en streaming. Cela inclut la prise en charge des appels de complétion de chat Converse effectués avec les clients boto3 et aioboto3 utilisant
converse_stream().
- Ajout de la prise en charge monitoring pour l'API Converse en streaming. Cela inclut la prise en charge des appels de complétion de chat Converse effectués avec les clients boto3 et aioboto3 utilisant
Ajout de la prise en charge des méthodes Redis
Ajouter la prise en charge des méthodes suivantes :
hybrid_searchmsetex
Ajouter la prise en charge de
loop_factorydansasyncio.Runner- Dans Python 3.11, la classe
asyncio.Runnera été ajoutée ainsi que le paramètreloop_factory. Le paramètreloop_factoryfournit un remplacement pour les politiques de boucle. La boucle ainsi créée est désormais instrumentée, que ce soit via un paramètre de boucle d'événements global ou une boucle d'événements personnalisée.
- Dans Python 3.11, la classe
Capturer les attributions de rôles LangChain dans un événement LLM
- L'événement LangChain
LlmChatCompletionMessagecontient désormais le rôle attribué par LangChain.
- L'événement LangChain
Capture de l'horodatage de l'événement LLM au moment de la requête LLM
- Auparavant, la date et l'heure de l'événement LLM étaient enregistrées au moment de sa création. Désormais, cette information est saisie avec plus de précision au moment de la demande de LLM.
Débogage
consommation d'en-tête ASGI
- Lorsqu'un
ASGIWebTransactionconsomme les en-têtes d'un événementhttp.response.start, il le fait sans tenir compte des types d'entrée autorisés. Lorsque les en-têtes sont un générateur, le générateur a été consommé par l'appel àprocess_response()ne laissant aucun en-tête à envoyer au serveur Web. Ce problème est maintenant résolu.
- Lorsqu'un
Déclaration de soutien
Nous vous recommandons de mettre à jour vers la dernière version de l'agent dès qu'elle est disponible. Si vous ne pouvez pas effectuer la mise à niveau vers la dernière version, mettez à jour vos agents vers une version datant de moins de 90 jours. En savoir plus sur la façon de tenir les agents informés.
Consultez la politique EOL de l'agent Python de New Relic pour obtenir des informations sur la sortie de l'agent et les dates de support.