Отладка плагинов с помощью профайлера

Отладка плагинов в Microsoft Dynamics CRM 2011/2013 с помощью профайлера.

Plug-in Profiler — это инструмент, позволяющий отлаживать плагины на локальной машине (т.е. off-line).

Для начала использования Plug-in Profiler необходимо убедиться, что вы используете самую последнюю версию программы Plug-in Registration Tool, которая входит в состав Dynamics CRM 2011 SDK. Plug-in Profiler появился в SDK версии 5.0.5. Свежую версию SDK можно скачать здесь.

Если вы не знакомы с Plug-in Registration Tool, то обратитесь к этой статье: Walkthrough: Register a Plug-in Using the Plug-in Registration Tool.

Установка Profiler

Для того, чтобы использовать средства профилирования, необходимо установить Profiler. Для этого с помощью Plug-in Registration Tool подключитесь к целевой среде и на панели управления нажмите кнопку Install Profiler. Выполнение команды займет некоторое время и в результате в целевой среде будет установлено решение Plug-in Profiler. Это решение может быть без проблем удалено в любое время.

Включение профилирования для шага плагина

Профилирование включается для конкретного шага плагина. Для включения профилирования выберите шаг и на панели задач нажмите кнопку Profile (или щелкните на шаге правой кнопкой мыши и в контекстном меню выберите пункт Start Profiling).

Профилирование следует включать только в процессе отладки и отключать после завершения работ, т.к. оно мешает отображению корректных сообщений об ошибках в плагине.

Использование профилирования

  1. В CRM выполните действие, которое вызывает исключение. Обратите внимание на содержимое окна ошибки. Вместо сообщения об ошибке отображается результат профилирования.
  2. Нажмите кнопку Загрузить файл журнала (Download Log File) и сохраните файл себе на диск.
  3. Откройте Visual Studio, с помощью Attach to Process… подключитесь к процессу PluginRegistration.exe и установите необходимые точки останова в коде.
  4. Вернитесь в Plug-in Registration Tool и нажмите кнопку Debug на панели инструментов. В результате откроется следующее окно: mscrm2011-plugin-registration-tool-start-debugging
  5. На вкладке Setup в поле Profile Location выберите файл с результатом профилирования (который вы сохранили на диске в шаге 2). В поле Assembly Location выберите файл плагина, который вы отлаживаете. Обратите внимание, что этот должен быть тот же самый файл, который вы регистрировали с помощью Plug-in Registration Tool.В поле Plug-in можно выбрать конкретный плагин, если сборка содержит несколько классов плагинов.
    На вкладках Unsecure Configuration, Secure Configuration и Settings можно указать необходимые настройки плагина.
  6. Нажмите кнопку Start Plug-in Execution, что позволит запустить плагин на выполнение, как будто он выполняется в нормальной среде. При этом будет работать весь код, в том числе запросы на создание и получение данных и пр.

Решение проблем

Исключение System.IO.FileNotFoundException «Невозможно загрузить файл или сборку «PluginRegistration, Version=2.1.0.1, Culture=neutral, PublicKeyToken=null» или один из зависимых от них компонентов. Не удается найти указанный файл.»
Возможная причина возникновения исключения — ограничения режима изоляции. По умолчанию на вкладке Settings окна Debug Existing Plug-in для поля Isolation Mode установлено значение Based on Profile. Если для плагина установлено, что он выполняется в режиме Isolatable, то и при отладке он будет выполнятся в этом режиме. Для устранения возникновения исключения необходимо установить в поле Isolation Mode значение None.

About the author

Добавить комментарий

Сказать спасибо

Способ платежа:

Подписаться на обновления

Укажите свой e-mail чтобы получать уведомления о новых статьях.