• /
  • EnglishEspañolFrançais日本語한국어Português
  • Se connecterDémarrer

Python agent release notesRSS

November 3
Python agent v11.1.0

Notes

This release of the Python agent adds Python 3.14 support, new environment variables for attribute filter settings, support for async generators in transaction decorators, additional models in AWS Bedrock, and new methods in AWS Kinesis. This release also fixes a bug in aiomysql which caused RecursionError when using ConnectionPool where it was wrapped multiple times, a bug where properties were not properly passed in kombu's producer, and an error when shutdown_agent is called from within the harvest thread.

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.

Features

  • Add support for Python 3.14

    • Add support for Python 3.14.
  • Add environment variables for attribute filters settings

    • The following settings now have the option to be set through environment variables:

      Configuration SettingEnvironment variable
      attributes.enabledNEW_RELIC_ATTRIBUTES_ENABLED
      attributes.excludeNEW_RELIC_ATTRIBUTES_EXCLUDE
      attributes.includeNEW_RELIC_ATTRIBUTES_INCLUDE
      browser_monitoring.attributes.enabledNEW_RELIC_BROWSER_MONITORING_ATTRIBUTES_ENABLED
      browser_monitoring.attributes.excludeNEW_RELIC_BROWSER_MONITORING_ATTRIBUTES_EXCLUDE
      browser_monitoring.attributes.includeNEW_RELIC_BROWSER_MONITORING_ATTRIBUTES_INCLUDE
      error_collector.attributes.enabledNEW_RELIC_ERROR_COLLECTOR_ATTRIBUTES_ENABLED
      error_collector.attributes.excludeNEW_RELIC_ERROR_COLLECTOR_ATTRIBUTES_EXCLUDE
      error_collector.attributes.includeNEW_RELIC_ERROR_COLLECTOR_ATTRIBUTES_INCLUDE
      span_events.attributes.enabledNEW_RELIC_SPAN_EVENTS_ATTRIBUTES_ENABLED
      span_events.attributes.excludeNEW_RELIC_SPAN_EVENTS_ATTRIBUTES_EXCLUDE
      span_events.attributes.includeNEW_RELIC_SPAN_EVENTS_ATTRIBUTES_INCLUDE
      transaction_events.attributes.enabledNEW_RELIC_TRANSACTION_EVENTS_ATTRIBUTES_ENABLED
      transaction_events.attributes.excludeNEW_RELIC_TRANSACTION_EVENTS_ATTRIBUTES_EXCLUDE
      transaction_events.attributes.includeNEW_RELIC_TRANSACTION_EVENTS_ATTRIBUTES_INCLUDE
      transaction_segments.attributes.enabledNEW_RELIC_TRANSACTION_SEGMENTS_ATTRIBUTES_ENABLED
      transaction_segments.attributes.excludeNEW_RELIC_TRANSACTION_SEGMENTS_ATTRIBUTES_EXCLUDE
      transaction_segments.attributes.includeNEW_RELIC_TRANSACTION_SEGMENTS_ATTRIBUTES_INCLUDE
      transaction_tracer.attributes.enabledNEW_RELIC_TRANSACTION_TRACER_ATTRIBUTES_ENABLED
      transaction_tracer.attributes.excludeNEW_RELIC_TRANSACTION_TRACER_ATTRIBUTES_EXCLUDE
      transaction_tracer.attributes.includeNEW_RELIC_TRANSACTION_TRACER_ATTRIBUTES_INCLUDE
  • Add support for async generators in transaction decorators

    • Previously, transaction decorators did not support being wrapped around async generators. This support has been added, and async generator transactions will now automatically measure event loop wait time and other statistics.
  • Add support for additional models in AWS Bedrock instrumentation

    • Updates AWS Bedrock instrumentation through botocore and aiobotocore to support the following additional models

      • Claude Sonnet 3+ models
      • Models that are prefixed with a region (region-aware)
  • Add instrumentation for new Kinesis methods

    • Adds botocore instrumentation to support new AWS Kinesis methomethods
      • describe_account_settings
      • update_account_settings
      • update_max_record_size
      • update_stream_warm_throughput

Bug fixes

  • Prevent a RecursionError in aiomysql ConnectionPool

    • Previously, a RecursionError would be raised in aiomysql when using pooled connections. Deep ObjectProxy chains were created around pooled connections due to repeated wrapping. This has been fixed.
  • Fixed a bug where properties were not properly passed in kombu's producer

    • Fixed a bug where instrumentation for kombu.messaging.Producer.publish() was causing properties to accidentally be nested inside of the dictionary, causing the properties to be in the wrong spot and not read by downstream packages.
  • Fix error when shutdown_agent is called from within the harvest thread

    • Previously, a RuntimeError could occur when shutdown_agent was called from within the harvest thread. This fixes that issue by adding a guard to prevent the crash.

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.

