Activer le Débogueur de capture instantanée pour les applications .NET dans Azure App Service
Le Débogueur de capture instantanée prend en charge les applications ASP.NET et ASP.NET Core qui s’exécutent sur Azure App Service dans des plans de service Windows.
Notes
Lorsque vous utilisez le Débogueur de capture instantanée, nous vous recommandons d'exécuter votre application au niveau de service De base ou supérieur. Pour la plupart des applications, la mémoire disponible ou l’espace disque avec les niveaux de service Gratuit et Partagé est insuffisant pour enregistrer les captures instantanées. Le niveau Consommation n’est actuellement pas disponible pour le débogueur d’instantané.
Activer le Débogueur de capture instantanée
Débogueur de capture instantanée est préinstallé dans le cadre du runtime d’App Services, mais vous devez l’activer pour obtenir des captures instantanées pour votre application App Service. Pour activer le Débogueur de capture instantanée pour une application, suivez les instructions ci-dessous :
Remarque
Si vous utilisez une préversion de .NET Core ou si votre application référence le SDK Application Insights, directement ou indirectement via un assembly dépendant, suivez les instructions permettant d’activer le Débogueur de capture instantanée pour d’autres environnements en vue d’inclure le package NuGet Microsoft.ApplicationInsights.SnapshotCollector
avec l’application.
Notes
L’installation sans code du Débogueur de capture instantanée Application Insights suit la politique de support .NET Core. Pour plus d’informations sur les runtimes pris en charge, consultez Politique de support .NET Core.
Une fois que vous avez déployé votre application .NET :
Accédez au panneau de configuration Azure pour votre App Service.
Accédez à la page Paramètres>Application Insights.
Suivez les instructions dans la page pour créer une ressource ou sélectionnez une ressource App Insights existante pour superviser votre application.
Positionnez le bouton bascule du Débogueur de capture instantanée sur Activé.
Le Débogueur de capture instantanée est maintenant activé à l’aide d’un paramètre d’application App Services.
Si vous exécutez un autre type de service Azure, voici les instructions à suivre pour activer Débogueur de capture instantanée sur d’autres plateformes prises en charge :
- Fonction Azure
- Azure Cloud Services
- Services Azure Service Fabric
- Machines virtuelles Azure et Groupes de machines virtuelles identiques
- Machines virtuelles ou physiques locales
Activer le Débogueur de capture instantanée pour les autres clouds
Seules les régions Azure Government et Microsoft Azure géré par 21Vianet nécessitent la modification de leurs points de terminaison par le biais d’une chaîne de connexion Application Insights.
Propriété de chaîne de connexion | Cloud US Government | China Cloud |
---|---|---|
SnapshotEndpoint | https://snapshot.monitor.azure.us |
https://snapshot.monitor.azure.cn |
Pour plus d’informations sur les autres substitutions de connexion, consultez la documentation Application Insights.
Activer l’authentification Microsoft Entra pour l’ingestion d’instantanés
Débogueur de capture instantanée Application Insights prend en charge l’authentification Microsoft Entra pour l’ingestion d’instantanés. Cela signifie que pour que tous les instantanés de votre application soient ingérés, votre application doit être authentifiée et fournir les paramètres d’application requis à l’agent Débogueur de capture instantanée.
À ce jour, Débogueur de capture instantanée ne prend en charge l’authentification Microsoft Entra ID que lorsque vous référencez et configurez Microsoft Entra à l’aide du Kit de développement logiciel (SDK) Application Insights dans votre application.
Pour activer Microsoft Entra ID pour l’ingestion d’instantanés :
Créez et ajoutez l’identité managée que vous souhaitez utiliser pour vous authentifier auprès de votre ressource Application Insights sur votre instance App Service.
Pour l’identité managée affectée par le système, consultez la documentation suivante.
Pour l’identité managée affectée par l’utilisateur, consultez la documentation suivante.
Configurez et activez Microsoft Entra ID dans votre ressource Application Insights. Pour plus d’informations, consultez la documentation suivante.
Ajoutez le paramètre d’application suivant, utilisé pour permettre à l’agent Débogueur de capture instantanée de savoir quelle identité managée utiliser :
Pour l’identité affectée par le système :
Paramètre d'application | Valeur |
---|---|
APPLICATIONINSIGHTS_AUTHENTICATION_STRING | Authorization=AD |
Pour l’identité affectée par l’utilisateur :
Paramètre d'application | Valeur |
---|---|
APPLICATIONINSIGHTS_AUTHENTICATION_STRING | Authorization=AD;ClientID={Client ID of the User-Assigned Identity} |
Désactiver le Débogueur de capture instantanée
Pour désactiver le Débogueur de capture instantanée, répétez les étapes d’activation. Toutefois, positionnez le bouton bascule du Débogueur de capture instantanée sur Désactivé.
Modèle Azure Resource Manager
Pour un service Azure App Service, vous pouvez définir des paramètres d’application dans le modèle Resource Manager pour activer le Débogueur de capture instantanée et le Profileur. Par exemple :
{
"apiVersion": "2015-08-01",
"name": "[parameters('webSiteName')]",
"type": "Microsoft.Web/sites",
"location": "[resourceGroup().location]",
"dependsOn": [
"[variables('hostingPlanName')]"
],
"tags": {
"[concat('hidden-related:', resourceId('Microsoft.Web/serverfarms', variables('hostingPlanName')))]": "empty",
"displayName": "Website"
},
"properties": {
"name": "[parameters('webSiteName')]",
"serverFarmId": "[resourceId('Microsoft.Web/serverfarms', variables('hostingPlanName'))]"
},
"resources": [
{
"apiVersion": "2015-08-01",
"name": "appsettings",
"type": "config",
"dependsOn": [
"[parameters('webSiteName')]",
"[concat('AppInsights', parameters('webSiteName'))]"
],
"properties": {
"APPINSIGHTS_INSTRUMENTATIONKEY": "[reference(resourceId('Microsoft.Insights/components', concat('AppInsights', parameters('webSiteName'))), '2014-04-01').InstrumentationKey]",
"APPINSIGHTS_PROFILERFEATURE_VERSION": "1.0.0",
"APPINSIGHTS_SNAPSHOTFEATURE_VERSION": "1.0.0",
"DiagnosticServices_EXTENSION_VERSION": "~3",
"ApplicationInsightsAgent_EXTENSION_VERSION": "~2"
}
}
]
},
Scénarios non pris en charge
Vous trouverez ci-dessous des scénarios dans lesquels Snapshot Collector n’est pas pris en charge :
Scénario | Effets secondaires | Recommandation |
---|---|---|
Vous utilisez le SDK Snapshot Collector directement depuis votre application (.csproj) et avez activé l’option avancée « Interop ». | Le SDK Application Insights local (y compris la télémétrie Snapshot Collector) sera perdu et aucun instantané ne sera disponible. Votre application peut se bloquer au démarrage avec System.ArgumentException: telemetryProcessorTypedoes not implement ITelemetryProcessor. En savoir plus sur la fonctionnalité Application Insights « Interop ». |
Si vous utilisez l’option avancée « Interop », utilisez l’injection Snapshot Collector sans code (activée via le portail Azure). |
Étapes suivantes
- Générez du trafic vers votre application pouvant déclencher une exception. Attendez ensuite 10 à 15 minutes le temps que des captures instantanées soient envoyées à l’instance Application Insights.
- Consultez Captures instantanées dans le portail Azure.
- Pour obtenir de l’aide sur la résolution des problèmes liés au débogueur de capture instantanée, consultez Résolution des problèmes liés au Débogueur de capture instantanée.