Application Insights Azure-beli virtuális gépekhez és virtuálisgép-méretezési csoportokhoz
A ASP.NET és ASP.NET Core IIS által üzemeltetett, Azure-beli virtuális gépeken vagy Azure-beli virtuálisgép-méretezési csoportokon futó alkalmazások monitorozásának engedélyezése mostantól minden eddiginél egyszerűbb. Az Application Insights használatának minden előnyét kihasználhatja a kód módosítása nélkül.
Ez a cikk bemutatja, hogy az Application Insights-figyelés az Application Insights-ügynök használatával engedélyezve van-e. Emellett előzetes útmutatást nyújt a nagy léptékű üzemelő példányok folyamatának automatizálásához.
Az Application Insights engedélyezése
Az autoinstrumentáció egyszerűen engedélyezhető. Nincs szükség speciális konfigurációra.
A támogatott autoinstrumentációs forgatókönyvek teljes listájáért tekintse meg a támogatott környezeteket, nyelveket és erőforrás-szolgáltatókat.
Feljegyzés
Az autoinstrumentáció ASP.NET, ASP.NET Core IIS által üzemeltetett alkalmazásokhoz és Java-hoz érhető el. SDK használatával azure-beli virtuális gépeken és virtuálisgép-méretezési csoportokon üzemeltetett Node.js és Python-alkalmazásokat is eszközzé alakíthat.
Az Application Insights-ügynök automatikusan ugyanazokat a függőségi jeleket válogatja ki a dobozból, mint az SDK. További információkért lásd : Függőségek automatikuscollection.
Az Application Insights Agent bővítmény telepítése előtt szüksége lesz egy kapcsolati sztring. Hozzon létre egy új Application Insights-erőforrást, vagy másolja a kapcsolati sztring egy meglévő Application Insights-erőforrásból.
Virtuális gépek monitorozásának engedélyezése
Az Azure Portal vagy a PowerShell használatával engedélyezheti a virtuális gépek monitorozását.
Azure Portal
Az Azure Portalon nyissa meg az Application Insights-erőforrást. Másolja a kapcsolati sztring a vágólapra.
Nyissa meg a virtuális gépet. A bal oldali menü Beállítások szakaszában válassza a Bővítmények + alkalmazások>hozzáadása lehetőséget.
Válassza az Application Insights-ügynök következő elemét.>
Illessze be az 1. lépésben másolt kapcsolati sztring, és válassza a Véleményezés + létrehozás lehetőséget.
PowerShell
Feljegyzés
Még nem ismerkedik a PowerShell-lel? Tekintse meg az Első lépések útmutatót.
Telepítse vagy frissítse az Application Insights-ügynököt bővítményként az Azure-beli virtuális gépekhez:
# define variables to match your environment before running
$ResourceGroup = "<myVmResourceGroup>"
$VMName = "<myVmName>"
$Location = "<myVmLocation>"
$ConnectionString = "<myAppInsightsResourceConnectionString>"
$publicCfgJsonString = @"
{
"redfieldConfiguration": {
"instrumentationKeyMap": {
"filters": [
{
"appFilter": ".*",
"machineFilter": ".*",
"virtualPathFilter": ".*",
"instrumentationSettings" : {
"connectionString": "$ConnectionString"
}
}
]
}
}
}
"@
$privateCfgJsonString = '{}'
Set-AzVMExtension -ResourceGroupName $ResourceGroup -VMName $VMName -Location $Location -Name "ApplicationMonitoringWindows" -Publisher "Microsoft.Azure.Diagnostics" -Type "ApplicationMonitoringWindows" -Version "2.8" -SettingString $publicCfgJsonString -ProtectedSettingString $privateCfgJsonString
Feljegyzés
A bonyolultabb, nagy léptékű üzembe helyezésekhez PowerShell-hurok használatával telepítheti vagy frissítheti az Application Insights Agent bővítményt több virtuális gépen.
Azure-beli virtuális gépek Application Insights-ügynök bővítményállapotának lekérdezése:
Get-AzVMExtension -ResourceGroupName "<myVmResourceGroup>" -VMName "<myVmName>" -Name ApplicationMonitoringWindows -Status
Az Azure-beli virtuális gépekhez telepített bővítmények listájának lekérése:
Get-AzResource -ResourceId "/subscriptions/<mySubscriptionId>/resourceGroups/<myVmResourceGroup>/providers/Microsoft.Compute/virtualMachines/<myVmName>/extensions"
Távolítsa el az Application Insights Agent bővítményt az Azure-beli virtuális gépekről:
Remove-AzVMExtension -ResourceGroupName "<myVmResourceGroup>" -VMName "<myVmName>" -Name "ApplicationMonitoring"
Feljegyzés
Ellenőrizze a telepítést az Application Insights-ügynök bővítmény üzembe helyezéséhez használt kapcsolati sztring társított Application Insights-erőforrás élő metrikák streamjének kiválasztásával. Ha több virtuális gépről küld adatokat, válassza ki a cél Azure-beli virtuális gépeket a Kiszolgáló neve területen. Akár egy percig is eltarthat, amíg az adatok elkezdenek áramlani.
Virtuálisgép-méretezési csoportok monitorozásának engedélyezése
Az Azure Portal vagy a PowerShell használatával engedélyezheti a virtuálisgép-méretezési csoportok monitorozását.
Azure Portal
Kövesse a virtuális gépek korábbi lépéseit, de a virtuális gép helyett lépjen a virtuálisgép-méretezési csoportokra.
PowerShell
Telepítse vagy frissítse az Application Insights-ügynököt bővítményként a virtuálisgép-méretezési csoportokhoz:
# Set resource group, vmss name, and connection string to reflect your environment
$ResourceGroup = "<myVmResourceGroup>"
$VMSSName = "<myVmName>"
$ConnectionString = "<myAppInsightsResourceConnectionString>"
$publicCfgHashtable =
@{
"redfieldConfiguration"= @{
"instrumentationKeyMap"= @{
"filters"= @(
@{
"appFilter"= ".*";
"machineFilter"= ".*";
"virtualPathFilter"= ".*";
"instrumentationSettings" = @{
"connectionString"= "$ConnectionString"
}
}
)
}
}
};
$privateCfgHashtable = @{};
$vmss = Get-AzVmss -ResourceGroupName $ResourceGroup -VMScaleSetName $VMSSName
Add-AzVmssExtension -VirtualMachineScaleSet $vmss -Name "ApplicationMonitoringWindows" -Publisher "Microsoft.Azure.Diagnostics" -Type "ApplicationMonitoringWindows" -TypeHandlerVersion "2.8" -Setting $publicCfgHashtable -ProtectedSetting $privateCfgHashtable
Update-AzVmss -ResourceGroupName $vmss.ResourceGroupName -Name $vmss
# Note: Depending on your update policy, you might need to run Update-AzVmssInstance for each instance
A virtuálisgép-méretezési csoportokhoz telepített bővítmények listájának lekérése:
Get-AzResource -ResourceId "/subscriptions/<mySubscriptionId>/resourceGroups/<myResourceGroup>/providers/Microsoft.Compute/virtualMachineScaleSets/<myVmssName>/extensions"
Távolítsa el az alkalmazásfigyelési bővítményt a virtuálisgép-méretezési csoportokból:
# set resource group and vmss name to reflect your environment
$vmss = Get-AzVmss -ResourceGroupName "<myResourceGroup>" -VMScaleSetName "<myVmssName>"
Remove-AzVmssExtension -VirtualMachineScaleSet $vmss -Name "ApplicationMonitoringWindows"
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
Hibaelhárítás
Hibaelhárítási tippeket talál az Application Insights monitorozási ügynök bővítményéhez az Azure-beli virtuális gépeken és virtuálisgép-méretezési csoportokon futó .NET-alkalmazásokhoz.
Ha nem sikerül üzembe helyeznie a bővítményt, tekintse át a következő könyvtárakban található fájlokba naplózott végrehajtási kimenetet:
C:\WindowsAzure\Logs\Plugins\Microsoft.Azure.Diagnostics.ApplicationMonitoringWindows\<version>\
Ha a bővítmény sikeresen üzembe lett helyezve, de nem látja a telemetriát, az ügynök hibaelhárítása az alábbi problémák egyike lehet:
- Ütköző DLL-ek az alkalmazás tárolókönyvtárában
- Ütközés az IIS megosztott konfigurációjával
Az alkalmazásgazda és a betöltési szolgáltatás közötti kapcsolat tesztelése
Az Application Insights SDK-k és -ügynökök telemetriát küldenek, hogy REST-hívásként betöltse a betöltési végpontokat. A webkiszolgálóról vagy az alkalmazásgazdagépről a betöltési szolgáltatás végpontjaihoz való kapcsolódást a PowerShellből vagy curl parancsokból származó nyers REST-ügyfelek használatával tesztelheti. Tekintse meg a hiányzó alkalmazástelemetria hibaelhárítását az Azure Monitor Application Insightsban.
Kibocsátási megjegyzések
2.8.44
- Frissítettük az Application Insights .NET/.NET Core SDK-t a 2.20.1 -piros mezőre.
- Engedélyezett SQL-lekérdezésgyűjtemény.
- Engedélyezve van a Microsoft Entra-hitelesítés támogatása.
2.8.42
Frissítettük az Application Insights .NET/.NET Core SDK-t a 2.18.1 -piros mezőre.
2.8.41
Hozzáadta a ASP.NET Core autoinstrumentation funkciót.