Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az Autoinstrumentation ( más néven futtatókörnyezet monitorozása) a legegyszerűbb módszer az Application Insights azure App Service-hez való engedélyezésére kódmódosítások vagy speciális konfigurációk nélkül. Az adott forgatókönyv alapján értékelje ki, hogy szükség van-e speciálisabb monitorozásra manuális rendszerezéssel.
Feljegyzés
2025. március 31-én megszűnik az eszközkulcsalapú betöltés támogatása. A rendszerállapot-kulcsok betöltése továbbra is működni fog, de a továbbiakban nem biztosítunk frissítéseket vagy támogatást a funkcióhoz. Váltás kapcsolati láncokra az új képességek kihasználása érdekében.
Az Application Insights engedélyezése
Fontos
Ha az autoinstrumentáció monitorozása és a manuális SDK-alapú rendszerállapot is észlelhető, csak a manuális rendszerállapot-beállítások teljesülnek. Ez az elrendezés megakadályozza a duplikált adatok küldését. További információ: Az Application Insights Azure App Service-vel való integrációjának hibaelhárítása.
Feljegyzés
- Csak a .NET Core hosszú távú támogatása (LTS) kiadások támogatottak.
- Az önálló telepítések csökkentésenem támogatott. Használjon inkább manuális instrumentálást.
Autoinstrumentáció az Azure Portalon
Válassza az Application Insights lehetőséget az app service bal oldali navigációs menüjében, majd válassza az Engedélyezés lehetőséget.
Hozzon létre egy új erőforrást, vagy válasszon ki egy meglévő Application Insights-erőforrást ehhez az alkalmazáshoz.
Feljegyzés
Amikor új erőforrás létrehozásához az OK gombot választja, a rendszer a figyelési beállítások alkalmazását kéri. A Folytatás lehetőség választásával összekapcsolhatja az új Application Insights-erőforrást az app service-hez. Az app service ezután újraindul.
Miután meghatározta a használni kívánt erőforrást, kiválaszthatja, hogy az Application Insights hogyan gyűjtsön adatokat platformonként az alkalmazáshoz. ASP.NET Alapvető gyűjtemény beállításai ajánlottak vagy le vannak tiltva.
A monitorozási bővítmény/ügynök manuális frissítése
Frissítés a 2.8.9-s és újabb verziókról
A 2.8.9-es verzióról való frissítés automatikusan történik, további műveletek nélkül. Az új monitorozási biteket a rendszer a háttérben kézbesíti a célalkalmazás-szolgáltatásnak, és az alkalmazás újraindítása után veszi fel őket.
A futó bővítmény melyik verziójának ellenőrzéséhez nyissa meg a következőt https://yoursitename.scm.azurewebsites.net/ApplicationInsights: .
Frissítés az 1.0.0- 2.6.5-ös verzióról
A 2.8.9-es verziótól kezdve az előre telepített helybővítményt használja a rendszer. Ha egy korábbi verziót használ, kétféleképpen frissíthet:
Frissítés az Azure Portalon keresztüli engedélyezéssel: Még ha telepítve is van az App Service Application Insights bővítménye, a felhasználói felület csak az Engedélyezés gombot jeleníti meg. A színfalak mögött a régi privát webhelybővítmény el lesz távolítva.
Frissítés a PowerShell használatával:
- Állítsa be az alkalmazásbeállításokat az előre telepített helybővítmény
ApplicationInsightsAgentengedélyezéséhez. További információ: Engedélyezés a PowerShell-lel. - Manuálisan távolítsa el az Azure App Service-hez tartozó Application Insights-bővítmény nevű privát webhelybővítményt.
- Állítsa be az alkalmazásbeállításokat az előre telepített helybővítmény
Ha a frissítés a 2.5.1-es verzió előtti verzióról történik, ellenőrizze, hogy a ApplicationInsights DLL-ek törlődnek-e az alkalmazástároló mappájából. További információ: Az Application Insights Azure App Service-vel való integrációjának hibaelhárítása.
A monitorozási bővítmény/ügynök konfigurálása
Jelenleg nem kínálunk lehetőségeket a ASP.NET Core monitorozási bővítményének konfigurálásához.
Ügyféloldali monitorozás engedélyezése
Az ügyféloldali figyelés alapértelmezés szerint engedélyezve van az ajánlott gyűjteményt tartalmazó ASP.NET Core-alkalmazások esetében, függetlenül attól, hogy az alkalmazásbeállítás APPINSIGHTS_JAVASCRIPT_ENABLED jelen van-e.
Ha le szeretné tiltani az ügyféloldali monitorozást:
Válassza a Beállítások>.
Az Alkalmazásbeállítások területen hozzon létre egy új alkalmazásbeállítást az alábbi információkkal:
-
Név:
APPINSIGHTS_JAVASCRIPT_ENABLED -
Érték:
false
-
Név:
Mentse a beállításokat. Indítsa újra az alkalmazást.
Monitorozás automatizálása
Ahhoz, hogy a telemetriai gyűjteményt engedélyezhesse az Application Insights szolgáltatással, csak a következő alkalmazásbeállításokat kell beállítani:
Alkalmazásbeállítások definíciói
| Alkalmazásbeállítás neve | Definíció | Érték |
|---|---|---|
| ApplicationInsightsAgent_EXTENSION_VERSION | Fő bővítmény, amely vezérli a futtatókörnyezet monitorozását. |
~2 Windowshoz vagy ~3 Linuxhoz |
| XDT_MicrosoftApplicationInsights_Mode | Alapértelmezett módban csak az alapvető funkciók vannak engedélyezve az optimális teljesítmény biztosítása érdekében. |
disabled vagy recommended. |
| XDT_MicrosoftApplicationInsights_PreemptSdk | Csak ASP.NET Core-alkalmazásokhoz. Engedélyezi az Interop (interoperation) lehetőséget az Application Insights SDK-val. A bővítményt egymás mellett tölti be az SDK-val, és telemetria küldéséhez használja. (Letiltja az Application Insights SDK-t.) | 1 |
App Service-alkalmazásbeállítások az Azure Resource Managerrel
Az Azure App Service alkalmazásbeállításai Azure Resource Manager-sablonokkal kezelhetők és konfigurálhatók. Ezt a módszert akkor használhatja, ha új App Service-erőforrásokat helyez üzembe a Resource Manager automatizálásával, vagy módosítja a meglévő erőforrások beállításait.
Az App Service-erőforrás JSON-alkalmazásbeállításainak alapstruktúrája:
"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"
}
}
]
Application Insights-erőforrás létrehozásának automatizálása és az újonnan létrehozott App Service-erőforrásra mutató hivatkozás
Ha Resource Manager-sablont szeretne létrehozni az alapértelmezett Application Insights-beállításokkal, kezdje el a folyamatot úgy, mintha egy új webalkalmazást hoz létre, amelyen engedélyezve van az Application Insights.
Az Azure Portalon hozzon létre egy új webalkalmazás-erőforrást a kívánt adatokkal. Engedélyezze az Application Insightst a Monitor + biztonságos lapon.
Nyissa meg a Véleményezés + létrehozás lehetőséget, majd válassza a Sablon letöltése automatizáláshoz lehetőséget. Ez a beállítás létrehozza a legújabb Resource Manager-sablont az összes szükséges beállítás konfigurálva.
Feljegyzés
Az alábbi példasablon egy Windows rendszeren futó .NET 8 (LTS) alkalmazáshoz készült. A helyőrzőket my-monitored-web-app az alkalmazás nevére és aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e az előfizetés azonosítójára használja.
Nem javasoljuk, hogy közvetlenül másolja és használja. Ehelyett hozzon létre saját sablont a fenti utasítások alapján.
Kibontás az példasablon megtekintéséhez
{
"$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": {}
}
]
}
}
}
]
}
Engedélyezés a PowerShell-lel
Az alkalmazásfigyelés PowerShellen keresztüli engedélyezéséhez csak a mögöttes alkalmazásbeállításokat kell módosítani. Az alábbi minta lehetővé teszi az alkalmazásfigyelést az erőforráscsoportban my-monitored-web-apphívott my-resource-group webhelyeken. Konfigurálja az adatokat, amelyeket a InstrumentationKey=012345678-abcd-ef01-2345-6789abcd kapcsolati sztringnek kell küldeni.
Feljegyzés
Javasoljuk, hogy az Azure Az PowerShell modult használja az Azure-ral való interakcióhoz. Első lépésként tekintse meg az Azure PowerShell telepítését ismertető témakört. Az Az PowerShell-modulba való migrálásról további információt az Azure PowerShell migrálása az AzureRM-ből az Az-be című témakörben talál.
Feljegyzés
Windows esetén állítsa a ApplicationInsightsAgent_EXTENSION_VERSION értékre ~2.
Linux esetén állítsa a ApplicationInsightsAgent_EXTENSION_VERSION értékre ~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
Hibaelhárítás
Tekintse meg a dedikált hibaelhárítási cikket.
Következő lépések
- Tekintse át a gyakori kérdéseket (GYIK): Monitorozás az Azure App Service for .NET-ben, Node.js, Python- és Java-alkalmazásokban – gyakori kérdések.
- Engedélyezze a .NET Profilert az Azure App Service-alkalmazásokhoz az élő alkalmazásban.
- Engedélyezze az Azure-diagnosztika elküldését az Application Insightsnak.
- A szolgáltatás állapotmetrikáinak figyelése annak érdekében, hogy a szolgáltatás elérhető és rugalmas legyen.
- Riasztási értesítéseket kaphat , ha működési események történnek, vagy a metrikák átlépik a küszöbértéket.
- Állítsa be az alkalmazás rendelkezésre állási tesztjeit .