El agente Python admite el diagnóstico de bucle de eventos asíncio . Cuando hay transacciones que bloquean o retrasan un bucle de eventos, el agente puede generar diagnósticos para ayudar a encontrarlos y resolverlos.
Requisitos
Requiere la versión 5.0.0.124 o superior del agente Python.
Ver en UIde New Relic
En APM, los datos de su transacción de bucle de eventos estarán en la tabla de desglose de transacciones y en la página de detalles de la traza.
Evento loop métrica aparecerá en la transacción Breakdown table:
one.newrelic.com > APM & services > (select an app) > Transactions, haga clic en See transaction table y luego seleccione una transacción: el evento de indicadores Breakdown table de la transacción se repite con asyncio.
El tiempo de espera en otras transacciones se mostrará en la página de transacción Trace details :
one.newrelic.com APM & services > (select an app) > Transactions > (select a transaction trace) > Trace details: La página Trace details contiene una tabla con desgloses para cada segmento (método o llamada de función) en una traza de la transacción.
Evento Loop consulta NRQL
eventLoopTime
y eventLoopWait
atributo estará disponible mediante consulta NRQL. Una consulta de ejemplo podría ser:
SELECT count(*) as 'count', average(eventLoopTime) as 'loopTime', average(eventLoopWait) as 'loopWait' FROM Transaction facet name
Dónde diagnosticar bucles de eventos
El diagnóstico de bucle de eventos estará disponible de forma predeterminada a través de nuestro marco de instrumentación existente aiohttp, sanic y Tornado. Las corrutinas que utilizan la API del agente Python background_task y las API decoradoras web_transaction también admiten los bucles de eventos de asyncio.