Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Automatische instrumentatie, ook wel runtimebewaking genoemd, is de eenvoudigste manier om Application Insights in te schakelen voor Azure-app Service zonder dat hiervoor codewijzigingen of geavanceerde configuraties nodig zijn. Evalueer op basis van uw specifieke scenario of u geavanceerdere bewaking nodig hebt via handmatige instrumentatie.
Notitie
Op 31 maart 2025 eindigt de ondersteuning voor opname van instrumentatiesleutels. Opname van instrumentatiesleutels blijft werken, maar we bieden geen updates of ondersteuning meer voor de functie. Overgang naar verbindingsreeksen om te profiteren van nieuwe mogelijkheden.
Application Insights inschakelen
Belangrijk
Als zowel automatische instrumentatiebewaking als handmatige SDK-instrumentatie worden gedetecteerd, worden alleen de handmatige instrumentatie-instellingen gehonoreerd. Deze rangschikking voorkomt dat dubbele gegevens worden verzonden. Zie Problemen met Application Insights-integratie met Azure App Service oplossen voor meer informatie.
Notitie
- Alleen LTS-releases (Long Term Support) van .NET Core worden ondersteund.
- Het bijsnijden van zelfstandige implementaties wordt niet ondersteund. Gebruik in plaats daarvan handmatige instrumentatie .
Automatische instrumentatie in Azure Portal
Selecteer Application Insights in het linkernavigatiemenu van uw app-service en selecteer vervolgens Inschakelen.
Maak een nieuwe resource of selecteer een bestaande Application Insights-resource voor deze toepassing.
Notitie
Wanneer u OK selecteert om een nieuwe resource te maken, wordt u gevraagd bewakingsinstellingen toe te passen. Als u Continue selecteert, wordt uw nieuwe Application Insights-resource gekoppeld aan uw app-service. Uw app-service wordt vervolgens opnieuw opgestart.
Nadat u hebt opgegeven welke resource u wilt gebruiken, kunt u kiezen hoe Application Insights gegevens per platform voor uw toepassing moet verzamelen. ASP.NET Opties voor kernverzameling worden aanbevolen of uitgeschakeld.
De bewakingsextensie/agent handmatig upgraden
Upgrade uitvoeren van versie 2.8.9 en hoger
Upgraden van versie 2.8.9 gebeurt automatisch, zonder extra acties. De nieuwe bewakingsbits worden in de achtergrond afgeleverd aan de doel-app-service en worden opgehaald wanneer de toepassing opnieuw wordt gestart.
Als u wilt controleren welke versie van de extensie u gebruikt, gaat u naar https://yoursitename.scm.azurewebsites.net/ApplicationInsights.
Upgrade uitvoeren van versies 1.0.0 - 2.6.5
Vanaf versie 2.8.9 wordt de vooraf geïnstalleerde site-extensie gebruikt. Als u een eerdere versie gebruikt, kunt u op twee manieren bijwerken:
Upgrade uitvoeren via Azure Portal: Zelfs als u de Application Insights-extensie voor App Service hebt geïnstalleerd, wordt in de gebruikersinterface alleen de knop Inschakelen weergegeven. Achter de schermen wordt de oude privésite-extensie verwijderd.
Voer een upgrade uit via PowerShell:
- Stel de toepassingsinstellingen in om de vooraf geïnstalleerde site-extensie
ApplicationInsightsAgentin te schakelen. Zie Inschakelen via PowerShell voor meer informatie. - Verwijder handmatig de persoonlijke site-extensie met de naam Application Insights-extensie voor Azure-app Service.
- Stel de toepassingsinstellingen in om de vooraf geïnstalleerde site-extensie
Als de upgrade wordt uitgevoerd vanaf een versie vóór 2.5.1, controleert u of de ApplicationInsights DLL's uit de bin-map van de applicatie zijn verwijderd. Zie Problemen met Application Insights-integratie met Azure App Service oplossen voor meer informatie.
De bewakingsextensie/agent configureren
We bieden momenteel geen opties voor het configureren van de bewakingsextensie voor ASP.NET Core.
Bewaking aan clientzijde inschakelen
Bewaking aan de clientzijde is standaard ingeschakeld voor ASP.NET Core-apps met aanbevolen verzameling, ongeacht of de app-instelling APPINSIGHTS_JAVASCRIPT_ENABLED aanwezig is.
Als u bewaking aan de clientzijde wilt uitschakelen:
Selecteer Instellingen>Configuratie.
Maak onder Toepassingsinstellingen een nieuwe toepassingsinstelling met de volgende informatie:
-
Naam:
APPINSIGHTS_JAVASCRIPT_ENABLED -
Waarde:
false
-
Naam:
Sla de instellingen op. Start de app opnieuw.
Bewaking automatiseren
Als u telemetrieverzameling met Application Insights wilt inschakelen, moeten alleen de volgende toepassingsinstellingen worden ingesteld:
Definities van toepassingsinstellingen
| Naam van de app-instelling | Definitie | Waarde |
|---|---|---|
| ApplicationInsightsAgent_EXTENSION_VERSION | Belangrijkste extensie, waarmee runtime-bewaking wordt gecontroleerd. |
~2 voor Windows of ~3 voor Linux |
| XDT_MicrosoftApplicationInsights_Mode | In de standaardmodus zijn alleen essentiële functies ingeschakeld om optimale prestaties te garanderen. |
disabled of recommended. |
| XDT_MicrosoftApplicationInsights_PreemptSdk | Alleen voor ASP.NET Core-apps. Hiermee wordt interoperabiliteit ingeschakeld met de Application Insights SDK. Laadt de extensie naast de SDK en gebruikt deze om telemetrie te verzenden. (Hiermee schakelt u de Application Insights SDK uit.) | 1 |
App Service-toepassingsinstellingen met Azure Resource Manager
Toepassingsinstellingen voor Azure-app Service kunnen worden beheerd en geconfigureerd met Azure Resource Manager-sjablonen. U kunt deze methode gebruiken wanneer u nieuwe App Service-resources implementeert met Resource Manager-automatisering of de instellingen van bestaande resources wijzigt.
De basisstructuur van de JSON voor toepassingsinstellingen voor een App Service-resource:
"resources": [
{
"name": "appsettings",
"type": "config",
"apiVersion": "2015-08-01",
"dependsOn": [
"[resourceId('Microsoft.Web/sites', variables('webSiteName'))]"
],
"tags": {
"displayName": "Application Insights Settings"
},
"properties": {
"key1": "value1",
"key2": "value2"
}
}
]
Het maken van een Application Insights-resource automatiseren en een koppeling maken naar uw zojuist gemaakte App Service-resource
Als u een Resource Manager-sjabloon wilt maken met de standaardinstellingen voor Application Insights, begint u het proces alsof u een nieuwe web-app wilt maken waarvoor Application Insights is ingeschakeld.
Maak in Azure Portal een nieuwe web-app-resource met de gewenste informatie. Schakel Application Insights in op het tabblad Bewaken en beveiligen .
Ga naar Beoordelen en maken en selecteer vervolgens Een sjabloon voor automatisering downloaden. Met deze optie wordt de meest recente Resource Manager-sjabloon gegenereerd met alle vereiste instellingen geconfigureerd.
Notitie
De volgende voorbeeldsjabloon is bedoeld voor een .NET 8-toepassing (LTS) die wordt uitgevoerd in Windows. Het gebruikt de placeholders my-monitored-web-app voor de naam van de toepassing en aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e voor de abonnements-ID.
Het is niet raadzaam om deze rechtstreeks te kopiëren en te gebruiken. Genereer in plaats daarvan uw eigen sjabloon op basis van de bovenstaande instructies.
Uitvouwen om voorbeeldsjabloon weer te geven
{
"$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"subscriptionId": {
"type": "string"
},
"resourceGroupName": {
"type": "string"
},
"name": {
"type": "string"
},
"location": {
"type": "string"
},
"hostingPlanName": {
"type": "string"
},
"serverFarmResourceGroup": {
"type": "string"
},
"alwaysOn": {
"type": "bool"
},
"ftpsState": {
"type": "string"
},
"autoGeneratedDomainNameLabelScope": {
"type": "string"
},
"sku": {
"type": "string"
},
"skuCode": {
"type": "string"
},
"workerSize": {
"type": "string"
},
"workerSizeId": {
"type": "string"
},
"numberOfWorkers": {
"type": "string"
},
"currentStack": {
"type": "string"
},
"phpVersion": {
"type": "string"
},
"netFrameworkVersion": {
"type": "string"
}
},
"variables": {},
"resources": [
{
"apiVersion": "2022-03-01",
"name": "[parameters('name')]",
"type": "Microsoft.Web/sites",
"location": "[parameters('location')]",
"tags": null,
"dependsOn": [
"microsoft.insights/components/my-monitored-web-app",
"[concat('Microsoft.Web/serverfarms/', parameters('hostingPlanName'))]"
],
"properties": {
"name": "[parameters('name')]",
"siteConfig": {
"appSettings": [
{
"name": "APPLICATIONINSIGHTS_CONNECTION_STRING",
"value": "[reference('microsoft.insights/components/my-monitored-web-app', '2015-05-01').ConnectionString]"
},
{
"name": "ApplicationInsightsAgent_EXTENSION_VERSION",
"value": "~2"
},
{
"name": "XDT_MicrosoftApplicationInsights_Mode",
"value": "default"
}
],
"metadata": [
{
"name": "CURRENT_STACK",
"value": "[parameters('currentStack')]"
}
],
"phpVersion": "[parameters('phpVersion')]",
"netFrameworkVersion": "[parameters('netFrameworkVersion')]",
"alwaysOn": "[parameters('alwaysOn')]",
"ftpsState": "[parameters('ftpsState')]"
},
"serverFarmId": "[concat('/subscriptions/', parameters('subscriptionId'),'/resourcegroups/', parameters('serverFarmResourceGroup'), '/providers/Microsoft.Web/serverfarms/', parameters('hostingPlanName'))]",
"clientAffinityEnabled": true,
"virtualNetworkSubnetId": null,
"httpsOnly": true,
"publicNetworkAccess": "Enabled",
"autoGeneratedDomainNameLabelScope": "[parameters('autoGeneratedDomainNameLabelScope')]"
},
"resources": [
{
"type": "Microsoft.Web/sites/basicPublishingCredentialsPolicies",
"apiVersion": "2022-09-01",
"name": "[concat(parameters('name'), '/scm')]",
"properties": {
"allow": true
},
"dependsOn": [
"[resourceId('Microsoft.Web/Sites', parameters('name'))]"
]
},
{
"type": "Microsoft.Web/sites/basicPublishingCredentialsPolicies",
"apiVersion": "2022-09-01",
"name": "[concat(parameters('name'), '/ftp')]",
"properties": {
"allow": true
},
"dependsOn": [
"[resourceId('Microsoft.Web/Sites', parameters('name'))]"
]
}
]
},
{
"apiVersion": "2018-11-01",
"name": "[parameters('hostingPlanName')]",
"type": "Microsoft.Web/serverfarms",
"location": "[parameters('location')]",
"kind": "",
"tags": null,
"dependsOn": [],
"properties": {
"name": "[parameters('hostingPlanName')]",
"workerSize": "[parameters('workerSize')]",
"workerSizeId": "[parameters('workerSizeId')]",
"numberOfWorkers": "[parameters('numberOfWorkers')]",
"zoneRedundant": false
},
"sku": {
"Tier": "[parameters('sku')]",
"Name": "[parameters('skuCode')]"
}
},
{
"apiVersion": "2020-02-02-preview",
"name": "my-monitored-web-app",
"type": "microsoft.insights/components",
"location": "centralus",
"tags": null,
"dependsOn": [
"newWorkspaceTemplate"
],
"properties": {
"ApplicationId": "[parameters('name')]",
"Request_Source": "IbizaWebAppExtensionCreate",
"Flow_Type": "Redfield",
"Application_Type": "web",
"WorkspaceResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/DefaultResourceGroup-CUS/providers/Microsoft.OperationalInsights/workspaces/DefaultWorkspace-aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e-CUS"
}
},
{
"type": "Microsoft.Resources/deployments",
"apiVersion": "2021-04-01",
"name": "newWorkspaceTemplate",
"resourceGroup": "DefaultResourceGroup-CUS",
"subscriptionId": "[parameters('subscriptionId')]",
"properties": {
"mode": "Incremental",
"template": {
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {},
"variables": {},
"resources": [
{
"apiVersion": "2020-08-01",
"name": "DefaultWorkspace-aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e-CUS",
"type": "Microsoft.OperationalInsights/workspaces",
"location": "centralus",
"properties": {}
}
]
}
}
}
]
}
Inschakelen via PowerShell
Als u de toepassingscontrole via PowerShell wilt inschakelen, moeten alleen de onderliggende toepassingsinstellingen worden gewijzigd. In het volgende voorbeeld wordt toepassingsbewaking ingeschakeld voor een website die in de resourcegroep my-monitored-web-appwordt aangeroepenmy-resource-group. Hiermee configureert u gegevens die naar de InstrumentationKey=012345678-abcd-ef01-2345-6789abcd verbindingsreeks moeten worden verzonden.
Notitie
Het wordt aanbevolen de Azure Az PowerShell-module te gebruiken om te communiceren met Azure. Zie Azure PowerShell installeren om aan de slag te gaan. Raadpleeg Azure PowerShell migreren van AzureRM naar Az om te leren hoe u naar de Azure PowerShell-module migreert.
Notitie
Voor Windows stelt u ApplicationInsightsAgent_EXTENSION_VERSION in op ~2.
Voor Linux stelt u ApplicationInsightsAgent_EXTENSION_VERSION in op ~3.
$app = Get-AzWebApp -ResourceGroupName "my-resource-group" -Name "my-monitored-web-app" -ErrorAction Stop
$newAppSettings = @{} # Case-insensitive hash map
$app.SiteConfig.AppSettings | %{$newAppSettings[$_.Name] = $_.Value} # Preserve non-Application-Insights application settings.
$newAppSettings["APPLICATIONINSIGHTS_CONNECTION_STRING"] = "InstrumentationKey=aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"; # Set the Application Insights connection string
$newAppSettings["ApplicationInsightsAgent_EXTENSION_VERSION"] = "~3"; # Enable the ApplicationInsightsAgent.
$app = Set-AzWebApp -AppSettings $newAppSettings -ResourceGroupName $app.ResourceGroup -Name $app.Name -ErrorAction Stop
Probleemoplossing
Zie het speciale artikel over probleemoplossing.
Volgende stappen
- Raadpleeg de veelgestelde vragen (FAQ): Monitoring in Azure App Service voor .NET, Node.js, Python en Java-toepassingen FAQ.
- Schakel .NET Profiler in voor Azure-app Service-apps in uw live-app.
- Schakel diagnostische Azure-gegevens in om te verzenden naar Application Insights.
- Controleer metrische gegevens voor servicestatus om ervoor te zorgen dat de service beschikbaar is en reageert.
- Ontvang waarschuwingsmeldingen wanneer er operationele gebeurtenissen plaatsvinden of metrische gegevens een drempelwaarde overschrijden.
- Stel beschikbaarheidstests in voor uw toepassing.