This release of the Python agent adds new instrumentation for the GraphQL frameworks Strawberry and Ariadne, updates to Graphene and Starlette GraphQL instrumentation, a change to logging configuration, and includes bug fixes.
Install the agent using
easy_install/pip/distribute via the Python Package Index or download it directly from the New Relic download site.
Add new instrumentation for Strawberry
GraphQL applications built using Strawberry will now be automatically instrumented.
Add new instrumentation for Ariadne
GraphQL applications built using Ariadne will now be automatically instrumented.
Add new and changed metrics for Graphene applications
Metrics specifying the framework details for Graphene have been added, and GraphQL metrics now include Graphene as a product field.
Improve tracing in Starlette GraphQL applications
GraphQL applications using Starlette now support all executor classes. Previously, only async executor classes were supported.
New Relic agent logs no longer propagate to the root logger by default
Previously, logs using the
loggingmodule sent to the
newreliclogger would propagate to the root logger, potentially causing duplicate logs to appear or be sent to New Relic. This has been changed to no longer propagate to the root logger by default.
To reverse this behavior, in your application you can run
logging.getLogger("newrelic").propagate = Trueat any point after initializing the agent. If you use the
newrelic-adminwrapper, this can be done at any time inside your application.
A case of infinite recursion with
TimeTrace.__str__has been corrected in this release. Calling
TimeTraceobject or subclass instance will now display helpful debugging information about it.