Déboguer à distance ASP.NET Core sur Azure App Service (Windows)

Cet article explique comment attacher le débogueur Visual Studio à une application ASP.NET Core s’exécutant sur Azure App Service. Les étapes ci-dessous vous permettent de déboguer l’application comme si elle s’exécutait localement.

Prérequis

  • Visual Studio 2022 avec les charges de travail Développement web et ASP.NET et Développement Azure installées.

  • Vous devez d’abord déployer une application ASP.NET Core pour Azure App Service (Windows) à partir de Visual Studio, et l’application doit être en cours d’exécution.

    Pour obtenir une formation pratique qui inclut le déploiement App Service, consultez Déboguer à distance ASP.NET Core sur Azure.

Activer le débogage à distance

Avant de pouvoir déboguer ce problème avec Visual Studio, vous devez activer la fonctionnalité de débogage à distance sur l’instance App Service. Ce paramètre permet au débogueur Visual Studio de se connecter au processus d’hébergement web App Service principal.

  1. Connectez-vous à votre propre portail Azure.

    Localisez votre application déployée dans le portail Azure. Vous pouvez trouver votre application en accédant à la page App Services, puis en sélectionnant l’instance App Service. Vous pouvez également rechercher l’instance App Service directement par son nom dans la barre de recherche en haut. (Dans cet exemple, l’instance App Service est nommée GitHubBrowser123.)

    Capture d’écran de la recherche Azure.

  2. Dans la page des paramètres de l’instance App Service, sélectionnez Configuration dans le volet de navigation de gauche, puis sélectionnez l’onglet Paramètres généraux.

  3. En bas de la page, veillez à définir la fonctionnalité Débogage à distance sur Activé et sélectionnez Visual Studio 2022 comme Version Visual Studio distante.

    Capture d’écran des paramètres de débogage à distance Azure.

  4. Sélectionnez Enregistrer en haut de la page pour enregistrer les changements apportés.

Votre instance App Service prend maintenant en charge le débogage à distance via Visual Studio.

Configurer les paramètres de débogage

Vérifiez que vous avez effectué les étapes suivantes dans Visual Studio avant de déboguer une application dans Azure pour garantir la réussite.

  1. Tout d’abord, vérifiez que vous avez réussi à générer votre projet au moins une fois. Une build réussie garantit que le code source et tous les fichiers compilés nécessaires sont prêts à être utilisés. Si votre application s’exécute localement, veillez à l’arrêter.

    Notes

    Vérifiez que l’état de votre code local correspond à ce qui a été déployé sur Azure. Cela garantit que les fichiers de symboles et le code source en local s’alignent sur l’application déployée.

  2. Sélectionnez Déboguer > Options dans le menu supérieur de Visual Studio. Vérifiez que l’option Activer uniquement mon code n’est pas cochée (comme indiqué ci-dessous), puis sélectionnez OK.

    La modification de ce paramètre permet à Visual Studio de déboguer le code optimisé déployé sur Azure à l’aide des fichiers de symboles nécessaires à partir de votre dossier bin local. Les fichiers de symboles sont utilisés par le débogueur comme pont entre le code compilé, le code en cours d’exécution et le code source dans Visual Studio, ce qui explique pourquoi il est important que votre code source local corresponde à l’application de déploiement.

    Capture d’écran des paramètres de débogage Visual Studio.

Attacher le débogueur à App Service

  1. Dans le menu principal en haut de Visual Studio, sélectionnez Déboguer -> Attacher au processus pour ouvrir la boîte de dialogue correspondante. À l’aide de cette fenêtre, vous pouvez vous connecter et effectuer des attachements à différentes cibles. Dans ce cas, vous allez vous connecter à l’instance App Service que vous avez créée à l’étape précédente.

  2. Sélectionnez la liste déroulante Type de connexion et choisissez l’option Microsoft Azure App Services.

  3. Sélectionnez Rechercher... à côté du champ Cible de connexion pour ouvrir une boîte de dialogue vous permettant de parcourir vos abonnements et services d’application Azure.

  4. Recherchez et sélectionnez l’instance App Service que vous avez créée à l’étape précédente, puis choisissez OK.

  5. Le processus w3wp.exe doit apparaître dans la liste des processus disponibles auxquels se connecter, lequel est le processus principal de l’instance Azure App Service qui héberge l’application déployée. Sélectionnez ce processus, puis choisissez Attacher en bas à droite pour connecter le débogueur Visual Studio.

    Capture d’écran de l’attachement aux fonctionnalités de traitement.

  6. Dans Index.cshtml.cs ou un autre fichier d’application C#, définissez un point d’arrêt en cliquant dans la marge gauche. (Ou cliquez avec le bouton droit et choisissez Point d’arrêt>Insérer un point d’arrêt.)

  7. Si vous le souhaitez, vous pouvez également vérifier que Visual Studio a chargé les fichiers de symboles pour votre session de débogage. Accédez à Déboguer > Windows > Modules pour ouvrir la fenêtre Modules. Cette fenêtre doit indiquer que les fichiers de symboles ont été correctement chargés après les modifications apportées précédemment à la configuration Uniquement mon code.

    Capture d’écran de la fenêtre des fichiers de symboles.