Déployer Azure Monitor Application Insights Agent sur des machines virtuelles Azure et des groupes de machines virtuelles identiques AzureDeploy the Azure Monitor Application Insights Agent on Azure virtual machines and Azure virtual machine scale sets

Désormais, l’activation de la supervision pour vos applications web .NET qui s’exécutent sur des machines virtuelles Azure et des groupes de machines virtuelles identiques Azure est plus facile que jamais.Enabling monitoring on your .NET based web applications running on Azure virtual machines and Azure virtual machine scale sets is now easier than ever. Bénéficiez de tous les avantages de l’utilisation de Application Insights sans modifier votre code.Get all the benefits of using Application Insights without modifying your code.

Cet article vous explique comment activer la supervision Application Insights à l’aide du module Application Insights Agent. De plus, il fournit une aide préliminaire à l’automatisation des déploiements à grande échelle.This article walks you through enabling Application Insights monitoring using the Application Insights Agent and provides preliminary guidance for automating the process for large-scale deployments.

Important

Azure Application Insights Agent pour .NET est en préversion publique.Azure Application Insights Agent for .NET is currently in public preview. Cette préversion est fournie sans contrat de niveau de service et n’est pas recommandée pour les charges de travail de production.This preview version is provided without a service-level agreement, and we don't recommend it for production workloads. Certaines fonctionnalités peuvent être limitées ou n’être pas prises en charge.Some features might not be supported, and some might have constrained capabilities. Pour plus d’informations, consultez Conditions d’Utilisation Supplémentaires relatives aux Évaluations Microsoft Azure.For more information, see Supplemental Terms of Use for Microsoft Azure Previews.

Activer Application InsightsEnable Application Insights

Il existe deux manières d’activer la supervision des applications pour les applications hébergées sur des machines virtuelles Azure et des groupes de machines virtuelles identiques Azure :There are two ways to enable application monitoring for Azure virtual machines and Azure virtual machine scale sets hosted applications:

  • Sans code via Application Insights AgentCodeless via Application Insights Agent

    • Cette méthode est la plus facile à activer, car elle ne nécessite aucune configuration avancée.This method is the easiest to enable, and no advanced configuration is required. Elle est souvent appelée supervision « runtime ».It is often referred to as "runtime" monitoring.

    • Pour les machines virtuelles Azure et les groupes de machines virtuelles identiques Azure, nous recommandons au minimum d’activer ce niveau de supervision.For Azure virtual machines and Azure virtual machine scale sets we recommend at a minimum enabling this level of monitoring. Après cela, en fonction de votre scénario spécifique, vous pouvez évaluer si une instrumentation manuelle est nécessaire.After that, based on your specific scenario, you can evaluate whether manual instrumentation is needed.

    • Le module Application Insights Agent collecte automatiquement les mêmes signaux de dépendance prêts à l’emploi que le kit SDK .NET.The Application Insights Agent auto-collects the same dependency signals out-of-the-box as the .NET SDK. Pour en savoir plus, consultez Collecte automatique de dépendance.See Dependency auto-collection to learn more.

      Notes

      Actuellement, seules les applications hébergées sur .NET IIS sont prises en charge.Currently only .Net IIS-hosted applications are supported. Utilisez un kit SDK pour instrumenter les applications ASP.NET Core, Java et Node.js hébergées sur des machines virtuelles Azure et des groupes de machines virtuelles identiques Azure.Use an SDK to instrument ASP.NET Core, Java, and Node.js applications hosted on an Azure virtual machines and virtual machine scale sets.

  • Avec du code via le kit SDKCode-based via SDK

Notes

Si les deux méthodes, la supervision basée sur un agent et l’instrumentation manuelle basée sur un SDK, sont détectées, seuls les paramètres de l’instrumentation manuelle sont appliqués.If both agent based monitoring and manual SDK based instrumentation is detected only the manual instrumentation settings will be honored. Cela évite que des données en double soient envoyées.This is to prevent duplicate data from being sent. Pour en savoir plus, consultez la section de résolution des problèmes ci-après.To learn more about this check out the troubleshooting section below.

Gérer Application Insights Agent pour les applications .NET sur des machines virtuelles Azure à l’aide de PowerShellManage Application Insights Agent for .NET applications on Azure virtual machines using PowerShell