October 6
Python agent v11.0.1

Remarques

Cette sortie de l'agent Python fournit des correctifs pour l'activation précoce dans l'instrumentation Django, les remplacements côté serveur pour max_samples_stored ignorés et les protections contre les plantages de trace_cache.pop().

Installez l'agent à l'aide de easy_install/pip/distribute via l' index du packagePython ou téléchargez-le directement depuis le site de téléchargement de New Relic.

Débogage

  • Empêche l'activation précoce dans l'instrumentation Django

    • Supprimez les appels à application_settings() dans l'instrumentation Django pour éviter les problèmes liés aux activations précoces dans les applications pré-fork.
  • Résoudre les problèmes de synchronisation de la configuration du serveur avec la configuration locale

    • Cela corrige un bug créé lorsque les paramètres event_harvest_config.harvest_limits.* étaient obsolètes au profit des paramètres *.max_samples_stored. Certaines configurations côté serveur ne remplaçaient pas la configuration côté client, ce qui entraînait l'envoi de données au collecteur malgré la désactivation de cette fonction par l'utilisateur.
  • Protégez-vous contre les accidents de trace_cache.pop()

    • Dans la classe ContextOf, il y a eu un accès non sécurisé de trace_cache via pop(key) sans valeur par défaut. Cela a provoqué des plantages lorsque le weakref dans le dictionnaire était déjà récupéré par le garbage collector.

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.

September 25
Python agent v11.0.0

Remarques

Prudence

Cette version de l'agent a été retirée.

Cette sortie de l'agent Python apporte les modifications suivantes :

  • Supprime la prise en charge de Python 3.7
  • Supprime et/ou déprécie diverses API et paramètres
  • Obsolète l'instrumentation aioredis
  • Augmente la version minimale prise en charge de setuptools et setuptools_scm
  • Ajoute une nouvelle instrumentation pour AutoGen
  • Ajoute une nouvelle instrumentation pour Pyzeebe
  • Ajoute de nouveaux MCP (Model Context Protocol) nommés spans
  • Corrige un crash dans psycopg
  • Garantit que les étendues MCP ne sont enregistrées que lorsque monitoring de l'IA est activée

Installez l'agent à l'aide de easy_install/pip/distribute via l' index du packagePython ou téléchargez-le directement depuis le site de téléchargement de New Relic.

Fonctionnalité supprimée

Fonctionnalité obsolète

  • L'instrumentation pour aioredis est obsolète

    • Le package aioredis a été abandonné au profit de redis qui inclut désormais le sous-module redis.asyncio. Par conséquent, l’instrumentation pour aioredis est également obsolète. Veuillez plutôt utiliser la bibliothèque redis. Cette instrumentation sera retirée lors d'une prochaine sortie.
  • Supprime certains paramètres de récolte existants pour correspondre à d'autres agents de langage

    • Afin d'être plus cohérent avec les conventions des autres agents de langage, les paramètres de récolte suivants sont désormais obsolètes :

      héritage RéglageParamètre de remplacement
      event_harvest_config.harvest_limits.analytic_event_datatransaction_events.max_samples_stored
      event_harvest_config.harvest_limits.span_event_dataspan_events.max_samples_stored
      event_harvest_config.harvest_limits.error_event_dataerror_collector.max_event_samples_stored
      event_harvest_config.harvest_limits.custom_event_datacustom_insights_events.max_samples_stored
      event_harvest_config.harvest_limits.log_event_dataapplication_logging.forwarding.max_samples_stored

      Il s'agit d'une annulation d'une modification précédente qui a renommé ces paramètres de *.max_samples_stored au format event_harvest_config.harvest_limits.*. Cette décision a été annulée et les noms des paramètres d'origine ont été restaurés pour correspondre aux autres agents linguistiques qui n'ont pas modifié ces noms de paramètres. Les paramètres obsolètes continueront de fonctionner pour le moment, mais ils seront supprimés lors d'une prochaine sortie.

  • Désapprouve la configuration de l'agent via le dictionnaire d'environnement WSGI

    • Les paramètres suivants, qui pouvaient auparavant être configurés via le dictionnaire d'environnement WSGI, sont désormais obsolètes. Veuillez configurer ces paramètres via des variables d'environnement ou le fichier de configuration.

      • newrelic.set_background_task
      • newrelic.suppress_apdex_metric
      • newrelic.suppress_transaction_trace
      • newrelic.capture_request_params
      • newrelic.disable_browser_autorum
  • Supprime la prise en charge de la création de l'agent avec setuptools<61.2 ou setuptools_scm<6.4

    • Les versions minimales prises en charge de setuptools et setuptools_scm ont été augmentées à 61.2 et 6.4 respectivement. Ceci permet de prendre en charge l'utilisation de pyproject.toml pour configurer les métadonnées du package et les instructions de construction. L'agent peut désormais être construit avec des outils de construction plus modernes qui n'enregistreront plus les avertissements concernant l'absence d'un fichier pyproject.toml.
    • Cette modification ajoute un nouvel attribut de version au package, newrelic.__version__ et newrelic.__version_tuple__, qui peut être utilisé pour vérifier par programmation la version de l'agent au moment de l'exécution.

