Приложение ASPNet с образцами диагностики с использованием:
dotnet-countersdotnet-stackheydotnet-monitorprometheusgrafana Запуск приложения запустит контейнер с dotnet-monitor . Этот контейнер настроен для получения диагностических команд из контейнера приложения через диагностический порт. Dotnet Monitor обнажает конечные точки с полезной информацией:
Полный список может показаться здесь: https://github.com/dotnet/dotnet-monitor/blob/main/documentation/api/readme.md.
Конечная точка метрик захватывает метрики в формате экспозиции Prometheus.
Чтобы запустить Графана использовать команду реже:
docker compose up grafana
Комплексные положения Grafana с DataSource Prometheus и сообществом предоставили Dotnet-Monitor Dashboard. После запуска перейдите по адресу http: // localhost: 3000/dashboards (пользователь: admin , пароль: admin )
Запустите нагрузочный тест:
docker compose -f docker-compose.yml -f compose.tests.yml run --rm send-load-sync
docker compose -f docker-compose.yml -f compose.tests.yml run --rm send-load-async
docker compose -f docker-compose.yml -f compose.tests.yml run --rm send-load-enumeration
docker compose -f docker-compose.yml -f compose.tests.yml run --rm send-load-multiple-enumerationDotnet-Monitor позволяет устанавливать выход для экспорта артефактов, таких как дампы. По умолчанию это используется файловая система.
Конфигурация для использования AWS S3
DOTNETMONITOR_Egress__S3Storage__monitorS3Blob__bucketName : bucketname
DOTNETMONITOR_Egress__S3Storage__monitorS3Blob__accessKeyId : accesskeyid
DOTNETMONITOR_Egress__S3Storage__monitorS3Blob__secretAccessKey : secretaccesskey
DOTNETMONITOR_Egress__S3Storage__monitorS3Blob__regionName : us-east-1 И параметр egressProvider должен быть monitorS3Blob .
curl -X ' GET '
' http://localhost:52323/dump?egressProvider=monitorS3Blob '
-H ' accept: application/octet-stream 'Док