Muestra de aplicación ASPNET para detectar el hambre de Threadpool usando:
dotnet-countersdotnet-stackheydotnet-monitorprometheusgrafanaEjecute la aplicación usando Docker
docker compose up app
Monitoree la aplicación con los consejos de dotnet
docker exec -it thread-pool-test-app dotnet-counters monitor -n dotnet
Para obtener la dotnet-stack ejecute lo siguiente
docker exec -it thread-pool-test-app dotnet-stack report -n dotnet
Ejecutar la aplicación iniciará un contenedor con dotnet-monitor . Este contenedor está configurado para obtener comandos de diagnóstico desde el contenedor de la aplicación a través de un puerto de diagnóstico. Dotnet Monitor expone puntos finales con información útil:
Aparece una lista completa: https://github.com/dotnet/dotnet-monitor/blob/main/documentation/api/readme.md.
El punto final de métricas captura métricas en el formato de exposición Prometheus.
Para comenzar a Grafana, use el comando a continuación:
docker compose up grafana
Las disposiciones de composición de Grafana con Prometheus DataSource y la comunidad proporcionó el panel de Dotnet-Monitor. Una vez que se inicia, vaya a http: // localhost: 3000/paneles (usuario: admin , contraseña: admin )
Inicie la prueba de carga que alcanza el punto final de sincronización
docker compose up send-load-sync
Inicie la prueba de carga que golpea el punto final async
docker compose up send-load-async