Nouvelles fonctionnalités

  • Ajoute une nouvelle instrumentation pour AutoGen

    • Ajoute une instrumentation (étendues nommées et événement Llm personnalisé) pour les agents et les outils dans AutoGen
  • Ajoute une nouvelle instrumentation pour Pyzeebe

    • Ajoute une instrumentation automatique et un attribut d'agent spécifique frameworkpour Pyzeebe
  • Ajoute de nouveaux MCP (Model Context Protocol) nommés spans

    • Ajoute de nouvelles étendues nommées pour les appels d'outils MCP (Model Context Protocol) effectués via le gestionnaire d'outils pour prendre en charge Streamable HTTP

Débogage

  • Corrige un crash dans psycopg>=3.2.0 lors de l'appel as_string()

    • Corrige un problème dans psycopg>=3.2.0 où la méthode as_string() ne nécessitait plus d'arguments, provoquant un plantage potentiel. Ce problème a été corrigé et les deux signatures de cette méthode sont prises en charge.
  • Garantit que les étendues MCP (Model Context Protocol) ne sont enregistrées que lorsque monitoring de l'IA est activée

    • Garantit que les étendues MCP (Model Context Protocol) ne sont enregistrées que lorsque le paramètre ai_monitoring.enabled est activé.

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.

September 4
Python agent v10.17.0

Remarques

Cette sortie de l'agent Python ajoute la prise en charge des éléments suivants :

Cette sortie fournit également les correctifs suivants :

  • Garanties pour le chemin unique le plus profond dans GraphQL
  • Mesures de protection pour l'analyse des requêtes d'URL Web
  • Recours à ElasticSearch et GraphQL lorsque trace.settings==None
  • Supprimer la méthode options de la liste des clients ElasticSearch asynchrones

Installez l'agent à l'aide de easy_install/pip/distribute via l' index du packagePython ou téléchargez-le directement depuis le site de téléchargement de New Relic.

