Application Insights s’intègre à Log Analytics et envoie des données de télémétrie à un espace de travail Log Analytics commun. Cette configuration fournit un accès complet aux fonctionnalités Log Analytics, consolide les journaux d’activité dans un emplacement et permet un contrôle d’accès unifié en fonction du rôle Azure , ce qui élimine la nécessité de requêtes inter-applications/espaces de travail.
Les fonctionnalités améliorées sont les suivantes :
Cet article explique comment créer et configurer des ressources Application Insights. En plus de la ressource Application Insights elle-même, vous pouvez ajouter différentes configurations telles que la définition du plafond quotidien et du plan tarifaire. Vous pouvez également créer des tests de disponibilité, configurer des alertes de métriques et automatiser le processus à l’aide d’Azure Resource Manager.
Remarque
L’ingestion et la conservation des données pour les ressources Application Insights basées sur un espace de travail sont facturées dans l’espace de travail Log Analytics où se trouvent les données. Pour en savoir plus sur la facturation, consultez Informations sur les tarifs des journaux Azure Monitor.
Conditions préalables
- Un abonnement Azure actif.
- Autorisations nécessaires pour créer des ressources.
Exigences supplémentaires
Aucune exigence supplémentaire.
Pour accéder aux commandes Azure CLI Application Insights, vous devez d’abord exécuter :
az extension add -n application-insights
Si vous n’exécutez pas la commande az extension add, un message d’erreur indique az : ERROR: az monitor: 'app-insights' is not in the 'az monitor' command group. See 'az monitor --help'.
Vous pouvez déployer des modèles Bicep via Azure CLI, Azure PowerShell et dans le portail Azure. Vérifiez les onglets respectifs pour connaître les exigences supplémentaires.
Vous pouvez déployer des modèles ARM via Azure CLI, Azure PowerShell et dans le portail Azure. Vérifiez les onglets respectifs pour connaître les exigences supplémentaires.
Créer une ressource Application Insights
- Connectez-vous au portail Azure.
- Sélectionnez Créer une ressource.
- Ouvrez la catégorie Surveillance et diagnostics, puis sélectionnez Application Insights.
- Entrez toutes les informations pertinentes, puis passez en revue + créez votre ressource Application Insights.
Remarque
Si vous ne vous connectez pas à un espace de travail Log Analytics existant lors de la création de la ressource, une ressource Log Analytics est créée automatiquement avec votre ressource Application Insights.
Après avoir créé votre ressource, vous trouverez les informations correspondantes de l’espace de travail dans le volet Vue d’ensemble d’Application Insights.
Sélectionnez le texte du lien bleu pour accéder à l’espace de travail Log Analytics associé, où vous pouvez profiter du nouvel environnement unifié de requête de l’espace de travail.
Remarque
Nous proposons toujours une compatibilité descendante totale pour vos requêtes de ressources, classeurs et alertes basées sur des journaux Application Insights classiques. Pour interroger ou afficher le nouveau schéma ou la nouvelle structure de table basée sur un espace de travail, vous devez d’abord accéder à votre espace de travail Log Analytics. Sélectionnez Journaux (Analytics) dans les volets d’Application Insights pour accéder à l’expérience de requête Application Insights classique.
Pour créer une ressource Application Insights basée sur un espace de travail, un espace de travail Log Analytics est requis. Si vous n’en avez pas encore, vous pouvez utiliser la commande Azure CLI suivante pour en créer une.
Espaces réservés : <resource-group-name>, <log-analytics-workspace-name>, <azure-region-name>
az monitor log-analytics workspace create --resource-group <resource-group-name> --workspace-name <log-analytics-workspace-name> --location <azure-region-name>
Pour créer une ressource Application Insights, exécutez la commande Azure CLI suivante dans votre terminal.
Espaces réservés : <application-insights-resource-name>, <azure-region-name>, <resource-group-name>, <log-analytics-workspace-name>
az monitor app-insights component create --app <application-insights-resource-name> --location <azure-region-name> --resource-group <resource-group-name> --workspace <log-analytics-workspace-name>
Pour plus d’informations sur la création de ressources Application Insights et d’espaces de travail Log Analytics à l’aide d’Azure CLI, consultez la documentation Azure CLI pour Application Insights et Log Analytics.
Pour créer une ressource Application Insights basée sur un espace de travail, un espace de travail Log Analytics est requis. Si vous n’en avez pas encore, vous pouvez utiliser la commande Azure PowerShell suivante pour en créer une.
Espaces réservés : <resource-group-name>, <log-analytics-workspace-name>, <azure-region-name>
New-AzOperationalInsightsWorkspace -ResourceGroupName <resource-group-name> -Name <log-analytics-workspace-name> -Location <azure-region-name>
Pour créer une ressource Application Insights, exécutez la commande Azure PowerShell suivante dans votre terminal.
Espaces réservés : <resource-group-name>, <application-insights-resource-name>, <azure-region-name>,<subscription-id>, <log-analytics-workspace-name>
New-AzApplicationInsights -ResourceGroupName <resource-group-name> -Name <application-insights-resource-name> -Location <azure-region-name> -WorkspaceResourceId /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>
Pour plus d’informations sur la création de ressources Application Insights et d’espaces de travail Log Analytics à l’aide d’Azure PowerShell, consultez la documentation Azure PowerShell pour Application Insights et Log Analytics.
Pour créer une ressource Application Insights basée sur un espace de travail, un espace de travail Log Analytics est requis. Si vous n’en avez pas déjà, vous pouvez utiliser l’appel d’API REST suivant pour en créer un.
Espaces réservés : <subscription-id>, <resource-group-name>, <log-analytics-workspace-name>, <access-token>, <azure-region-name>
PUT https://management.azure.com/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>?api-version=2023-09-01
Authorization: Bearer <access-token>
Content-Type: application/json
{
"location": "<azure-region-name>"
}
Pour créer une ressource Application Insights à l’aide de l’API REST, utilisez la requête suivante.
Espaces réservés : <subscription-id>, <resource-group-name>, <application-insights-resource-name>, <access-token>, <application-type>, <azure-region-name>, <log-analytics-workspace-name>
PUT https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Insights/components/<application-insights-resource-name>?api-version=2020-02-02
Authorization: Bearer <access-token>
Content-Type: application/json
{
"kind": "<application-type>",
"location": "<azure-region-name>",
"properties": {
"Application_Type": "<application-type>",
"WorkspaceResourceId": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>"
}
}
Pour plus d’informations sur la création de ressources Application Insights et d’espaces de travail Log Analytics à l’aide de l’API REST, consultez la documentation de l’API REST pour Application Insights et Log Analytics.
Voici comment créer une ressource Application Insights à l’aide d’un modèle Bicep.
Créer un modèle
Créez un fichier .bicep (par exemple, my-template.bicep), copiez le contenu suivant dans celui-ci :
param name string
param type string
param regionId string
param requestSource string
param workspaceResourceId string
resource appInsights 'Microsoft.Insights/components@2020-02-02' = {
name: name
location: regionId
tags: tagsArray
kind: 'other'
properties: {
Application_Type: type
Request_Source: requestSource
WorkspaceResourceId: workspaceResourceId
}
}
Créer un fichier de paramètres
Créez un fichier .bicepparam (par exemple, my-parameters.bicepparam), copiez le contenu suivant et remplacez les espaces réservés <application-insights-resource-name>, , <application-type>, <azure-region-name>, <subscription-id>, <resource-group-name>et <log-analytics-workspace-name> par vos valeurs spécifiques :
using 'my-template.bicep'
param name string = '<application-insights-resource-name>'
param type string = '<application-type>'
param regionId string = '<azure-region-name>'
param requestSource string = 'CustomDeployment'
param workspaceResourceId string = '/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<log-analytics-workspace-name>'
Utiliser le modèle pour créer une ressource Application Insights
Dans PowerShell, connectez-vous à Azure en utilisant $Connect-AzAccount.
Affectez un abonnement à votre contexte avec Set-AzContext "<subscription ID>".
Exécutez un nouveau déploiement pour créer une ressource Application Insights :
New-AzResourceGroupDeployment -ResourceGroupName <your-resource-group> -TemplateFile my-template.bicep -TemplateParameterFile my-parameters.bicepparam
-
-ResourceGroupName est le groupe dans lequel vous souhaitez créer les nouvelles ressources.
-
-TemplateFile doit se produire avant les paramètres personnalisés.
-
-TemplateParameterFile est le nom du fichier de paramètres.
Vous pouvez ajouter d'autres paramètres. Vous trouvez leurs descriptions dans la section Paramètres du modèle.
Voici comment créer une ressource Application Insights à l’aide d’un modèle ARM.
Créer un modèle
Créez un fichier .json (par exemple, my-template.json) et copiez le contenu suivant dans celui-ci :
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"name": {
"type": "string",
"metadata": {
"description": "Name of Application Insights resource."
}
},
"type": {
"type": "string",
"metadata": {
"description": "Type of app you are deploying. This field is for legacy reasons and will not impact the type of Application Insights resource you deploy."
}
},
"regionId": {
"type": "string",
"metadata": {
"description": "Which Azure region to deploy the resource to. This must be a valid Azure regionId."
}
},
"tagsArray": {
"type": "object",
"metadata": {
"description": "See documentation on tags: https://learn.microsoft.com/azure/azure-resource-manager/management/tag-resources."
}
},
"requestSource": {
"type": "string",
"metadata": {
"description": "Source of Azure Resource Manager deployment"
}
},
"workspaceResourceId": {
"type": "string",
"metadata": {
"description": "Log Analytics workspace ID to associate with your Application Insights resource."
}
}
},
"resources": [
{
"type": "Microsoft.Insights/components",
"apiVersion": "2020-02-02",
"name": "[parameters('name')]",
"location": "[parameters('regionId')]",
"tags": "[parameters('tagsArray')]",
"kind": "other",
"properties": {
"Application_Type": "[parameters('type')]",
"Request_Source": "[parameters('requestSource')]",
"WorkspaceResourceId": "[parameters('workspaceResourceId')]"
}
}
]
}
Remarque
Pour plus d’informations sur les propriétés des ressources, consultez Valeurs de propriété.
Flow_Type et Request_Source ne sont pas utilisés, mais sont inclus dans cet exemple à des fins d’exhaustivité.
Créer un fichier de paramètres
Créez un fichier .json (par exemple, my-parameters.json), copiez le contenu suivant et remplacez les espaces réservés <application-insights-resource-name>, , <application-type>, <azure-region-name>, <subscription-id>, <resource-group-name>et <log-analytics-workspace-name> par vos valeurs spécifiques :
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"name": {
"value": "<application-insights-resource-name>"
},
"type": {
"value": "<application-type>"
},
"regionId": {
"value": "<azure-region-name>"
},
"tagsArray": {
"value": {}
},
"requestSource": {
"value": "CustomDeployment"
},
"workspaceResourceId": {
"value": "/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<log-analytics-workspace-name>"
}
}
}
Utiliser le modèle pour créer une ressource Application Insights
Dans PowerShell, connectez-vous à Azure en utilisant $Connect-AzAccount.
Affectez un abonnement à votre contexte avec Set-AzContext "<subscription ID>".
Exécutez un nouveau déploiement pour créer une ressource Application Insights :
New-AzResourceGroupDeployment -ResourceGroupName <your-resource-group> -TemplateFile my-template.json -TemplateParameterFile my-parameters.json
-
-ResourceGroupName est le groupe dans lequel vous souhaitez créer les nouvelles ressources.
-
-TemplateFile doit se produire avant les paramètres personnalisés.
-
-TemplateParameterFile est le nom du fichier de paramètres.
Après avoir créé une ressource Application Insights, vous configurez la supervision.
Obtenir la chaîne de connexion
La chaîne de connexion identifie la ressource à laquelle vous souhaitez associer vos données de télémétrie. Vous pouvez également l’utiliser pour modifier les points de terminaison que votre ressource utilise comme destination pour votre télémétrie. Vous devez copier la chaîne de connexion et l’ajouter au code de votre application ou à une variable d’environnement.
Pour obtenir la chaîne de connexion de votre ressource Application Insights :
- Ouvrez votre ressource Application Insights dans le Portail Azure.
- Dans le volet Vue d’ensemble de la section Essentials , recherchez la chaîne de connexion.
- Si vous pointez sur la chaîne de connexion, une icône apparaît qui vous permet de la copier dans votre Presse-papiers.
Pour obtenir la chaîne de connexion, exécutez la commande Azure CLI suivante dans votre terminal et remplacez les espaces réservés <application-insights-resource-name> et <resource-group-name> par vos valeurs spécifiques :
az monitor app-insights component show --app <application-insights-resource-name> --resource-group <resource-group-name> --query connectionString --output tsv
Pour plus d’informations sur la az monitor app-insights component show commande, consultez la documentation Azure CLI.
Pour obtenir la chaîne de connexion, exécutez la commande Azure PowerShell suivante dans votre terminal et remplacez les espaces réservés <resource-group-name> et <application-insights-resource-name> par vos valeurs spécifiques :
Get-AzApplicationInsights -ResourceGroupName <resource-group-name> -Name <application-insights-resource-name> | Select-Object -ExpandProperty ConnectionString
Pour plus d’informations sur la Get-AzApplicationInsights commande, consultez la documentation Azure PowerShell.
Pour récupérer les détails de votre ressource Application Insights, utilisez la requête suivante et remplacez les espaces réservés<subscription-id>, <resource-group-name>et <application-insights-resource-name><access-token> par vos valeurs spécifiques :
GET https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Insights/components/<application-insights-resource-name>?api-version=2015-05-01
Authorization: Bearer <access-token>
Recherchez le properties.connectionString champ dans la réponse JSON.
Pour plus d’informations sur la récupération d’informations sur les ressources Application Insights à l’aide de l’API REST, consultez la documentation de l’API REST.
Non applicable aux modèles Bicep.
Non applicable aux modèles ARM.
Surveillance des applications avec OpenTelemetry
Pour l’analyse des applications avec OpenTelemetry, vous installez la distribution OpenTelemetry Azure Monitor appropriée et pointez la chaîne de connexion vers votre ressource nouvellement créée.
Pour plus d’informations sur la configuration de la supervision des applications avec OpenTelemetry, consultez la documentation suivante spécifique à la langue :
Instrumentation automatique
Pour les services de surveillance tels qu’Azure Functions et Azure App Service, vous pouvez d’abord créer votre ressource Application Insights, puis le pointer vers celui-ci lorsque vous activez la supervision. Vous pouvez également créer une ressource Application Insights pendant le processus d’activation.
Modifier l’espace de travail associé
Après avoir créé une ressource Application Insights, vous pouvez modifier l’espace de travail Log Analytics associé.
Dans votre ressource Application Insights, sélectionnez Propriétés>, puis Changer d’espace de travail>Espaces de travail Log Analytics.
Pour modifier l’espace de travail Log Analytics, exécutez la commande Azure CLI suivante dans votre terminal et remplacez les espaces réservés <application-insights-resource-name>, <resource-group-name>et <log-analytics-workspace-name> par vos valeurs spécifiques :
az monitor app-insights component update --app <application-insights-resource-name> --resource-group <resource-group-name> --workspace <log-analytics-workspace-name>
Pour plus d’informations sur la az monitor app-insights component update commande, consultez la documentation Azure CLI.
Pour modifier l’espace de travail Log Analytics, exécutez la commande Azure PowerShell suivante dans votre terminal et remplacez les espaces réservés<resource-group-name>, <application-insights-resource-name>et <subscription-id><log-analytics-workspace-name> par vos valeurs spécifiques :
Update-AzApplicationInsights -ResourceGroupName <resource-group-name> -Name <application-insights-resource-name> -WorkspaceResourceId /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>
Pour plus d’informations sur la Update-AzApplicationInsights commande, consultez la documentation Azure PowerShell.
Pour modifier l’espace de travail Log Analytics à l’aide de l’API REST, utilisez la requête suivante et remplacez les espaces réservés <subscription-id>, , <resource-group-name><application-insights-resource-name>, <access-token>, <azure-region-name>et <log-analytics-workspace-name> par vos valeurs spécifiques :
PATCH https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Insights/components/<application-insights-resource-name>?api-version=2020-02-02
Authorization: Bearer <access-token>
Content-Type: application/json
{
"location": "<azure-region-name>",
"properties": {
"WorkspaceResourceId": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>"
}
}
Pour plus d’informations sur la modification de l’espace de travail associé à l’aide de l’API REST, consultez la documentation de l’API REST.
Pour modifier l’espace de travail Log Analytics, collez le code suivant dans votre modèle et remplacez les espaces réservés<application-insights-resource-name>, <azure-region-name>et <application-type><log-analytics-workspace-name> par vos valeurs spécifiques :
param workspaceResourceId string = '/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>'
resource appInsights 'Microsoft.Insights/components@2020-02-02-preview' = {
name: '<application-insights-resource-name>'
location: '<azure-region-name>'
properties: {
Application_Type: '<application-type>'
WorkspaceResourceId: workspaceResourceId
}
}
Pour modifier l’espace de travail Log Analytics, collez le code suivant dans votre modèle et remplacez les espaces réservés<application-insights-resource-name>, <azure-region-name>et <application-type><log-analytics-workspace-name> par vos valeurs spécifiques :
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.Insights/components",
"apiVersion": "2020-02-02-preview",
"name": "<application-insights-resource-name>",
"location": "<azure-region-name>",
"properties": {
"Application_Type": "<application-type>",
"WorkspaceResourceId": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>"
}
}
]
}
Exporter la télémétrie
La fonctionnalité héritée d’exportation continue n’est pas prise en charge pour les ressources basées sur un espace de travail. Utilisez plutôt les paramètres de diagnostic.
Dans votre ressource Application Insights, sélectionnez Paramètres>de diagnostic Ajouter un paramètre de diagnostic.
Vous pouvez sélectionner toutes les tables ou un sous-ensemble de tables à archiver dans un compte de stockage. Vous pouvez également diffuser en continu vers un hub d’événements.
Pour exporter des données de télémétrie à l’aide des paramètres de diagnostic, exécutez la commande Azure CLI suivante dans votre terminal et remplacez les espaces réservés<diagnostic-setting-name>, <application-insights-resource-name>et <resource-group-name><storage-account-name> par vos valeurs spécifiques :
az monitor diagnostic-settings create --name <diagnostic-setting-name> --resource <application-insights-resource-name> --resource-group <resource-group-name> --resource-type Microsoft.Insights/components --storage-account <storage-account-name>
Cet exemple de commande active les paramètres de diagnostic et envoie tous les journaux de votre ressource Application Insights au compte de stockage spécifié. Pour envoyer également des métriques, ajoutez --metrics '[{"category": "AllMetrics", "enabled": true}]' à la commande.
Pour plus d’informations sur la az monitor diagnostic-settings create commande, consultez la documentation Azure CLI.
Pour exporter des données de télémétrie à l’aide des paramètres de diagnostic, exécutez la commande Azure PowerShell suivante dans votre terminal et remplacez les espaces réservés <application-insights-resource-id>, <diagnostic-setting-name>et <storage-account-id> par vos valeurs spécifiques :
Set-AzDiagnosticSetting -ResourceId <application-insights-resource-id> -Name <diagnostic-setting-name> -StorageAccountId <storage-account-id> -Enabled $True
Cet exemple de commande active les paramètres de diagnostic et envoie toutes les métriques et tous les journaux de votre ressource Application Insights au compte de stockage spécifié.
Pour plus d’informations sur la Set-AzDiagnosticSetting commande, consultez la documentation Azure PowerShell.
Pour exporter des données de télémétrie vers un compte de stockage Azure à l’aide d’un paramètre de diagnostic, utilisez la requête suivante et remplacez les espaces réservés <subscription-id>, , <resource-group-name>, <application-insights-resource-name>, <diagnostic-setting-name><access-token>et <storage-account-name> par vos valeurs spécifiques :
PUT https://management.azure.com//subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>/providers/Microsoft.Insights/diagnosticSettings/<diagnostic-setting-name>?api-version=2021-05-01-preview
Authorization: Bearer <access-token>
Content-Type: application/json
{
"properties": {
"storageAccountId": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>",
"logs": [
{
"category": "AppRequests",
"enabled": true
}
],
"metrics": [
{
"category": "AllMetrics",
"enabled": true
}
]
}
}
Cet exemple d’appel active les paramètres de diagnostic et envoie toutes les métriques et tous les journaux de votre ressource Application Insights au compte de stockage spécifié.
Pour plus d’informations sur la création d’un paramètre de diagnostic à l’aide de l’API REST, consultez la documentation de l’API REST.
Pour exporter des données de télémétrie à l’aide des paramètres de diagnostic, collez le code suivant dans votre modèle et remplacez les espaces réservés <application-insights-resource-name>, , <azure-region-name><application-type>, <diagnostic-setting-name>, , <subscription-id><resource-group>et <storage-account-name> par vos valeurs spécifiques :
param appInsightsName string = '<application-insights-resource-name>'
param location string = '<azure-region-name>'
param applicationType string = '<application-type>'
param diagnosticSettingName string = '<diagnostic-setting-name>'
param storageAccountId string = '/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>'
resource appInsights 'Microsoft.Insights/components@2020-02-02' = {
name: appInsightsName
location: location
kind: applicationType
properties: {
Application_Type: applicationType
}
}
resource diagnosticSetting 'Microsoft.Insights/diagnosticSettings@2021-05-01-preview' = {
name: diagnosticSettingName
scope: appInsights
properties: {
storageAccountId: storageAccountId
logs: [
{
category: 'AppRequests'
enabled: true
}
]
metrics: [
{
category: 'AllMetrics'
enabled: true
}
]
}
}
Pour exporter des données de télémétrie à l’aide des paramètres de diagnostic, collez le code suivant dans votre modèle et remplacez les espaces réservés <application-insights-resource-name>, , <azure-region-name><application-type>, <diagnostic-setting-name>, , <subscription-id><resource-group>et <storage-account-name> par vos valeurs spécifiques :
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"appInsightsName": {
"type": "string",
"defaultValue": "<application-insights-resource-name>"
},
"location": {
"type": "string",
"defaultValue": "<azure-region-name>"
},
"applicationType": {
"type": "string",
"defaultValue": "<application-type>"
},
"diagnosticSettingName": {
"type": "string",
"defaultValue": "<diagnostic-setting-name>"
},
"storageAccountId": {
"type": "string",
"defaultValue": "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>"
}
},
"resources": [
{
"type": "Microsoft.Insights/components",
"apiVersion": "2020-02-02",
"name": "[parameters('appInsightsName')]",
"location": "[parameters('location')]",
"kind": "[parameters('applicationType')]",
"properties": {
"Application_Type": "[parameters('applicationType')]"
}
},
{
"type": "Microsoft.Insights/diagnosticSettings",
"apiVersion": "2021-05-01-preview",
"name": "[parameters('diagnosticSettingName')]",
"scope": "[resourceId('Microsoft.Insights/components', parameters('appInsightsName'))]",
"properties": {
"storageAccountId": "[parameters('storageAccountId')]",
"logs": [
{
"category": "AppRequests",
"enabled": true
}
],
"metrics": [
{
"category": "AllMetrics",
"enabled": true
}
]
}
}
]
}
Définir la conservation des données
Pour définir la rétention des données pour l’espace de travail Log Analytics associé, collez le code suivant dans votre modèle et remplacez les espaces réservés<log-analytics-workspace-name>, <azure-region-name><retention-period-in-days> par vos valeurs spécifiques :
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2020-08-01' = {
name: '<log-analytics-workspace-name>'
location: '<azure-region-name>'
properties: {
retentionInDays: <retention-period-in-days>
}
}
Pour définir la rétention des données pour l’espace de travail Log Analytics associé, collez le code suivant dans votre modèle et remplacez les espaces réservés<log-analytics-workspace-name>, <azure-region-name><retention-period-in-days> par vos valeurs spécifiques :
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.OperationalInsights/workspaces",
"apiVersion": "2020-08-01",
"name": "<log-analytics-workspace-name>",
"location": "<azure-region-name>",
"properties": {
"retentionInDays": <retention-period-in-days>
}
}
]
}
Définir le plafond quotidien
La limite quotidienne doit être définie indépendamment pour Application Insights et l’espace de travail Log Analytics sous-jacent. La limite quotidienne effective est le minimum des deux paramètres.
Remarque
Actuellement, Azure ne permet pas de définir la limite quotidienne pour Application Insights via Azure CLI.
Pour modifier la limite quotidienne de Log Analytics, exécutez la commande Azure CLI suivante dans votre terminal et remplacez les espaces réservés <resource-group-name>, <log-analytics-workspace-name>et <daily-cap-in-gb> par vos valeurs spécifiques.
az monitor log-analytics workspace update --resource-group <resource-group-name> --workspace-name <log-analytics-workspace-name> --set workspaceCapping.dailyQuotaGb=<daily-cap-in-gb>
Pour plus d’informations sur la az monitor log-analytics workspace update commande, consultez la documentation Azure CLI.
Pour modifier la limite quotidienne pour Application Insights et Log Analytics, exécutez les commandes Azure PowerShell suivantes dans votre terminal et remplacez les espaces réservés par vos valeurs spécifiques.
Application Insights
Espaces réservés : <resource-group-name>, <application-insights-resource-name>, <daily-cap-in-gb>
Set-AzApplicationInsightsDailyCap -ResourceGroupName <resource-group-name> -Name <application-insights-resource-name> -DailyCapGB <daily-cap-in-gb>
Pour plus d’informations sur la Set-AzApplicationInsightsDailyCap commande, consultez la documentation Azure PowerShell.
Log Analytics
Espaces réservés : <resource-group-name>, <log-analytics-workspace-name>, <daily-cap-in-gb>
Set-AzOperationalInsightsWorkspace -ResourceGroupName <resource-group-name> -Name <log-analytics-workspace-name> -DailyQuotaGb <daily-cap-in-gb>
Pour plus d’informations sur la Set-AzOperationalInsightsWorkspace commande, consultez la documentation Azure PowerShell.
Remarque
Actuellement, Azure ne permet pas de définir la limite quotidienne pour Application Insights avec Azure CLI.
Pour modifier la limite quotidienne de Log Analytics, utilisez la requête suivante et remplacez les espaces réservés <subscription-id>, , <resource-group-name>, <log-analytics-workspace-name>, <access-token><azure-region-name>et <daily-cap-in-gb> par vos valeurs spécifiques :
Espaces réservés :
PATCH https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>?api-version=2023-09-01
Authorization: Bearer <access-token>
Content-Type: application/json
{
"location": '<azure-region-name>',
"properties": {
"workspaceCapping": {
"dailyQuotaGb": <daily-cap-in-gb>,
},
}
}
Pour plus d’informations sur la définition de la limite quotidienne log Analytics, consultez la documentation de l’API REST
Remarque
Actuellement, Azure ne permet pas de définir la limite quotidienne pour Application Insights avec un modèle Bicep.
Pour définir la limite quotidienne de Log Analytics, collez le code suivant dans votre modèle et remplacez les espaces réservés <log-analytics-workspace-name>, <azure-region-name>et <daily-cap-in-gb> par vos valeurs spécifiques :
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2020-08-01' = {
name: '<log-analytics-workspace-name>'
location: '<azure-region-name>'
properties: {
dailyQuotaGb: <daily-cap-in-gb>
}
}
Remarque
Actuellement, Azure ne permet pas de définir la limite quotidienne pour Application Insights à l’aide d’un modèle ARM.
Pour définir la limite quotidienne de Log Analytics, collez le code suivant dans votre modèle et remplacez les espaces réservés <log-analytics-workspace-name>, <azure-region-name>et <daily-cap-in-gb> par vos valeurs spécifiques :
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.OperationalInsights/workspaces",
"apiVersion": "2023-09-01",
"name": "<log-analytics-workspace-name>",
"location": "<azure-region-name>",
"properties": {
"workspaceCapping": {
"dailyQuotaGb": <daily-cap-in-gb>
}
}
}
]
}
Définir le plan tarifaire
Le plan tarifaire des ressources Application Insights peut être défini dans l’espace de travail Log Analytics associé. Pour plus d’informations sur les plans tarifaires disponibles, consultez Calculs et options des coûts des journaux Azure Monitor.
Remarque
Si vous voyez des frais inattendus ou des coûts élevés dans Application Insights, ce guide peut vous aider. Il couvre les causes courantes telles que le volume de télémétrie élevé, les pics d’ingestion de données et l’échantillonnage mal configuré. Il est particulièrement utile si vous résolvez des problèmes liés aux pics de coûts, au volume de télémétrie, à l’échantillonnage qui ne fonctionne pas, aux limites de données, à l’ingestion élevée ou à la facturation inattendue. Pour commencer, consultez Résoudre les problèmes d’ingestion de données élevées dans Application Insights.
Pour définir le plan tarifaire, exécutez l’une des commandes Azure CLI suivantes dans votre terminal et remplacez les espaces réservés <log-analytics-workspace-name>, <azure-region-name>et (le cas échéant) <capacity-reservation-in-gb> par vos valeurs spécifiques :
Paiement à l’utilisation
az monitor log-analytics workspace update --resource-group <resource-group-name> --workspace-name <log-analytics-workspace-name> --set PerGB2018
Niveau d’engagement
az monitor log-analytics workspace update --resource-group <resource-group-name> --workspace-name <log-analytics-workspace-name> --set CapacityReservation --level <capacity-reservation-in-gb>
Pour plus d’informations sur la az monitor log-analytics workspace update commande, consultez la documentation Azure CLI.
Pour définir le plan tarifaire, exécutez l’une des commandes Azure PowerShell suivantes dans votre terminal et remplacez les espaces réservés <log-analytics-workspace-name>, <azure-region-name>et (le cas échéant) <capacity-reservation-in-gb> par vos valeurs spécifiques :
Paiement à l’utilisation
Set-AzOperationalInsightsWorkspace -ResourceGroupName <resource-group-name> -Name <log-analytics-workspace-name> -Sku perb2018
Niveau d’engagement
Set-AzOperationalInsightsWorkspace -ResourceGroupName <resource-group-name> -Name <log-analytics-workspace-name> -Sku capacityreservation -SkuCapacity <capacity-reservation-in-gb>
Pour plus d’informations sur la Set-AzOperationalInsightsWorkspace commande, consultez la documentation Azure PowerShell.
Pour définir le plan tarifaire à l’aide de l’API REST, utilisez l’une des requêtes suivantes et remplacez les espaces réservés <subscription-id>, , <resource-group-name>, <log-analytics-workspace-name><access-token>et (le cas échéant) <capacity-reservation-in-gb> par vos valeurs spécifiques :
Paiement à l’utilisation
PUT https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>/pricingPlans/current?api-version=2017-10-01
Content-Type: application/json
Authorization: Bearer <access-token>
{
"properties": {
"sku": {
"name": "pergb2018"
}
}
}
Niveau d’engagement
PUT https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>/pricingPlans/current?api-version=2017-10-01
Content-Type: application/json
Authorization: Bearer <access-token>
{
"properties": {
"sku": {
"name": "capacityreservation",
"capacityReservationLevel": <capacity-reservation-in-gb>
}
}
}
Pour plus d’informations sur la définition du plan tarifaire à l’aide de l’API REST, consultez la documentation de l’API REST.
Pour définir le plan tarifaire à l’aide de Bicep, collez le code suivant dans votre modèle et remplacez les espaces réservés <log-analytics-workspace-name>, <azure-region-name>et pour le niveau d’engagement également <capacity-reservation-in-gb> par vos valeurs spécifiques :
Paiement à l’utilisation
param workspaceName string = '<log-analytics-workspace-name>'
param workspaceRegion string = '<azure-region-name>'
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2020-08-01' = {
name: workspaceName
location: workspaceRegion
properties: {
sku: {
name: 'pergb2018'
}
}
}
Niveau d’engagement
param workspaceName string = '<log-analytics-workspace-name>'
param workspaceRegion string = '<azure-region-name>'
param capacityReservationLevel int = '<capacity-reservation-in-gb>'
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2020-08-01' = {
name: workspaceName
location: workspaceRegion
properties: {
sku: {
name: 'capacityreservation'
capacityReservationLevel: capacityReservationLevel
}
}
}
Pour plus d’informations sur la mise à jour de la ressource à l’aide Microsoft.OperationalInsights/workspaces de Bicep, consultez la documentation des modèles.
Pour définir le plan tarifaire à l’aide d’un modèle ARM, collez le code suivant dans votre modèle et remplacez les espaces réservés <log-analytics-workspace-name>, <azure-region-name>et pour le niveau d’engagement également <capacity-reservation-in-gb> par vos valeurs spécifiques :
Paiement à l’utilisation
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"workspaceName": {
"type": "string",
"defaultValue": "<log-analytics-workspace-name>"
},
"workspaceRegion": {
"type": "string",
"defaultValue": "<azure-region-name>"
}
},
"resources": [
{
"name": "[parameters('workspaceName')]",
"type": "Microsoft.OperationalInsights/workspaces",
"apiVersion": "2020-08-01",
"location": "[parameters('workspaceRegion')]",
"properties": {
"sku": {
"name": "pergb2018"
}
}
}
]
}
Niveau d’engagement
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"workspaceName": {
"type": "string",
"defaultValue": "<log-analytics-workspace-name>"
},
"workspaceRegion": {
"type": "string",
"defaultValue": "<azure-region-name>"
},
"capacityReservationLevel": {
"type": "int",
"defaultValue": <capacity-reservation-in-gb>
}
},
"resources": [
{
"name": "[parameters('workspaceName')]",
"type": "Microsoft.OperationalInsights/workspaces",
"apiVersion": "2020-08-01",
"location": "[parameters('workspaceRegion')]",
"properties": {
"sku": {
"name": "capacityreservation",
"capacityReservationLevel": "[parameters('capacityReservationLevel')]"
}
}
}
]
}
Pour plus d’informations sur la mise à jour de la ressource à l’aide Microsoft.OperationalInsights/workspaces d’un modèle ARM, consultez la documentation des modèles.
Désactiver le masquage IP
Par défaut, Application Insights ne stocke pas d’adresses IP. Pour savoir comment désactiver le masquage IP, consultez La géolocalisation et la gestion des adresses IP.
Créer des ressources supplémentaires
Création d'un test de disponibilité
Pour créer un test de disponibilité standard avec les paramètres par défaut, exécutez la commande Azure CLI suivante dans votre terminal et remplacez les espaces réservés <resource-group-name>, , <azure-region-name>, <web-test-name>, <url>, <subscription-id>et <application-insights-resource-name> par vos valeurs spécifiques :
az monitor app-insights web-test create --resource-group <resource-group-name> \
--location <azure-region-name> \
--web-test-kind standard \
--name <web-test-name> \
--defined-web-test-name <web-test-name> \
--request-url <url> \
--retry-enabled true \
--ssl-check true \
--ssl-lifetime-check 7 \
--frequency 300 \
--locations Id="us-ca-sjc-azr" \
--locations Id="apac-sg-sin-azr" \
--locations Id="us-il-ch1-azr" \
--locations Id="us-va-ash-azr" \
--locations Id="emea-au-syd-edge" \
--http-verb GET \
--timeout 120 \
--expected-status-code 200 \
--enabled true \
--tags hidden-link:/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>=Resource
Pour plus d’informations sur la az monitor app-insights web-test create commande, consultez la documentation Azure CLI.
Remarque
La région de test web (-location) est différente de l’emplacement géographique (-locationsnotez la forme plurielle) dont plusieurs peuvent être sélectionnés. Il -location fait référence à la région Azure où le test web est créé et hébergé, tandis qu’il -locations fait référence à l’emplacement géographique ou aux emplacements à partir desquels le test web est exécuté. Pour obtenir la liste complète de tous les emplacements géographiques, consultez les tests de disponibilité d’Application Insights.
Pour créer un test de disponibilité standard avec les paramètres par défaut, exécutez la commande Azure PowerShell suivante dans votre terminal et remplacez les espaces réservés <resource-group-name>, , <azure-region-name>, <web-test-name>, <url>, <subscription-id>et <application-insights-resource-name> par vos valeurs spécifiques :
$geoLocation = @()
$geoLocation += New-AzApplicationInsightsWebTestGeolocationObject -Location "us-ca-sjc-azr"
$geoLocation += New-AzApplicationInsightsWebTestGeolocationObject -Location "apac-sg-sin-azr"
$geoLocation += New-AzApplicationInsightsWebTestGeolocationObject -Location "us-il-ch1-azr"
$geoLocation += New-AzApplicationInsightsWebTestGeolocationObject -Location "us-va-ash-azr"
$geoLocation += New-AzApplicationInsightsWebTestGeolocationObject -Location "emea-au-syd-edge"
New-AzApplicationInsightsWebTest -ResourceGroupName <resource-group-name> `
-Location <azure-region-name> `
-Name <web-test-name> `
-TestName <web-test-name> `
-Kind standard `
-RequestUrl <url> `
-RetryEnabled `
-RuleSslCheck `
-RuleSslCertRemainingLifetimeCheck 7 `
-Frequency 300 `
-GeoLocation $geoLocation `
-RequestHttpVerb GET `
-Timeout 120 `
-RuleExpectedHttpStatusCode 200 `
-Enabled `
-Tag @{"hidden-link:/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>" = "Resource"}
Pour plus d’informations sur la New-AzApplicationInsightsWebTest commande, consultez la documentation Azure PowerShell.
Remarque
La région de test web (-Location) est différente de l’emplacement géographique (-GeoLocation) dont plusieurs peuvent être sélectionnés.
-Location fait référence à la région Azure où le test web est créé et hébergé, tandis que -GeoLocation fait référence à l’emplacement géographique ou aux emplacements à partir desquels le test web est exécuté. Pour obtenir la liste complète de tous les emplacements géographiques, consultez les tests de disponibilité d’Application Insights.
Pour créer un test de disponibilité standard avec des paramètres par défaut à l’aide de l’API REST, utilisez la requête suivante et remplacez les espaces réservés <subscription-id>, , <resource-group-name>, <application-insights-resource-name>, <web-test-name>, <access-token>, <azure-region-name>et <url> par vos valeurs spécifiques :
PUT https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>/webtests/<web-test-name>?api-version=2021-08-01
Content-Type: application/json
Authorization: Bearer <access-token>
{
"location": "<azure-region-name>",
"properties": {
"Name": "<web-test-name>",
"SyntheticMonitorId": "<web-test-name>",
"Enabled": true,
"Frequency": 300,
"Timeout": 120,
"Kind": "standard",
"RetryEnabled": true,
"Request": {
"RequestUrl": "<url>",
"HttpVerb": "GET"
},
"ValidationRules": {
"ExpectedHttpStatusCode": 200,
"SslCheck": true,
"SslCertRemainingLifetimeCheck": 7
},
"Locations": [
{
"Id": "us-ca-sjc-azr"
},
{
"Id": "apac-sg-sin-azr"
},
{
"Id": "us-il-ch1-azr"
},
{
"Id": "us-va-ash-azr"
},
{
"Id": "emea-au-syd-edge"
}
]
},
"Tags": {
"hidden-link:/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>": "Resource"
}
}
Remarque
La région de test web (-location) est différente de l’emplacement géographique (-Locationsnotez la forme plurielle) dont plusieurs peuvent être sélectionnés.
-location fait référence à la région Azure où le test web est créé et hébergé, tandis que -Locations fait référence à l’emplacement géographique ou aux emplacements à partir desquels le test web est exécuté. Pour obtenir la liste complète de tous les emplacements géographiques, consultez les tests de disponibilité d’Application Insights.
Pour en savoir plus sur la création et la configuration de tests web à l’aide de l’API REST, consultez notre documentation sur l’API REST.
Pour créer un test de disponibilité standard avec des paramètres par défaut à l’aide de Bicep, ajoutez le code suivant à votre modèle et remplacez les espaces réservés <web-test-name>, , <azure-region-name>, <subscription-id>, <resource-group-name>, <application-insights-resource-name>et <url> par vos valeurs spécifiques :
resource webTest 'microsoft.insights/webtests@2022-06-15' = {
name: '<web-test-name>'
location: '<azure-region-name>'
tags: {
'hidden-link:/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>': 'Resource'
}
properties: {
SyntheticMonitorId: '<web-test-name>'
Name: '<web-test-name>'
Enabled: true
Frequency: 300
Timeout: 120
Kind: 'standard'
RetryEnabled: true
Locations: [
{
Id: 'us-ca-sjc-azr'
}
{
Id: 'apac-sg-sin-azr'
}
{
Id: 'us-il-ch1-azr'
}
{
Id: 'us-va-ash-azr'
}
{
Id: 'emea-au-syd-edge'
}
]
Request: {
RequestUrl: '<url>'
HttpVerb: 'GET'
}
ValidationRules: {
ExpectedHttpStatusCode: 200
SSLCheck: true
SSLCertRemainingLifetimeCheck: 7
}
}
}
Remarque
La région de test web (location) est différente de l’emplacement géographique (Locations) dont plusieurs peuvent être sélectionnés.
location fait référence à la région Azure où le test web est créé et hébergé, tandis que Locations fait référence à l’emplacement géographique ou aux emplacements à partir desquels le test web est exécuté. Pour obtenir la liste complète de tous les emplacements géographiques, consultez les tests de disponibilité d’Application Insights.
Pour plus d’informations sur la création de tests de disponibilité à l’aide de Bicep, consultez webtests Microsoft.Insights.
Pour créer un test de disponibilité standard avec des paramètres par défaut à l’aide d’un modèle ARM, ajoutez le code suivant à votre modèle et remplacez les espaces réservés <web-test-name>, , <azure-region-name>, <subscription-id>, <resource-group-name><application-insights-resource-name>et <url> par vos valeurs spécifiques :
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "microsoft.insights/webtests",
"apiVersion": "2022-06-15",
"name": "<web-test-name>",
"location": "<azure-region-name>",
"tags": {
"hidden-link:/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>": "Resource"
},
"properties": {
"SyntheticMonitorId": "<web-test-name>",
"Name": "<web-test-name>",
"Enabled": true,
"Frequency": 300,
"Timeout": 120,
"Kind": "standard",
"RetryEnabled": true,
"Locations": [
{
"Id": "us-ca-sjc-azr"
},
{
"Id": "apac-sg-sin-azr"
},
{
"Id": "us-il-ch1-azr"
},
{
"Id": "us-va-ash-azr"
},
{
"Id": "emea-au-syd-edge"
}
],
"Request": {
"RequestUrl": "<url>",
"HttpVerb": "GET"
},
"ValidationRules": {
"ExpectedHttpStatusCode": 200,
"SSLCheck": true,
"SSLCertRemainingLifetimeCheck": 7
}
}
}
]
}
Remarque
La région de test web (location) est différente de l’emplacement géographique (Locations) dont plusieurs peuvent être sélectionnés.
location fait référence à la région Azure où le test web est créé et hébergé, tandis que Locations fait référence à l’emplacement géographique ou aux emplacements à partir desquels le test web est exécuté. Pour obtenir la liste complète de tous les emplacements géographiques, consultez les tests de disponibilité d’Application Insights.
Pour plus d’informations sur la création de tests de disponibilité à l’aide d’un modèle ARM, consultez webtests Microsoft.Insights.
Ajouter une alerte métrique
Conseil / Astuce
Chaque ressource Application Insights est accompagnée de métriques prêtes à l’emploi. Si des composants distincts signalent à la même ressource Application Insights, il risque d’être inutile d’alerter sur ces métriques.
Pour obtenir la liste des différents exemples d’appels d’API REST pour créer une alerte de métrique, consultez la documentation de l’API REST.
Pour automatiser la création d’alertes de métrique, consultez l’article Modèle d’alertes de métrique.
Créer d’autres ressources Application Insights
Combien de ressources Application Insights déployer ?
Lorsque vous développez la prochaine version d’une application web, vous ne souhaitez pas mélanger les télémétries Application Insights de la nouvelle version et de la version déjà publiée.
Pour éviter toute confusion, envoyez la télémétrie des différentes phases de développement à des ressources Application Insights séparées, avec des chaînes de connexion distinctes.
Si votre système est une instance d’Azure Cloud Services, il existe une autre méthode pour définir des chaînes de connexion distinctes.
Quand utiliser une seule ressource Application Insights
Utiliser une ressource Application Insights unique :
- Rationalisation de la gestion DevOps/ITOps pour les applications déployées ensemble. Celles-ci sont généralement développées et gérées par la même équipe.
- Centralisation des indicateurs de performance clés, tels que les temps de réponse et les taux d'échec, dans un tableau de bord par défaut. Segmentez par nom de rôle dans l'Explorateur de métriques si nécessaire.
- Lorsqu'il n'est pas nécessaire de gérer différents contrôles d'accès en fonction du rôle intégré à Azure entre les composants d'application.
- Lorsque des critères d'alerte identiques, des exportations continues et la gestion des quotas/facturation entre les composants suffisent.
- Lorsqu'il est acceptable qu'une clé API accède aux données de tous les composants de manière égale, et que 10 clés API répondent aux besoins de tous les composants.
- Lorsque les mêmes paramètres de détection intelligente et d'intégration d'élément de travail conviennent à tous les rôles.
Remarque
Si vous souhaitez fusionner plusieurs ressources Application Insights, vous pouvez faire pointer vos composants d’application existants vers une nouvelle ressource Application Insights fusionnée. Les données de télémétrie stockées dans votre ancienne ressource ne sont pas transférées vers la nouvelle ressource. Supprimez l’ancienne ressource uniquement lorsque vous avez suffisamment de données de télémétrie dans la nouvelle ressource pour la continuité de l’activité.
Autres considérations
Pour activer les expériences du portail, ajoutez un code personnalisé pour attribuer des valeurs significatives à l'attribut Cloud_RoleName. Sans ces valeurs, les composantes du portail ne fonctionnent pas.
Pour les applications Azure Service Fabric et les services cloud classiques, le Kit de développement logiciel (SDK) configure automatiquement les services en lecture dans un environnement de rôle intégré à Azure. Pour les autres types d'applications, vous devez généralement les définir explicitement.
Les métriques actives ne peuvent pas fractionner les données par nom de rôle.
Suivi des versions et des publications
Lorsque vous publiez une nouvelle version de votre application, vous souhaitez pouvoir séparer les données de télémétrie de différentes builds. Vous pouvez définir la propriété Version de l’application pour filtrer les résultats de la recherche et de l’Explorateur de métriques .
Il existe plusieurs méthodes pour définir la propriété Version de l’application.
Option 1 : Définir la version directement
Ajoutez la ligne telemetryClient.Context.Component.Version = typeof(MyProject.MyClass).Assembly.GetName().Version; au code d’initialisation de votre application.
Pour vous assurer que toutes les TelemetryClient instances sont définies de manière cohérente, encapsulez cette ligne dans un initialiseur de télémétrie.
Option 2 : Définissez la version dans BuildInfo.config (ASP.NET uniquement)
Le module web Application Insights récupère la version à partir du BuildLabel nœud. Incluez ce fichier dans votre projet et n’oubliez pas de définir la propriété Toujours copier dans l’Explorateur de solutions.
<?xml version="1.0" encoding="utf-8"?>
<DeploymentEvent xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/VisualStudio/DeploymentEvent/2013/06">
<ProjectName>AppVersionExpt</ProjectName>
<Build type="MSBuild">
<MSBuild>
<BuildLabel kind="label">1.0.0.2</BuildLabel>
</MSBuild>
</Build>
</DeploymentEvent>
Générez BuildInfo.config automatiquement dans le moteur de build Microsoft. Ajoutez les lignes suivantes à votre .csproj fichier :
<PropertyGroup>
<GenerateBuildInfoConfigFile>true</GenerateBuildInfoConfigFile>
<IncludeServerNameInBuildInfo>true</IncludeServerNameInBuildInfo>
</PropertyGroup>
Cette étape génère un fichier appelé Votre_nom_de_projet.BuildInfo.config. Le processus de publication le renomme BuildInfo.config.
L'étiquette de compilation contient un espace réservé (*AutoGen_...*) lorsque vous compilez avec Visual Studio. Lorsqu’il est généré avec le Microsoft Build Engine, l’espace réservé est rempli avec le numéro de version correct.
Pour permettre à Microsoft Build Engine de générer des numéros de version, définissez la version comme 1.0.* dans AssemblyReference.cs.
Notes de version
Si vous utilisez Azure DevOps, vous pouvez obtenir un marqueur d’annotation ajouté à vos graphiques lorsque vous publiez une nouvelle version.
Automatiser le processus de création de ressources
Le processus de création de ressources peut être automatisé à l’aide de modèles Bicep ou JSON avec Azure Resource Manager. Vous pouvez empaqueter plusieurs ressources ensemble pour les créer dans un déploiement. Par exemple, vous pouvez créer une ressource Application Insights avec des tests de disponibilité, des alertes de métrique et un paramètre de diagnostic pour envoyer des données de télémétrie à un compte de stockage Azure.
Générer un modèle dans le portail Azure
Vous pouvez générer un modèle à partir de ressources existantes.
Application Insights uniquement
- Accédez à la ressource Application Insights dans le portail Azure.
- Ouvrez le modèle d’exportation répertorié sous Automation dans la barre de navigation de gauche.
- (Facultatif) : Pour utiliser vos propres paramètres, décochez Inclure les paramètres.
- Téléchargez le fichier de modèle ou déployez-le directement dans le portail Azure.
Plusieurs ressources
- Accédez au groupe de ressources de votre ressource Application Insights.
- Dans le volet Vue d’ensemble , marquez toutes les ressources que vous souhaitez inclure dans le modèle, puis sélectionnez Exporter le modèle dans la barre de navigation supérieure.
- (Facultatif) : Pour utiliser vos propres paramètres, décochez Inclure les paramètres.
- Téléchargez le fichier de modèle ou déployez-le directement dans le portail Azure.
Créer un modèle à partir de zéro
Pour savoir comment créer un modèle ARM à partir de zéro, consultez notre documentation de modèle ARM qui inclut des didacticiels pour créer un modèle, ajouter des ressources, ajouter des paramètres, etc.
Les propriétés disponibles pour Application Insights, les tests de disponibilité, les alertes de métriques, les paramètres de diagnostic et d’autres ressources sont répertoriées dans la documentation de référence de nos ressources Azure sous le nœud Référence>Insights.
Conseil / Astuce
Vous pouvez également utiliser des modèles de démarrage rapide, disponibles en bas de chaque page de documentation de référence sur les ressources Azure liées dans cette section. Pour savoir comment utiliser des modèles, consultez Tutoriel : Utiliser des modèles de démarrage rapide Azure.
Étapes suivantes