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.
Added new instrumentation for Strawberry
GraphQL applications built using Strawberry will now be automatically instrumented.
Added new instrumentation for Ariadne
GraphQL applications built using Ariadne will now be automatically instrumented.
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.
Improved tracing in Starlette GraphQL applications
GraphQL applications using Starlette now support all executor classes. Previously, only async executor classes were supported.
New Relic 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.