Nouvelles fonctionnalités

  • Ajoute la prise en charge des tâches personnalisées dans Celery

    • Ajoutez la prise en charge monitoring pour les classes de tâches personnalisées dans Celery. Auparavant, seules les tâches utilisant la classe de tâches par défaut pouvaient être monitorées. Remarque : cette version de l'agent Python ne prendra plus en charge les versions de Celery inférieures à la version 5.2.0.
  • Ajoute la prise en charge de Graphene-Django

    • Ajoutez la prise en charge monitoring pour les schémas synchrones créés avec Graphene-Django. Auparavant, les schémas créés avec Graphene-Django n'étaient que partiellement monitorés, ce qui entraînait l'absence d'attributs liés GraphQL.
  • Ajoute la prise en charge du filtrage middleware dans Django

    • Les utilisateurs sont désormais en mesure de filtrer le middleware Django à monitorer. Il existe désormais trois paramètres supplémentaires:

      • instrumentation.middleware.django.enabled (La valeur par défaut est true)
      • instrumentation.middleware.django.exclude
      • instrumentation.middleware.django.include

    Consultez la page Filtrage du middleware Django pour plus d’informations et d’exemples.

  • Ajoute la prise en charge de l'API AWS Bedrock Converse

    • Ajoutez la prise en charge monitoring pour l'API Converse non diffusée en continu. Cela inclut la prise en charge des appels de fin de discussion converse effectués à l'aide des clients boto3 et aioboto3.
  • Ajoute la prise en charge de l'indicateur d'échantillonnage de l'en-tête W3CTraceParent

    • Lorsqu'un service en amont envoie l'en-tête W3CTraceParent avec l'indicateur d'échantillonnage défini, New Relic prendra en compte cette décision d'échantillonnage pour décider si la transaction en cours sera échantillonnée.
  • Ajout de la prise en charge des décisions d'échantillonnage en fonction de l'échantillonnage du parent distant

    • Ajout de la prise en charge de deux nouvelles options de configuration :

      • distributed_tracing.sampler.remote_parent_sampled
      • distributed_tracing.sampler.remote_parent_not_sampled
    • default est le comportement par défaut et se comporte comme avant ce changement (il transmet la décision d'échantillonnage à l'algorithme d'échantillonnage adaptatif pour déterminer si la transaction sera échantillonnée).

    • always_on signifie que la trace qui a un parent distant échantillonné ou un parent distant non échantillonné sera toujours échantillonnée.

    • always_off signifie que la trace qui a un parent distant échantillonné ou un parent distant non échantillonné ne sera jamais échantillonnée.

Débogage

  • Ajouter une protection pour le chemin unique le plus profond dans GraphQL

    • Certains utilisateurs rencontraient des problèmes avec le chemin unique le plus profond dans GraphQL qui n'était pas généré en raison d'un nom de champ renvoyant None. Ce problème a été résolu.
  • Ajouter une protection pour l'analyse des requêtes Web

    • Certains utilisateurs ont rencontré une erreur d'analyse lorsque request_uri était mal formé ou contenait des caractères non valides. Cela peut se produire à ce stade si le request_uri dans l'en-tête de la requête n'est pas valide et ne correspond pas à l'URL (valide) fournie à l'origine. Bien que cette protection ait désormais été mise en place dans New Relic, urllib a résolu ce problème pour les versions de Python sortie après le 31 janvier 2025.
  • Correction du crash dans ElasticSearch et GraphQL lorsque trace.settings==None

    • Dans les cas où trace.settings est None, l'instrumentation pour ElasticSearch a fait planter l'application. Une solution de secours global_settings a été mise en place. Cela résout également le même problème rencontré dans GraphQL.
  • Supprimer la méthode options de la liste des clients ElasticSearch asynchrones

    • L'instrumentation précédente d'ElasticSearch a provoqué un crash car options figurait dans la liste des méthodes asynchrones. Cette méthode n'est plus encapsulée dans un DatastoreTrace car elle n'effectue aucune opération/requests datastore.

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.

August 14
Python agent v10.16.0

Remarques

Cette sortie de l'agent Python ajoute la prise en charge de nouvelles fonctions Redis , convertit tous les chemins internes de os.path à pathlib.Path et corrige un problème avec l'encodage JSON PosixPaths.

Installez l'agent à l'aide de easy_install/pip/distribute via l' index du packagePython ou téléchargez-le directement depuis le site de téléchargement de New Relic.

Nouvelles fonctionnalités

  • Ajoute la prise en charge de nouvelles fonctions Redis

    • Ajoutez une instrumentation pour les nouvelles fonctions Redis .
  • Convertir tous les chemins internes de os.path en pathlib.Path

    • Convertissez toute l'utilisation interne des chemins basés sur des chaînes et os.path en pathlib.Path en préparation pour prendre en charge les chemins Windows.

Débogage

  • Correction du problème avec l'encodage JSON PosixPath

    • Certains utilisateurs rencontraient des problèmes avec les paramètres configuration de l'encodage JSON PosixPath . Ce problème a été résolu.

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.

July 24
Python agent v10.15.0

Notes

This release of the Python agent adds support for oracledb, fixes a bug in Kombu and Kafka where MessageTransaction object has no attribute destination_name, and fixes the disappearance of utilization metadata with AWS.

Install the agent using easy_install/pip/distribute via the Python Package Index or download it directly from the New Relic download site.

New features

  • Adds support for oracledb

Bug fixes

  • Fix "MessageTransaction object has no attribute destination_name" bug

    • Fix a bug in MessageBroker instrumentations where the serialize methods were looking for the destination_name attribute on the MessageTransaction and it did not exist.
  • Fix AWS utilization metadata issue when running AWS and K8s together

    • Due to permissions settings in K8s pods running on AWS EC2 instances, the utilization metadata is able to be retrieved the first time. However, if the application is left running continuously, the agent will reconnect and the utilization metadata fails to load. In cases like these, the utilization metadata is cached per agent instance and is able to be retrieved.

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.

Droits d'auteur © 2025 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.