.NET Profiler для Azure?
Кто-нибудь знает о профилировщике .NET, который работает с Azure, чтобы выяснить узкие места кода.
Я попытался интегрировать профайлер dotTrace, но не имел никакого успеха.
Кто-нибудь знает о какой-либо работе с Azure? Кажется, что это очень необходимо?
Ответы
Ответ 1
NP.Net Profiler
Инструмент Profiler для .NET.NET предназначен для помогать в устранении неполадок, таких как как низкая производительность, связанная с памятью вопросы и первые случайные исключения в любой процесс .NET. Он может устранять неполадки следующие типы приложений .NET: Azure Cloud Service Веб-сайт ASP.NET Приложения,.NET Windows Приложения (WCF, WPF и WF),.NET Консольные приложения,.NET Window Сервисы,.NET COM + Компоненты.
Ответ 2
Azure Monitor позволяет отслеживать ваши приложения, работающие с Azure, в режиме реального времени. Он включает в себя библиотеку для сбора информации о процессе выполнения в хранилище облачной таблицы; а также настольное приложение для просмотра захваченной информации в режиме реального времени:
http://azuremonitor.codeplex.com/
Жюльен Брунет "cloud4net" проект с открытым исходным кодом (http://cloud4net.codeplex.com) может вас заинтересовать: он обеспечивает:
- отслеживание клиентских вызовов azure api (отправленные/полученные байты, время, затраченное на запрос хранения) (*). Он также вычисляет счет за эти вызовы (**)
- извлекать журналы диагностики azure в базу данных mssql для упрощения запросов. Эти журналы включают стандартную информацию IIS W3C (отправленные/полученные байты и время), поэтому вы также можете построить некоторые измерения поверх этого.
(*) вам не нужно переписывать звонки в лазурном хранилище с помощью абстракции cloud4net api - отслеживание вызовов работает на уровне сокета.
(**) на основе лазурной американской информации о ценах на данном этапе. все еще продолжается.
Если вы намерены профилировать использование ЦП, что-то, что вы могли бы извлечь из лазурной диагностики производительности (данные перфоратора могут быть получены в лазурных журналах)
-Юлийен Брунет
From:
http://social.msdn.microsoft.com/Forums/en-US/windowsazure/thread/78391eb1-357d-4431-8a4b-7f2ba80db205/
Использование профилировщика VS для проверки узких мест:
http://msdn.microsoft.com/en-us/magazine/cc337887.aspx
Средства Windows Azure для Microsoft Visual Studio 1.1 (февраль 2010):
http://www.microsoft.com/downloads/details.aspx?FamilyID=5664019e-6860-4c33-9843-4eb40b297ab6&displaylang=en
Ответ 3
С выпуском инструментов Azure SDK и Visual Studio от августа 2011 года профилирование теперь поддерживается в экземплярах, запущенных в облаке. Вы должны иметь Visual Studio Premium или Ultimate, чтобы использовать его, хотя.
Ответ 4
Современные версии dotTrace отлично работают с Azure, хотя интерпретация результатов требует некоторого навыка (поскольку у вас там бесконечный цикл).
Чтобы заставить его работать:
- Добавить конечную точку ввода для порта 9000:
<InputEndpoint name="DotTrace" protocol="tcp" port="9000" localPort="9000" />
и установить его в один экземпляр (для устранения проблем с балансировкой нагрузки)
- Удалить текущее развертывание и загрузить развертывание new ( "Обновление" существующего развертывания не откроет необходимые порты в брандмауэрах!)
- RDP в ваш единственный экземпляр роли вашего веб-роли или сотрудника.
- Загрузите папку
.\Bin\Remote
, как описано здесь (большая часть информации хороша!)
- Выполнить файл
RemoteAgent.exe
"Как администратор"
- Выполните локальный (на вашем компьютере) экземпляр dotTrace.
- Следуйте остальным инструкциям здесь (для моей роли Работника я привязан к процессу WaWorkerHost.exe).
- Профиль прочь!
В настоящее время я делаю это в развертывании osfamily=3
(т.е. Windows Server 2012).
Ответ 5
Наш С# Profiler должен быть в состоянии сделать это.
Он использует ваш исходный код; вы компилируете приложение и включаете код дампа данных зонда в качестве дополнительного файла .cs. Мы поставляем это по умолчанию, который записывает данные в "локальную файловую систему", но вы можете полностью заменить это кодом, который пишет
данные зонда в произвольное место, так что вы можете контролировать, где данные зонда идут полностью (выберите место на вашей Azure VM или отправьте его на корпоративную машину или что-то еще). Вы можете отображать данные профиля в любом месте (например, на вашем настольном компьютере).
Ответ 6
Вы можете "анализировать" ваш код локально при работе с Azure dev fabric, а над вашим кодом - "облако", когда будете счастливы. Это хорошо работает для меня. Там вы также можете использовать SQL Profiler.