pypi newrelic 11.0.0
v11.0.0

7 hours ago

Notes

This release of the Python agent makes the following changes:

  • Removes support for Python 3.7
  • Removes and or deprecates various APIs and settings
  • Deprecates aioredis instrumentation
  • Raises the minimum supported version of setuptools and setuptools_scm
  • Adds new instrumentation for AutoGen
  • Adds new instrumentation for Pyzeebe
  • Adds new MCP (Model Context Protocol) named spans
  • Fixes a crash in psycopg
  • Ensures MCP spans are only recorded when AI monitoring is enabled

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

Removed features

  • Removes support for Python 3.7

    • Python 3.7 was EOL'd June 27, 2023. The Python agent has dropped support for it.
  • Removes various deprecated APIs

    • The following APIs have been removed:

      Legacy API Replacement API
      accept_distributed_trace_payload accept_distributed_trace_headers
      add_custom_parameter add_custom_attribute
      add_custom_parameters add_custom_attributes
      create_distributed_trace_payload insert_distributed_trace_headers
      get_browser_timing_footer The functionality of this has been wrapped into get_browser_timing_header()
      record_exception notice_error()
      NewRelicLogHandler NewRelicLogForwardingHandler
      lambda_handler & LambdaHandlerWrapper These APIs have moved to the newrelic-lambda package.
  • Removes various deprecated settings

    • The following settings have been removed:

      Legacy Setting Replacement Setting
      transaction_tracer.capture_attributes [transaction_tracer.attributes.enabled](/docs/apm/agents/python-agent/configuration/ python-agent-configuration#cfg-tt-attributes-enabled)
      error_collector.capture_attributes [error_collector.attributes.enabled](/docs/apm/agents/python-agent/configuration/ python-agent-configuration#cfg-error-attributes-enabled)
      browser_monitoring.capture_attributes [browser_monitoring.attributes.enabled](/docs/apm/agents/python-agent/configuration/ python-agent-configuration#cfg-browser-attributes-enabled)
      analytics_events.enabled transaction_events.enabled
      analytics_events.capture_attributes [transaction_events.attributes.enabled](/docs/apm/agents/python-agent/configuration/ python-agent-configuration#cfg-events-attributes-enabled)
      error_collector.ignore_errors error_collector.ignore_classes
      strip_exception_messages.whitelist [strip_exception_messages.allowlist](/docs/apm/agents/python-agent/configuration/ python-agent-configuration#strip_exception_messages_allowlist)
      ssl This is now hardcoded to true so it has been removed as a setting option.
      ignored_params Use newrelic.attributes.exclude = request.parameters.{name} instead. Add each request parameter key to the newrelic.attributes.exclude list, delimited by commas. Be sure to prepend the key with request.parameters.
      agent_limits.merge_stats_maximum This is now completely ignored in favor of serverside config.

Deprecated features

  • Instrumentation for aioredis has been deprecated

    • The aioredis package has been deprecated in favor of redis which now includes the submodule redis.asyncio. As a result, the instrumentation for aioredis has also been deprecated. Please use the redis library instead. This instrumentation will be removed in a future release.
  • Deprecates some existing harvest settings to match other language agents

    • In order to be more consistent with the conventions of the other language agents, the following harvest settings are now deprecated:

      Legacy Setting Replacement Setting
      event_harvest_config.harvest_limits.analytic_event_data transaction_events.max_samples_stored
      event_harvest_config.harvest_limits.span_event_data span_events.max_samples_stored
      event_harvest_config.harvest_limits.error_event_data error_collector.max_event_samples_stored
      event_harvest_config.harvest_limits.custom_event_data custom_insights_events.max_samples_stored
      event_harvest_config.harvest_limits.log_event_data application_logging.forwarding.max_samples_stored

      This is a revert of a previous change that renamed these settings from *.max_samples_stored to the event_harvest_config.harvest_limits.* form.
      This decision has been reversed, and the original settings named have been restored to match the other language agents who did not change these settings names.
      The deprecated settings will continue to work for now, but they will be removed in a future release.

  • Deprecates configuration of the agent through the WSGI environ dictionary

    • The following settings which were previously possible to configure through the WSGI environ dictionary are now deprecated. Please configure these settings through environment variables or the config file.

      • newrelic.set_background_task
      • newrelic.suppress_apdex_metric
      • newrelic.suppress_transaction_trace
      • newrelic.capture_request_params
      • newrelic.disable_browser_autorum
  • Deprecates support for building the agent with setuptools<61.2 or setuptools_scm<6.4

    • The minimum supported versions of setuptools and setuptools_scm have been increased to 61.2 and 6.4 respectively.
      This is to support the use of pyproject.toml for configuring the package metadata and building instructions.
      The agent can now be built with more modern build tools which will no longer log warnings about the lack of a pyproject.toml file.
    • This change adds new version attributes to the packages, newrelic.__version__ and newrelic.__version_tuple__, which can be used to programmatically check the version of the agent at runtime.

New features

  • Adds new instrumentation for AutoGen

    • Adds instrumentation (named spans and custom Llm events) for agents and tools in AutoGen
  • Adds new instrumentation for Pyzeebe

    • Adds automatic instrumentation and framework-specific agent attributes for Pyzeebe
  • Adds new MCP (Model Context Protocol) named spans

    • Adds new named spans for MCP (Model Context Protocol) tool calls made via tool manager to support Streamable HTTP

Bug fixes

  • Fixes a crash in psycopg>=3.2.0 when calling as_string()

    • Fixes an issue in psycopg>=3.2.0 where the as_string() method no longer required arguments, causing a potential crash. This has been fixed, and both signatures of this method are supported.
  • Ensures MCP (Model Context Protocol) spans are only recorded when AI monitoring is enabled

    • Ensures MCP (Model Context Protocol) spans are only recorded when the setting ai_monitoring.enabled is enabled.

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.

Don't miss a new newrelic release

NewReleases is sending notifications on new releases.