Notes

Avant d’installer l’agent Application Insights, vous aurez besoin d’une chaîne de connexion.Before installing the Application Insights Agent, you'll need a connection string. Créez une ressource Application Insights ou copiez la chaîne de connexion à partir d’une ressource Application Insights existante.Create a new Application Insights Resource or copy the connection string from an existing application insights resource.

Notes

Vous découvrez PowerShell ?New to powershell? Consultez le Guide de prise en main.Check out the Get Started Guide.

Installer ou mettre à jour le module Application Insights Agent en tant qu’extension pour des machines virtuelles AzureInstall or update the Application Insights Agent as an extension for Azure virtual machines

$publicCfgJsonString = '
{
  "redfieldConfiguration": {
    "instrumentationKeyMap": {
      "filters": [
        {
          "appFilter": ".*",
          "machineFilter": ".*",
          "virtualPathFilter": ".*",
          "instrumentationSettings" : {
            "connectionString": "InstrumentationKey=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
          }
        }
      ]
    }
  }
}
';
$privateCfgJsonString = '{}';

Set-AzVMExtension -ResourceGroupName "<myVmResourceGroup>" -VMName "<myVmName>" -Location "<myVmLocation>" -Name "ApplicationMonitoring" -Publisher "Microsoft.Azure.Diagnostics" -Type "ApplicationMonitoringWindows" -Version "2.8" -SettingString $publicCfgJsonString -ProtectedSettingString $privateCfgJsonString

Notes

Vous pouvez installer ou mettre à jour le module Application Insights Agent en tant qu’extension sur plusieurs machines virtuelles à grande échelle, à l’aide d’une boucle PowerShell.You may install or update the Application Insights Agent as an extension across multiple Virtual Machines at-scale using a Powershell loop.

Désinstaller l’extension Application Insights Agent d’une machine virtuelle AzureUninstall Application Insights Agent extension from Azure virtual machine

Remove-AzVMExtension -ResourceGroupName "<myVmResourceGroup>" -VMName "<myVmName>" -Name "ApplicationMonitoring"

Interroger l’état de l’extension Application Insights Agent pour une machine virtuelle AzureQuery Application Insights Agent extension status for Azure virtual machine

Get-AzVMExtension -ResourceGroupName "<myVmResourceGroup>" -VMName "<myVmName>" -Name ApplicationMonitoring -Status

Obtenir la liste des extensions installées pour une machine virtuelle AzureGet list of installed extensions for Azure virtual machine

Get-AzResource -ResourceId "/subscriptions/<mySubscriptionId>/resourceGroups/<myVmResourceGroup>/providers/Microsoft.Compute/virtualMachines/<myVmName>/extensions"

# Name              : ApplicationMonitoring
# ResourceGroupName : <myVmResourceGroup>
# ResourceType      : Microsoft.Compute/virtualMachines/extensions
# Location          : southcentralus
# ResourceId        : /subscriptions/<mySubscriptionId>/resourceGroups/<myVmResourceGroup>/providers/Microsoft.Compute/virtualMachines/<myVmName>/extensions/ApplicationMonitoring

Vous pouvez également voir les extensions installées dans le panneau de la machine virtuelle Azure au sein du portail.You may also view installed extensions in the Azure virtual machine blade in the Portal.

Notes

Vérifiez l’installation en cliquant sur Flux de métriques temps réel dans Application Insights Resource associée à la chaîne de connexion que vous avez utilisée pour déployer l’extension de Application Insights Agent.Verify installation by clicking on Live Metrics Stream within the Application Insights Resource associated with the connection string you used to deploy the Application Insights Agent Extension. Si vous envoyez des données provenant de plusieurs machines virtuelles, sélectionnez les machines virtuelles Azure cibles sous Nom du serveur.If you are sending data from multiple Virtual Machines, select the target Azure virtual machines under Server Name. Il peut s’écouler jusqu’à une minute avant le début du transfert des données.It may take up to a minute for data to begin flowing.

Gérer Application Insights Agent pour les applications .NET sur des groupes de machines virtuelles identiques Azure à l’aide de PowerShellManage Application Insights Agent for .NET applications on Azure virtual machine scale sets using powershell

