Munkaterület-alapú Application Insights-erőforrások
Az Azure Monitor Application Insights-munkaterület-alapú erőforrások integrálják az Application Insightst és a Log Analyticset.
A munkaterület-alapú erőforrások használatával az Application Insights telemetriát küld egy közös Log Analytics-munkaterületre, amely teljes hozzáférést biztosít a Log Analytics összes funkciójához, miközben az alkalmazás, az infrastruktúra és a platformnaplók egyetlen összevont helyen maradnak. Ez az integráció lehetővé teszi az azure-beli szerepköralapú hozzáférés-vezérlést az erőforrások között, és szükségtelenné teszi az alkalmazások és munkaterületek közötti lekérdezéseket.
Feljegyzés
A munkaterület-alapú Application Insights-erőforrások adatbetöltésének és megőrzésének számlázása azon a Log Analytics-munkaterületen történik, ahol az adatok találhatók. A munkaterület-alapú Application Insights-erőforrások számlázásával kapcsolatos további információkért tekintse meg az Azure Monitor Logs díjszabásának részleteit.
Új képességek
A munkaterület-alapú Application Insights integrálható az Azure Monitorral és a Log Analyticsszel a képességek javítása érdekében:
- Az ügyfél által kezelt kulcs inaktív állapotban titkosítja az adatokat olyan kulcsokkal, amelyhez csak Ön fér hozzá.
- Az Azure Private Link biztonságosan csatlakoztatja az Azure PaaS-szolgáltatásokat a virtuális hálózathoz privát végpontok használatával.
- Saját tárolót (BYOS) hozhat létre a Profilerhez és a Snapshot Debuggerhez , amellyel az Application Insights Profiler és a Snapshot Debugger adatait titkosítási, élettartam- és hálózati hozzáférési szabályzatokkal kezelheti.
- A kötelezettségvállalási szintek akár 30%-os megtakarítást is kínálnak használatalapú fizetéses díjszabással.
- A Log Analytics streamelése gyorsabban dolgozza fel az adatokat.
Munkaterület-alapú erőforrás létrehozása
Jelentkezzen be az Azure Portalra, és hozzon létre egy Application Insights-erőforrást.
Ha nincs meglévő Log Analytics-munkaterülete, tekintse meg a Log Analytics-munkaterület létrehozási dokumentációját.
A munkaterület-alapú erőforrások jelenleg minden kereskedelmi régióban és az Azure Governmentben elérhetők. Az Application Insights és a Log Analytics két különböző régióban való használata hatással lehet a késésre, és csökkentheti a monitorozási megoldás általános megbízhatóságát.
Az erőforrás létrehozása után a megfelelő munkaterület-információk megjelennek az Áttekintés panelen.
A kék hivatkozás szövegére kattintva lépjen a társított Log Analytics-munkaterületre, ahol kihasználhatja az új egyesített munkaterület lekérdezési környezetét.
Feljegyzés
Továbbra is teljes kompatibilitást biztosítunk az Application Insights klasszikus erőforrás-lekérdezéseihez, munkafüzeteihez és naplóalapú riasztásaihoz. Az új munkaterület-alapú táblaszerkezet vagy -séma lekérdezéséhez vagy megtekintéséhez először a Log Analytics-munkaterületre kell lépnie. Az Application Insights paneleken válassza a Naplók (Elemzés) lehetőséget a klasszikus Application Insights lekérdezési felülethez való hozzáféréshez.
A kapcsolati sztring másolása
A kapcsolati sztring azonosítja azt az erőforrást, amelyhez a telemetriai adatokat társítani szeretné. Azt is használhatja, hogy módosítsa azokat a végpontokat, amelyet az erőforrás a telemetria célhelyeként használ. Másolja a kapcsolati sztring, és adja hozzá az alkalmazás kódjához vagy egy környezeti változóhoz.
Figyelés konfigurálása
A munkaterület-alapú Application Insights-erőforrás létrehozása után konfigurálja a monitorozást.
Kódalapú alkalmazásfigyelés
Kódalapú alkalmazásfigyeléshez telepítse a megfelelő Application Insights SDK-t, és a kapcsolati sztring az újonnan létrehozott erőforrásra irányítsa.
Az Application Insights SDK kódalapú monitorozáshoz való beállításával kapcsolatos információkért tekintse meg a nyelvre vagy keretrendszerre vonatkozó alábbi dokumentációt:
- ASP.NET
- ASP.NET Core
- Háttérfeladatok és modern konzolalkalmazások (.NET/.NET Core)
- Klasszikus konzolalkalmazások (.NET)
- Java
- JavaScript
- Node.js
- Python
Kód nélküli monitorozás
Az olyan szolgáltatások kód nélküli monitorozásához, mint az Azure Functions és a Azure-alkalmazás Services, először létrehozhatja a munkaterület-alapú Application Insights-erőforrást. Ezután a figyelés konfigurálásakor erre az erőforrásra mutat. Másik lehetőségként létrehozhat egy új Application Insights-erőforrást az Application Insights engedélyezése részeként.
Erőforrás automatikus létrehozása
Azure CLI
Az előzetes Application Insights Azure CLI-parancsok eléréséhez először a következőt kell futtatnia:
az extension add -n application-insights
Ha nem futtatja a az extension add
parancsot, egy hibaüzenet jelenik meg, amely azt jelzi az : ERROR: az monitor: 'app-insights' is not in the 'az monitor' command group. See 'az monitor --help'
, hogy .
Most futtathatja a következő kódot az Application Insights-erőforrás létrehozásához:
az monitor app-insights component create --app
--location
--resource-group
[--application-type]
[--ingestion-access {Disabled, Enabled}]
[--kind]
[--only-show-errors]
[--query-access {Disabled, Enabled}]
[--tags]
[--workspace]
Példa
az monitor app-insights component create --app demoApp --location eastus --kind web -g my_resource_group --workspace "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test1234/providers/microsoft.operationalinsights/workspaces/test1234555"
A parancs teljes Azure CLI-dokumentációját az Azure CLI dokumentációjában találja.
Azure PowerShell
Hozzon létre egy új munkaterület-alapú Application Insights-erőforrást.
New-AzApplicationInsights -Name <String> -ResourceGroupName <String> -Location <String> -WorkspaceResourceId <String>
[-SubscriptionId <String>]
[-ApplicationType <ApplicationType>]
[-DisableIPMasking]
[-DisableLocalAuth]
[-Etag <String>]
[-FlowType <FlowType>]
[-ForceCustomerStorageForProfiler]
[-HockeyAppId <String>]
[-ImmediatePurgeDataOn30Day]
[-IngestionMode <IngestionMode>]
[-Kind <String>]
[-PublicNetworkAccessForIngestion <PublicNetworkAccessType>]
[-PublicNetworkAccessForQuery <PublicNetworkAccessType>]
[-RequestSource <RequestSource>]
[-RetentionInDays <Int32>]
[-SamplingPercentage <Double>]
[-Tag <Hashtable>]
[-DefaultProfile <PSObject>]
[-Confirm]
[-WhatIf]
[<CommonParameters>]
Példa
New-AzApplicationInsights -Kind java -ResourceGroupName testgroup -Name test1027 -location eastus -WorkspaceResourceId "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/test1234/providers/microsoft.operationalinsights/workspaces/test1234555"
A parancsmag teljes PowerShell-dokumentációját és a kapcsolati sztring lekérését az Azure PowerShell dokumentációjában találja.
Azure Resource Manager-sablonok
@description('Name of Application Insights resource.')
param name string
@description('Type of app you are deploying. This field is for legacy reasons and will not impact the type of App Insights resource you deploy.')
param type string
@description('Which Azure Region to deploy the resource to. This must be a valid Azure regionId.')
param regionId string
@description('See documentation on tags: https://learn.microsoft.com/azure/azure-resource-manager/management/tag-resources.')
param tagsArray object
@description('Source of Azure Resource Manager deployment')
param requestSource string
@description('Log Analytics workspace ID to associate with your Application Insights resource.')
param workspaceResourceId string
resource component 'Microsoft.Insights/components@2020-02-02' = {
name: name
location: regionId
tags: tagsArray
kind: 'other'
properties: {
Application_Type: type
Flow_Type: 'Bluefield'
Request_Source: requestSource
WorkspaceResourceId: workspaceResourceId
}
}
Paraméterfájl
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"name": {
"value": "my_workspace_based_resource"
},
"type": {
"value": "web"
},
"regionId": {
"value": "westus2"
},
"tagsArray": {
"value": {}
},
"requestSource": {
"value": "CustomDeployment"
},
"workspaceResourceId": {
"value": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/testxxxx/providers/microsoft.operationalinsights/workspaces/testworkspace"
}
}
}
A társított munkaterület módosítása
A munkaterület-alapú Application Insights-erőforrás létrehozása után módosíthatja a társított Log Analytics-munkaterületet.
Az Application Insights erőforráspanelén válassza a Tulajdonságok>módosítása munkaterület Log Analytics-munkaterületeit>.
Telemetria exportálása
A munkaterület-alapú erőforrások esetében az örökölt folyamatos exportálási funkció nem támogatott. Ehelyett válassza a Diagnosztikai beállítások>– Diagnosztikai beállítás hozzáadása az Application Insights-erőforrásban lehetőséget. A tárfiókba való archiváláshoz kijelölheti az összes táblát vagy a táblák egy részhalmazát. Streamelhet egy Azure-eseményközpontba is.
Feljegyzés
A diagnosztikai beállítások exportálása növelheti a költségeket. További információ: Telemetriai adatok exportálása az Application Insightsból. A szolgáltatás díjszabásával kapcsolatos információkért tekintse meg az Azure Monitor díjszabási oldalát. A számlázás megkezdése előtt a rendszer értesítéseket küld. Ha a értesítési időszak után is telemetriaexportálást használ, akkor a számlázás a vonatkozó díjszabás szerint történik.
Hány Application Insights-erőforrást telepítsek?
Amikor egy webalkalmazás következő verzióját fejleszti, nem szeretné összekeverni az Application Insights telemetriáját az új verzióból és a már kiadott verzióból.
A félreértések elkerülése érdekében küldje el a telemetriát a különböző fejlesztési szakaszokból az Application Insights-erőforrások különálló kapcsolati sztring való elkülönítéséhez.
Ha a rendszer az Azure Cloud Services egy példánya, van egy másik módszer a különálló kapcsolati sztring beállítására.
Az erőforrások és kapcsolati sztring ismertetése
Amikor beállítja az Application Insights monitorozását a webalkalmazáshoz, létrehoz egy Application Insights-erőforrást az Azure-ban. Az erőforrást az Azure Portalon nyithatja meg az alkalmazásból gyűjtött telemetriai adatok megtekintéséhez és elemzéséhez. Egy kapcsolati sztring azonosítja az erőforrást. Amikor telepíti az Application Insights-csomagot az alkalmazás monitorozásához, konfigurálja a kapcsolati sztring, hogy tudja, hová küldje a telemetriát.
Minden Application Insights-erőforrás tartalmaz olyan metrikákat, amelyek a dobozon kívül érhetők el. Ha az összetevők ugyanazt az Application Insights-erőforrást jelentik, előfordulhat, hogy nem érdemes riasztást készíteni ezekről a metrikákról.
Mikor érdemes egyetlen Application Insights-erőforrást használni?
Egyetlen Application Insights-erőforrás használata:
- A DevOps/ITOps felügyeletének egyszerűsítése az együtt üzembe helyezett alkalmazásokhoz, amelyeket általában ugyanaz a csapat fejlesztett ki és felügyel.
- A fő teljesítménymutatók, például a válaszidők és a hibaarányok központosítása alapértelmezés szerint egy irányítópulton. Szükség esetén a metrikák kezelőjében szerepkör szerinti szegmentálás.
- Ha nincs szükség különböző Azure-szerepköralapú hozzáférés-vezérlésre az alkalmazásösszetevők között.
- Ha az azonos metrikák riasztási feltételei, a folyamatos exportálás és a számlázás/kvóták kezelése elegendő az összetevők között.
- Ha elfogadható, hogy egy API-kulcs egyenlően fér hozzá az összes összetevő adataihoz, és 10 API-kulcs felel meg az összes összetevő igényeinek.
- Ha minden szerepkörben ugyanazok az intelligens észlelési és munkaelem-integrációs beállítások megfelelőek.
Feljegyzés
Ha több Application Insights-erőforrást szeretne összesíteni, a meglévő alkalmazásösszetevőket egy új, konszolidált Application Insights-erőforrásra irányíthatja. A régi erőforrásban tárolt telemetriai adatok nem lesznek átadva az új erőforrásnak. Csak akkor törölje a régi erőforrást, ha elegendő telemetriával rendelkezik az új erőforrásban az üzletmenet folytonosságához.
Egyéb szempontok
A portálélmények aktiválásához adjon hozzá egyéni kódot, hogy értelmes értékeket rendeljen a Cloud_RoleName attribútumhoz. Ezen értékek nélkül a portálfunkciók nem működnek.
Az Azure Service Fabric-alkalmazások és a klasszikus felhőszolgáltatások esetében az SDK automatikusan konfigurálja a szolgáltatásokat az Azure Szerepkör-környezetből való olvasással. Más alkalmazástípusok esetében általában explicit módon kell beállítania.
Az élő metrikák nem oszthatnak fel adatokat szerepkörnév alapján.
További Application Insights-erőforrások létrehozása
Application Insights-erőforrás létrehozásához lásd : Application Insights-erőforrás létrehozása.
Figyelmeztetés
További hálózati költségek merülhetnek fel, ha az Application Insights-erőforrás egy másik régióban figyel egy Azure-erőforrást (azaz telemetriai gyártót). A költségek attól függően változnak, hogy a telemetria melyik régióból érkezik, és hogy hová tart. Részletekért tekintse meg az Azure sávszélesség-díjszabását .
A kapcsolati sztring lekérése
A kapcsolati sztring azonosítja a létrehozott erőforrást.
Szüksége van az összes olyan erőforrás kapcsolati sztring, amelyekbe az alkalmazás adatokat küld.
Szűrés a buildszámra
Az alkalmazás új verziójának közzétételekor el szeretné különíteni a telemetriát a különböző buildektől.
Beállíthatja az Alkalmazásverzió tulajdonságot, hogy szűrhesse a keresési és a metrikaböngésző eredményeit.
Az Alkalmazásverzió tulajdonság beállításának több különböző módja is van.
Közvetlen beállítás:
telemetryClient.Context.Component.Version = typeof(MyProject.MyClass).Assembly.GetName().Version;
Csomagolja be ezt a sort egy telemetriai inicializálóba , hogy az összes
TelemetryClient
példány konzisztens legyen.ASP.NET: A verzió beállítása a következőben
BuildInfo.config
: . A webes modul felveszi a verziót aBuildLabel
csomópontról. Vegye fel ezt a fájlt a projektbe, és ne felejtse el beállítani a Copy Always tulajdonságot Megoldáskezelő.<?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>
ASP.NET: Automatikus létrehozás
BuildInfo.config
a Microsoft buildmotorjában. Adjon hozzá néhány sort a.csproj
fájlhoz:<PropertyGroup> <GenerateBuildInfoConfigFile>true</GenerateBuildInfoConfigFile> <IncludeServerNameInBuildInfo>true</IncludeServerNameInBuildInfo> </PropertyGroup>
Ez a lépés létrehoz egy yourProjectName
.BuildInfo.config
nevű fájlt. A közzétételi folyamat átnevezi a következőreBuildInfo.config
: .A buildcímke helyőrzőt
(*AutoGen_...*)
tartalmaz, amikor a Visual Studióval készít. Ha azonban a Microsoft buildmotorral készült, akkor a megfelelő verziószámmal van feltöltve.Ha engedélyezni szeretné, hogy a Microsoft Build Engine verziószámokat hozzon létre, állítsa be a verziót a következőhöz
AssemblyReference.cs
hasonlóan1.0.*
.
Verzió- és kiadáskövetés
Az alkalmazás verziójának nyomon követéséhez győződjön meg arról, hogy a Microsoft Build Engine folyamata létrejön buildinfo.config
. A fájlban adja hozzá a .csproj
következőt:
<PropertyGroup>
<GenerateBuildInfoConfigFile>true</GenerateBuildInfoConfigFile>
<IncludeServerNameInBuildInfo>true</IncludeServerNameInBuildInfo>
</PropertyGroup>
Ha az Application Insights webmodul rendelkezik a buildelési információkkal, automatikusan hozzáadja az Application Version tulajdonságot minden telemetriai elemhez. Ezért a diagnosztikai keresések vagy metrikák vizsgálatakor verzió szerint is szűrhet.
A Microsoft Build Engine kizárólag a build verziószámát hozza létre, nem pedig a Visual Studióból származó fejlesztői buildet.
Kiadási jegyzetek
Az Azure DevOps használata esetén egy jegyzetjelölőt is hozzáadhat a diagramokhoz, amikor új verziót ad ki.
Gyakori kérdések
Ez a szakasz választ ad a gyakori kérdésekre.
Hogyan áthelyezni egy Application Insights-erőforrást egy új régióba?
A meglévő Application Insights-erőforrások régiók közötti átvitele nem támogatott, és az előzményadatok nem migrálhatók új régióba. A kerülő megoldás a következőket foglalja magában:
- Új munkaterület-alapú Application Insights-erőforrás létrehozása a kívánt régióban.
- Hozza létre újra az új erőforrás eredeti erőforrásának egyedi testreszabásait.
- Az alkalmazás frissítése az új régió erőforrásának kapcsolati sztring.
- Tesztelés, hogy minden a várt módon működjön az új Application Insights-erőforrással.
- Döntse el, hogy megtartja vagy törli az eredeti Application Insights-erőforrást. A klasszikus erőforrás törlése az összes előzményadat elvesztését jelenti. Ha az erőforrás munkaterület-alapú, az adatok a Log Analyticsben maradnak, így az előzményadatokhoz való hozzáférés a megőrzési időszak lejártáig tart.
Az új régióban lévő erőforráshoz gyakran manuálisan újra kell létrehozni vagy frissíteni kívánt egyedi testreszabások közé tartoznak, de nem korlátozódnak a következőkre:
- Egyéni irányítópultok és munkafüzetek újbóli létrehozása.
- Hozza létre vagy frissítse újra az egyéni napló-/metrikariasztások hatókörét.
- Hozza létre újra a rendelkezésre állási riasztásokat.
- Hozza létre újra azokat az egyéni Azure-szerepköralapú hozzáférés-vezérlési beállításokat, amelyek szükségesek ahhoz, hogy a felhasználók hozzáférjenek az új erőforráshoz.
- Replikálja a betöltési mintavételezést, az adatmegőrzést, a napi korlátot és az egyéni metrikák engedélyezését magában foglaló beállításokat. Ezeket a beállításokat a Használat és a becsült költségek panelen lehet szabályozni.
- Az API-kulcsokra támaszkodó összes integráció, például a kibocsátási széljegyzetek és az élő metrikák biztonságos vezérlési csatornája. Új API-kulcsokat kell létrehoznia, és frissítenie kell a társított integrációt.
- A klasszikus erőforrások folyamatos exportálását újra konfigurálni kell.
- A munkaterület-alapú erőforrások diagnosztikai beállításait újra konfigurálni kell.
Feljegyzés
Ha az új régióban létrehozott erőforrás lecserél egy klasszikus erőforrást, javasoljuk, hogy vizsgálja meg az új munkaterület-alapú erőforrás létrehozásának előnyeit. Másik lehetőségként migrálja a meglévő erőforrást munkaterület-alapúra.
Használhatok szolgáltatókat ('Microsoft.Insights', 'components').apiVersions[0] az Azure Resource Manager-környezetekben?
Nem javasoljuk, hogy ezt a módszert használja az API-verzió feltöltéséhez. A legújabb verzió az előzetes verziójú kiadásokat jelölheti, amelyek kompatibilitástörő változásokat tartalmazhatnak. Az API-verziók még az újabb nem új verziók esetén sem mindig kompatibilisek a meglévő sablonokkal. Bizonyos esetekben előfordulhat, hogy az API-verzió nem minden előfizetés számára érhető el.