Notes
This release of the Python agent enables log forwarding to New Relic by default. It also addresses a bug related to compressed bytes calculations and adds a new top level data usage supportability metric to the agent.
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
Add APM logs in context
Automatic application log forwarding is now enabled by default. This version of the agent will automatically send enriched application logs to New Relic. To learn more about about this feature, see the APM logs in context documentation. For additional configuration options, see the Python logs in context documentation. To learn about how to toggle log ingestion on or off by account, see our documentation to disable automatic logging via the UI or API.
Add top level aggregated data usage supportability metric
The agent now reports a top level data usage supportability metric:
Supportability/Python/Collector/Output/Bytes
. This aggregates all uncompressed bytes across all agent methods sent to New Relic.
Changes
Change data usage supportability metric name
Previously, the agent reported data usage supportability metrics in the format
Supportability/Python/Collector/Output/Bytes/<agent_method>
. This has been changed to be in the formatSupportability/Python/Collector/<agent_method>/Output/Bytes
to align with the agent specification.
Bug fixes
Fix data usage supportability metric compression payload calculation
Previously, the agent was reporting the compressed bytes for the
Supportability/Python/Collector/Output/Bytes
metric group and uncompressed bytes for theSupportability/Python/Collector/ZLIB/Bytes
metric group. This was incorrect and has been fixed in this release.
Support statement
New Relic recommends that you upgrade the agent regularly and at a minimum every 3 months. As of this release, the oldest supported version is 5.0.0.124.
Notes
This release of the Python agent adds support for aioredis, enhances support for redis and aredis, and fixes a deprecation.
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
Add support for aioredis
The agent will now automatically instrument and send metrics for applications using the Redis and StrictRedis clients for aioredis.
Improvements
Enhance support for redis and aredis
The agent now instruments a more extensive list of commands for redis and aredis clients. This includes commands under the search, graph, time series, json, sentinel, and bf modules.
Bug Fixes
Fix
threading.currentThread
deprecationthreading.currentThread
was deprecated in Python 3.10 and has been replaced withthreading.current_thread
. Thank you hugovk for your contribution to the agent!
Support statement
New Relic recommends that you upgrade the agent regularly and at a minimum every 3 months. As of this release, the oldest supported version is 5.0.0.124.
Notes
This release of the Python agent adds APM logs in context. Additionally this release fixes issues in Starlette and gRPC version compatibility, renames whitelist settings, and removes unwanted error logs.
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
Add APM logs in context
A quick way to view logs no matter where you are in the platform.
To learn more, see the documentation about APM logs in context.
Add support for logging metrics
Logging metrics show the rate of log messages by severity in the logs chart in the APM Summary view. This is enabled by default in this release.
Add support for forwarding application logs to New Relic
This automatically sends application logs that have been enriched to power APM logs in context. This is disabled by default in this release. This will be on by default in a future release. For more information, see our documentation about logs in context for Python.
Add support for enriching application logs written to disk or standard out
This can be used with another log forwarder to power APM logs in context if in-agent log forwarding is not desired. We recommend enabling either log forwarding or local log decorating, but not both features. This is disabled by default in this release.
Changes
Rename Whitelist Setting to Allowlist
The setting
strip_exception_messages.whitelist
has been renamed to the more modern namestrip_exception_messages.allowlist
. The original setting will continue to function but issue a deprecation warning.
Bug Fixes
Fix incompatibility with gRPC v4
Previously a crash was possible in the agent when gRPC v4 was installed when not using the infinite tracing feature. This has been corrected and the agent can safely be used with gRPC v4.
Fix Starlette v0.19.1+ instrumentation
- A crash in CustomRoutes in Starlette v0.19.1 has been addressed and fixed.
- Starlette v0.20.1 reorganized important files which were then uninstrumented. This has been fixed.
Fix unhelpful error messages appearing outside of debug logs
Error messages related to context propagation have been demoted to debug logs to avoid unwanted and unhelpful messages appearing in logs.
Notes
This release of the Python agent adds CodeStream integration support which includes code level metrics.
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
- Add integration with CodeStream Now Introducing Code-Level Metrics! Golden Signals visible in your IDE through New Relic CodeStream. Learn more here. For any issues or direct feedback, please reach out to support@codestream.com
Notes
This release of the Python agent adds support for GraphQL Server, adds a log handler which forwards logs to the New Relic API, and increases functionality to notice_error
.
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
Add support for GraphQL Server The agent will now automatically instrument and send metrics for applications using the GraphQL Server.
Add a Log Handler The agent is now able to forward logs to the New Relic API. Thank you to iamr0b0tx for your contribution!
Changes
- More Robust
should_ignore_error
calls Pass references to settings where possible toshould_ignore_error
and makes custom_nr_ignored
logic more defined and incorporated intonotice_error
.
Notes
This release of the Python agent adds support for Aredis, upgrades to the AWS metadata endpoint to IMDSv2, and fixes attribute errors with the garbage collector sampler.
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
- Add support for Aredis The agent will now automatically instrument and send metrics for applications using the StrictRedis client from Aredis.
Changes
- Upgrades to the AWS Metadata Endpoint Upgrades the AWS metadata endpoint to IMDSv2.
Bug fixes
Fix Garbage Collection Sampler Attribute Errors A crash caused by an attribute error on the garbage collector sampler has been fixed.
Safeguards Against Lost Data with Infinite Tracing Fixed race condition between agent and gRPC that resulted in loss of data on agent reconnect.
Notes
This release of the Python agent adds support for Django v4, Redis v4, GraphQL v3.2, as well as fixes to the memory sample exception, Graphene framework, and import hook warnings for Python 3.10.
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
Add support for Django v4 The agent will now automatically instrument and send metrics for applications using Django v4.
Add support for Redis v4 The agent will now automatically instrument and send metrics for applications using Redis v4.
Add support for graphql-core v3.2.0 The agent will support the latest version of GraphQL.
Changes
- Fix Graphene framework details Data on graphene framework details was missing on newer versions, this has been fixed.
Bug fixes
Fix memory sample exception This fixes the crash in memory sampler on non-supported systems.
Fix import hook warnings for Python 3.10 An
ImportWarning
that was emitted when importing the agent in Python 3.10 has been corrected.
Notes
This release of the Python agent fixes an issue with infinite tracing's usage of gRPC allowing subchannels to retry, and fixes failing database traces.
Install the agent using easy_install/pip/distribute
via the Python Package Index or download it directly from the New Relic download site.
Bug Fixes
Fix gRPC retry logic
Previously gRPC subchannels left open by infinite tracing could cause network congestion and strain our trace observers. This issue has been corrected. As such, specific versions of gRPC are no longer required.
Fix crash in database trace
A crash in database traces resulting from nullified settings (seen rarely in Django) has been corrected.
Notes
This release of the Python agent fixes an issue with FastAPI instrumentation, as well as restricts gRPC to compatible versions.
Install the agent using easy_install/pip/distribute
via the Python Package Index or download it directly from the New Relic download site.
Bug Fixes
Fix FastAPI context propagation error
A runtime instrumentation error stemming from context propagation in FastAPI has been fixed.
Fix gRPC incompatibilities
The version of gRPC has been pinned until compatiblity can be ensured with newer versions.
gRPC recently enabled retries by default on channel connections, potentially causing a storm of requests and open threads to starve the host of resources, as well as strain our trace observers. This pin should alleviate these issues until retries can be properly configured.
Notes
This release of the Python agent fixes an issue with urllib recursion as well as an import error caused by non-ASCII characters in comments
Install the agent using easy_install/pip/distribute
via the Python Package Index or download it directly from the New Relic download site.
Bug Fixes
Fix urllib3 recursion regression
Urllib3 recursion regression issue that was seen in Gevent has been fixed
Fix import error caused by non-ASCII character in comments
An import error caused by non-ASCII characters has been fixed to the correct quotation formatting