Partager via


Déboguer un plug-in inscrit localement

Des informations générales concernant le débogage de plug-in se trouvent dans la rubrique Dataverse Déboguer un plug-in. Les étapes suivantes montrent comment déboguer un plug-in s’exécutant sous Dynamics 365 Customer Engagement (on-premises).

Note

Une autre méthode pour déboguer un plug-in qui s’exécute dans le bac à sable (sandbox) sur tout type de déploiement consiste à utiliser le service de suivi. Pour plus d’informations sur le traçage, voir Journalisation et traçage. Pour plus d’informations concernant le débogage, y compris un didacticiel, consultez la rubrique Dataverse Déboguer un plug-in.

 

Déboguer un plug-in

  1. Inscrivez et déployez l’assembly de plug-in.

    S’il existe une autre copie de l’assembly au même emplacement et que vous ne pouvez pas remplacer cette copie car elle est verrouillée par Dynamics 365 Customer Engagement (on-premises), vous devrez redémarrer le processus de service qui exécute le plug-in. Reportez-vous au tableau ci-dessous pour identifier le processus de service approprié. Plus d’informations : Inscrire et déployer des plug-ins

  2. Configurez le débogueur.

    Associez le débogueur au processus sur le serveur des applications Dynamics 365 Server qui exécutera votre plug-in. Consultez le tableau suivant pour identifier le processus.

    Configuration de l’inscription du plug-in Processus de service
    en ligne w3wp.exe
    hors connexion Microsoft.Crm.Application.Hoster.exe
    plug-ins inscrits de manière asynchrone (ou assemblys de workflow personnalisés) CrmAsyncService.exe
    bac à sable (mode d’isolation) Microsoft.Crm.Sandbox.WorkerProcess.exe

    S’il existe plusieurs processus exécutant le même fichier exécutable, par exemple plusieurs processus w3wp.exe, associez le débogueur à toutes les instances du processus de fichier exécutable existant. Ensuite, définissez un ou plusieurs points d’arrêt dans votre code de plug-in.

  3. Testez le plug-in.

    Exécutez l’application Dynamics 365 Customer Engagement (on-premises) ou toute autre application personnalisée qui utilise le Kit de développement logiciel, et effectuez les actions nécessaires pour exécuter le plug-in. Par exemple, si un plug-in est inscrit pour un événement de création de compte, créez un compte.

  4. Déboguez le code de votre plug-in.

    Apportez les modifications nécessaires à votre code afin qu’il effectue ce que vous souhaitez. Si le code est modifié, compilez-le dans un assembly et répétez les étapes 1 à 4 de cette procédure, si nécessaire. Toutefois, si vous modifiez les numéros de version principale et secondaire de l’assembly de plug-in, vous devrez annuler l’inscription de la version antérieure de l’assembly et inscrire la nouvelle version. Plus d’informations : Inscrire et déployer des plug-ins

  5. Inscrivez le plug-in dans la base de données.

    Après le cycle de modification/compilation/déploiement/test/débogage de votre plug-in, annulez l’inscription du plug-in (sur disque ou GAC), puis réinscrivez-le dans la base de données Dynamics 365 Customer Engagement (on-premises). Plus d’informations : Inscrire et déployer des plug-ins

Pourboire

Il est possible de déboguer un plug-in déployé dans une base de données. Le fichier symbole de l’assembly du plug-in compilé (.pdb) doit être copié dans le dossier <crm-root>\Server\bin\assembly du serveur et Internet Information Services (IIS) doit alors être redémarré. Une fois le débogage effectué, vous devez supprimer le fichier symbole et réinitialiser IIS pour empêcher le processus exécutant le plug-in de consommer davantage de mémoire.

Pour plus d’informations sur le débogage d’un plug-in à l’aide de l’outil Plug-in Profiler, voir Déboguer un plug-in.

Déboguer un plug-in placé dans le bac à sable

Il est important d’effectuer ces étapes avant la première exécution d’un plug-in placé dans le bac à sable. Si le plug-in a déjà été exécuté, vous pouvez soit modifier le code de l’assembly, provoquant le hachage de l’assembly pour sa modification sur le serveur, soit redémarrer le Service de traitement Bac à sable (sandbox) Dynamics 365 Customer Engagement (on-premises) sur le serveur bac à sable.

Configuration sur le serveur local

Le processus hôte de bac à sable analyse le processus de travail du bac à sable qui exécute le plug-in. Le processus hôte vérifie si le plug-in cesse de répondre, s’il dépasse des seuils de mémoire, etc. Si le processus de travail ne répond pas pendant 30 secondes, il sera systématiquement arrêté. Pour déboguer un plug-in de bac à sable, vous devez désactiver cette fonctionnalité d’arrêt. Pour désactiver la fonctionnalité d’arrêt, définissez la clé de Registre suivante à 1 (DWORD) :

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM\SandboxDebugPlugins  

Déboguer le plug-in

Procédez comme suit pour déboguer un plug-in placé dans le bac à sable.

  1. Inscrivez le plug-in dans le bac à sable (mode d’isolation) et déployez-le dans la base de données du serveur Dynamics 365 Server.

  2. Copiez le fichier de symbole (.pdb) de l’assembly de plug-in compilé dans le dossier server\bin\assembly qui figure sur le serveur exécutant le processus de travail du bac à sable nommé Microsoft.Crm.Sandbox.WorkerProcess.exe. Il s’agit du serveur qui héberge le rôle Service de traitement Bac à sable (sandbox).

  3. Suivez les instructions des étapes 2 à 4 présentées au début de cette rubrique.

    Pour plus d’informations sur le débogage d’un plug-in à l’aide de l’outil Plug-in Profiler, voir Déboguer un plug-in.

Voir aussi

Développement de plug-ins
Déboguer un plug-in
Inscrire et déployer des plug-ins
Écrire un plug-in