Installer ou mettre à jour le module Application Insights Agent en tant qu’extension pour un groupe de machines virtuelles identiques AzureInstall or update the Application Insights Agent as an extension for Azure virtual machine scale set

$publicCfgHashtable =
@{
  "redfieldConfiguration"= @{
    "instrumentationKeyMap"= @{
      "filters"= @(
        @{
          "appFilter"= ".*";
          "machineFilter"= ".*";
          "virtualPathFilter": ".*",
          "instrumentationSettings" : {
            "connectionString": "InstrumentationKey=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" # Application Insights connection string, create new Application Insights resource if you don't have one. https://ms.portal.azure.com/#blade/HubsExtension/BrowseResourceBlade/resourceType/microsoft.insights%2Fcomponents
          }
        }
      )
    }
  }
};
$privateCfgHashtable = @{};

$vmss = Get-AzVmss -ResourceGroupName "<myResourceGroup>" -VMScaleSetName "<myVmssName>"

Add-AzVmssExtension -VirtualMachineScaleSet $vmss -Name "ApplicationMonitoring" -Publisher "Microsoft.Azure.Diagnostics" -Type "ApplicationMonitoringWindows" -TypeHandlerVersion "2.8" -Setting $publicCfgHashtable -ProtectedSetting $privateCfgHashtable

Update-AzVmss -ResourceGroupName $vmss.ResourceGroupName -Name $vmss.Name -VirtualMachineScaleSet $vmss

# Note: depending on your update policy, you might need to run Update-AzVmssInstance for each instance

Désinstaller l’extension de supervision des applications sur des groupes de machines virtuelles identiques AzureUninstall application monitoring extension from Azure virtual machine scale sets

$vmss = Get-AzVmss -ResourceGroupName "<myResourceGroup>" -VMScaleSetName "<myVmssName>"

Remove-AzVmssExtension -VirtualMachineScaleSet $vmss -Name "ApplicationMonitoring"

Update-AzVmss -ResourceGroupName $vmss.ResourceGroupName -Name $vmss.Name -VirtualMachineScaleSet $vmss

# Note: depending on your update policy, you might need to run Update-AzVmssInstance for each instance

Interroger l’état de l’extension de supervision des applications pour des groupes de machines virtuelles identiques AzureQuery application monitoring extension status for Azure virtual machine scale sets

# Not supported by extensions framework

Obtenir la liste des extensions installées pour des groupes de machines virtuelles identiques AzureGet list of installed extensions for Azure virtual machine scale sets

Get-AzResource -ResourceId /subscriptions/<mySubscriptionId>/resourceGroups/<myResourceGroup>/providers/Microsoft.Compute/virtualMachineScaleSets/<myVmssName>/extensions

# Name              : ApplicationMonitoringWindows
# ResourceGroupName : <myResourceGroup>
# ResourceType      : Microsoft.Compute/virtualMachineScaleSets/extensions
# Location          :
# ResourceId        : /subscriptions/<mySubscriptionId>/resourceGroups/<myResourceGroup>/providers/Microsoft.Compute/virtualMachineScaleSets/<myVmssName>/extensions/ApplicationMonitoringWindows

DépannageTroubleshooting

Vous trouverez des conseils de résolution des problèmes liés à l’extension Application Insights Monitoring Agent pour les applications .NET qui s’exécutent sur des machines virtuelles Azure et des groupes de machines virtuelles identiques Azure.Find troubleshooting tips for Application Insights Monitoring Agent Extension for .NET applications running on Azure virtual machines and virtual machine scale sets.

Notes

Dans la mesure où les applications .NET Core, Java et Node.js sont uniquement prises en charge sur les machines virtuelles Azure et les groupes de machines virtuelles identiques Azure via une instrumentation manuelle basée sur le kit SDK, les étapes ci-dessous ne s’appliquent pas à ces scénarios..NET Core, Java, and Node.js applications are only supported on Azure virtual machines and Azure virtual machine scale sets via manual SDK based instrumentation and therefore the steps below do not apply to these scenarios.

La sortie de l’exécution de l’extension est journalisées dans des fichiers figurant dans les répertoires suivants :Extension execution output is logged to files found in the following directories:

C:\WindowsAzure\Logs\Plugins\Microsoft.Azure.Diagnostics.ApplicationMonitoringWindows\<version>\

Étapes suivantesNext steps