Configurer BYOS pour Application Insights Profiler pour .NET et le Débogueur de capture instantanée
Article
Lorsque vous utilisez Application Insights Profiler pour .NET ou le Débogueur de capture instantanée, les artefacts générés par votre application sont chargés par défaut dans des comptes de stockage Azure via l’Internet public. Pour ces artefacts et comptes de stockage, Microsoft maîtrise et couvre le coût pour :
Le traitement et l’analyse.
Les stratégies de chiffrement au repos et de gestion de la durée de vie.
Entre-temps, lorsque vous activez BYOS (apportez votre propre stockage), les artefacts sont chargés dans un compte de stockage que vous seul contrôlez et pour lequel vous payez :
Stratégie de chiffrement au repos et stratégie de gestion de la durée de vie.
Accès au réseau.
Notes
BYOS est requis si vous activez Azure Private Link ou des clés gérées par le client.
Accorder l’accès aux Services de diagnostic à votre compte de stockage.
Reliez votre compte de stockage à votre ressource Application Insights.
Découvrez comment accéder à votre compte de stockage.
Prérequis
Confirmez que vous avez créé votre compte de stockage au même emplacement que votre ressource Application Insights.
Si Private Link est activé, autorisez la connexion à notre service Microsoft approuvé à partir de votre réseau virtuel.
Accorder l’accès aux Services de diagnostic à votre compte de stockage
Un compte de stockage BYOS est lié à une ressource Application Insights. Commencez par accorder le rôle Storage Blob Data Contributor à l’application Microsoft Entra, appelée Diagnostic Services Trusted Storage Access, via la page Access Control (IAM) de votre compte de stockage.
Sélectionnez Contrôle d’accès (IAM).
Sélectionnez Ajouter>Ajouter une attribution de rôle pour ouvrir la page Ajouter une attribution de rôle.
Attribuez le rôle suivant.
Paramètre
Valeur
Role
Contributeur aux données Blob du stockage
Attribuer l’accès à
Utilisateur, groupe ou principal de service
Membres
Accès de stockage approuvé des services de diagnostic
Une fois attribué, vous pouvez voir le rôle sous la section Attributions de rôles.
Notes
Si vous utilisez également Private Link, une configuration supplémentaire est nécessaire pour permettre la connexion à notre service Microsoft approuvé à partir de votre réseau virtuel. Si vous souhaitez obtenir plus d’informations, consultez la Documentation sur la sécurité réseau du stockage.
Relier votre compte de stockage à votre ressource Application Insights
Vous disposez de trois options pour configurer BYOS pour les diagnostics au niveau du code, comme le Profiler .NET et le Débogueur de capture instantanée :
Pour effectuer des mises à jour sur les comptes de stockage liés à votre ressource Application Insights, consultez la Documentation Application Insights CLI.
Créez un fichier de modèle Azure Resource Manager avec le contenu suivant (byos.template.json) :
Fournissez les paramètres suivants lorsque vous y êtes invité dans la console PowerShell :
Paramètre
Description
application_insights_name
Nom de la ressource Application Insights pour activer le BYOS.
storage_account_name
Nom de la ressource de compte de stockage que vous utilisez comme BYOS.
Sortie attendue :
Supply values for the following parameters:
(Type !? for Help.)
application_insights_name: byos-test-westus2-ai
storage_account_name: byosteststoragewestus2
DeploymentName : byos.template
ResourceGroupName : byos-test
ProvisioningState : Succeeded
Timestamp : 4/16/2020 1:24:57 AM
Mode : Incremental
TemplateLink :
Parameters :
Name Type Value
============================== ========================= ==========
application_insights_name String byos-test-westus2-ai
storage_account_name String byosteststoragewestus2
Outputs :
DeploymentDebugLogLevel :
Activez le Profiler .NET ou le Débogueur de capture instantanée sur la charge de travail qui vous intéresse via le Portail Azure. Dans cet exemple, il s’agit d’App Service>Application Insights.
Résolution des problèmes
Résolvez des problèmes courants dans la configuration de BYOS.
Scénario : le schéma de modèle « {schema_uri} » n’est pas pris en charge
Vous avec reçu une erreur similaire à l’exemple suivant :
New-AzResourceGroupDeployment : 11:53:49 AM - Error: Code=InvalidTemplate; Message=Deployment template validation failed: 'Template schema
'https://schema.management.azure.com/schemas/2020-01-01/deploymentTemplate.json#' is not supported. Supported versions are
'2014-04-01-preview,2015-01-01,2018-05-01,2019-04-01,2019-08-01'. Please see https://aka.ms/arm-template for usage details.'.
Solutions
Assurez-vous que la propriété $schema du modèle est valide. Il doit suivre ce modèle :
Assurez-vous que la schema_version du modèle est comprise dans les valeurs valides : 2014-04-01-preview, 2015-01-01, 2018-05-01, 2019-04-01, 2019-08-01.
Scénario : aucun fournisseur de ressources inscrit pour l’emplacement « {location} » n’a été trouvé
Vous avec reçu une erreur similaire à l’exemple suivant :
New-AzResourceGroupDeployment : 6:18:03 PM - Resource microsoft.insights/components 'byos-test-westus2-ai' failed with message '{
"error": {
"code": "NoRegisteredProviderFound",
"message": "No registered resource provider found for location 'westus2' and API version '2020-03-01-preview' for type 'components'. The supported api-versions are '2014-04-01,
2014-08-01, 2014-12-01-preview, 2015-05-01, 2018-05-01-preview'. The supported locations are ', eastus, southcentralus, northeurope, westeurope, southeastasia, westus2, uksouth,
canadacentral, centralindia, japaneast, australiaeast, koreacentral, francecentral, centralus, eastus2, eastasia, westus, southafricanorth, northcentralus, brazilsouth, switzerlandnorth,
australiasoutheast'."
}
}'
Solutions
Assurez-vous que la apiVersion de la ressource microsoft.insights/components est 2015-05-01.
Assurez-vous que la apiVersion de la ressource linkedStorageAccount est 2020-03-01-preview.
Scénario : l’emplacement du compte de stockage doit correspondre à l’emplacement du composant Application Insights
Vous avec reçu une erreur similaire à l’exemple suivant :
New-AzResourceGroupDeployment : 1:01:12 PM - Resource microsoft.insights/components/linkedStorageAccounts 'byos-test-centralus-ai/serviceprofiler' failed with message '{
"error": {
"code": "BadRequest",
"message": "Storage account location should match AI component location",
"innererror": {
"trace": [
"System.ArgumentException"
]
}
}
}'
Solution
Veillez à ce que l’emplacement de la ressource Application Insights soit le même que celui du compte de stockage.
Forum aux questions
Cette section fournit des réponses aux questions courantes sur la configuration de BYOS pour Profiler .NET et le Débogueur de capture instantanée.
Si j’ai activé le Profiler .NET/Débogueur de capture instantanée et BYOS, mes données sont-elles migrées vers mon compte de stockage ?
Non, elles ne le seront pas.
Le modèle BYOS utilise-t-il un chiffrement au repos et des clés gérées par le client ?
Oui. Pour être plus précis, BYOS est une exigence pour activer le Profiler .NET/Débogueur de capture instantanée avec des clés gérées par le client.
BYOS fonctionne-t-il dans un environnement isolé d’Internet ?
Oui. BYOS est une exigence pour des scénarios de réseau isolé.
BYOS fonctionne-t-il avec des clés gérées par le client et Private Link activés ?
Oui, c’est possible.
Si j’ai activé la stratégie BYOS, puis-je revenir en arrière en utilisant des comptes de stockage des Services de diagnostic pour stocker mes données collectées ?
Oui, vous le pouvez, mais nous ne prenons pas en charge la migration des données à partir de votre BYOS pour l’instant.
Après activation du modèle BYOS, tous les coûts de stockage et de réseau associés me sont-ils facturés ?
Oui.
Comment accéder à mon compte de stockage ?
Les agents s’exécutant sur vos machines virtuelles ou Azure App Service chargent des artefacts (profils, instantanés et symboles) dans des conteneurs d’objets blob de votre compte.
Ce processus implique de contacter le service Profiler .NET ou Débogueur de capture instantanée pour obtenir un jeton de signature d’accès partagé à un nouvel objet blob dans votre compte de stockage.
Le Profiler .NET ou Débogueur de capture instantanée :
Analyse le blob entrant.
Réécrit les résultats et les fichiers journaux de l’analyse dans le stockage Blob.
En fonction de la capacité de calcul disponible, ce processus peut se produire à tout moment après le chargement.
Lorsque vous affichez des traces du Profiler ou une analyse du Débogueur de capture instantanée, le service récupère les résultats de l’analyse dans le stockage d’objets blob.
Dans ce module, vous allez découvrir les composants intégrés à .NET Aspire, qui facilitent le stockage des fichiers, des données et des messages dans les comptes Stockage Azure.
Surveillance des performances des applications pour Azure App Service. Analysez la charge, le temps de réponse et les dépendances dans des graphiques, et définissez des alertes sur les performances.