Requires Python agent version 22.214.171.124 or higher.
In APM, your event loop transaction data will be in the transaction breakdown table and the trace details page.
Event loop metrics will appear in the transaction Breakdown table:
one.newrelic.com > APM > (select an app) > Monitoring > Transactions > (select a transaction): The transaction’s Breakdown table flags event loops with asyncio.
Time spent waiting on other transactions will be shown in the transaction Trace details page:
one.newrelic.com > APM > (select an app) > Transactions > (select a transaction trace) > Trace details: The Trace details page contains a table with breakdowns for each segment (method or function call) in a transaction trace.
eventLoopWait attributes will be available via NRQL query. An example query might be:
SELECT count(*) as 'count', average(eventLoopTime) as 'loopTime', average(eventLoopWait) as 'loopWait' FROM Transaction facet name
In New Relic One, you might see results like this:
one.newrelic.com > Query your data > Advanced (NRQL): Use advanced (NRQL) to write a query to find event loops.
Event loop diagnostics will be available by default through our existing aiohttp, sanic, and Tornado instrumentation frameworks. Coroutines using the Python agent API background_task and web_transaction decorator APIs also support asyncio's event loops.
If you need more help, check out these support and learning resources:
- Browse the Explorers Hub to get help from the community and join in discussions.
- Find answers on our sites and learn how to use our support portal.
- Run New Relic Diagnostics, our troubleshooting tool for Linux, Windows, and macOS.
- Review New Relic's data security and licenses documentation.