Application Insights pro virtuální počítače Azure a škálovací sady virtuálních počítačů
Povolení monitorování pro vaše ASP.NET a ASP.NET základní aplikace hostované službou IIS spuštěné na virtuálních počítačích Azure nebo škálovacích sadách virtuálních počítačů Azure je teď jednodušší než kdy dřív. Získejte všechny výhody používání Application Insights beze změny kódu.
Tento článek vás provede povolením monitorování Application Insights pomocí agenta Application Insights. Poskytuje také předběžné pokyny pro automatizaci procesu pro rozsáhlá nasazení.
Povolit Application Insights
Automatická aktivace je snadná. Pokročilá konfigurace není nutná.
Úplný seznam podporovanýchscénářůch
Poznámka:
Automatická příprava je k dispozici pro ASP.NET, ASP.NET základní aplikace hostované službou IIS a Javu. Sada SDK slouží k instrumentaci aplikací Node.js a Pythonu hostovaných na virtuálních počítačích Azure a škálovacích sadách virtuálních počítačů.
Agent Application Insights automaticky zakóduje stejné signály závislostí jako sada SDK. Další informace najdete v tématu Autocollection závislostí.
Před instalací rozšíření agenta Application Insights budete potřebovat připojovací řetězec. Vytvořte nový prostředek Application Insights nebo zkopírujte připojovací řetězec z existujícího prostředku Application Insights.
Povolení monitorování pro virtuální počítače
K povolení monitorování virtuálních počítačů můžete použít Azure Portal nebo PowerShell.
portál Azure
Na webu Azure Portal přejděte k prostředku Application Insights. Zkopírujte připojovací řetězec do schránky.
Přejděte na virtuální počítač. V části Nastavení v nabídce na levé straně vyberte Rozšíření a aplikace>Přidat.
Vyberte Další agenta> Application Insights.
Vložte připojovací řetězec, které jste zkopírovali v kroku 1, a vyberte Zkontrolovat a vytvořit.
PowerShell
Nainstalujte nebo aktualizujte agenta Application Insights jako rozšíření pro virtuální počítače Azure:
# 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
Poznámka:
V případě složitějších nasazení ve velkém měřítku můžete pomocí smyčky PowerShellu nainstalovat nebo aktualizovat rozšíření agenta Application Insights napříč několika virtuálními počítači.
Zadejte dotaz na stav rozšíření agenta Application Insights pro virtuální počítače Azure:
Get-AzVMExtension -ResourceGroupName "<myVmResourceGroup>" -VMName "<myVmName>" -Name ApplicationMonitoringWindows -Status
Získejte seznam nainstalovaných rozšíření pro virtuální počítače Azure:
Get-AzResource -ResourceId "/subscriptions/<mySubscriptionId>/resourceGroups/<myVmResourceGroup>/providers/Microsoft.Compute/virtualMachines/<myVmName>/extensions"
Odinstalujte rozšíření agenta Application Insights z virtuálních počítačů Azure:
Remove-AzVMExtension -ResourceGroupName "<myVmResourceGroup>" -VMName "<myVmName>" -Name "ApplicationMonitoring"
Poznámka:
Ověřte instalaci výběrem živého streamu metrik v rámci prostředku Application Insights přidruženého k připojovací řetězec jste použili k nasazení rozšíření agenta Application Insights. Pokud odesíláte data z více virtuálních počítačů, vyberte cílové virtuální počítače Azure v části Název serveru. Zahájení toku dat může trvat až minutu.
Povolení monitorování pro škálovací sady virtuálních počítačů
K povolení monitorování škálovacích sad virtuálních počítačů můžete použít Azure Portal nebo PowerShell.
portál Azure
Postupujte podle předchozích kroků pro virtuální počítače, ale přejděte na škálovací sady virtuálních počítačů místo virtuálního počítače.
PowerShell
Nainstalujte nebo aktualizujte agenta Application Insights jako rozšíření pro škálovací sady virtuálních počítačů:
# 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
Získejte seznam nainstalovaných rozšíření pro škálovací sady virtuálních počítačů:
Get-AzResource -ResourceId "/subscriptions/<mySubscriptionId>/resourceGroups/<myResourceGroup>/providers/Microsoft.Compute/virtualMachineScaleSets/<myVmssName>/extensions"
Odinstalujte rozšíření monitorování aplikací ze škálovacích sad virtuálních počítačů:
# 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
Řešení problému
Projděte si tipy pro řešení potíží s rozšířením agenta monitorování Application Insights pro aplikace .NET spuštěné na virtuálních počítačích Azure a škálovacích sadách virtuálních počítačů.
Pokud máte potíže s nasazením rozšíření, zkontrolujte výstup spuštění, který je protokolovaný do souborů nalezených v následujících adresářích:
C:\WindowsAzure\Logs\Plugins\Microsoft.Azure.Diagnostics.ApplicationMonitoringWindows\<version>\
Pokud se vaše rozšíření úspěšně nasadí, ale nemůžete zobrazit telemetrii, může se jednat o jeden z následujících problémů popsaných v řešení potíží s agentem:
- Konfliktní knihovny DLL v adresáři přihrádky aplikace
- Konflikt se sdílenou konfigurací služby IIS
Testování připojení mezi hostitelem vaší aplikace a službou příjmu dat
Sady Application Insights SDK a agenti odesílají telemetrii, aby se ingestovala jako volání REST do koncových bodů příjmu dat. Připojení z webového serveru nebo hostitelského počítače aplikace ke koncovým bodům služby pro příjem dat můžete otestovat pomocí nezpracovaných klientů REST z příkazů PowerShellu nebo curl. Viz Řešení potíží s chybějící telemetrií aplikací ve službě Azure Monitor Application Insights.
Poznámky k verzi
2.8.44
- Aktualizace sady Application Insights .NET/.NET Core SDK na verzi 2.20.1 – červené pole
- Povolili jsme kolekci dotazů SQL.
- Povolená podpora ověřování Microsoft Entra
2.8.42
Aktualizace sady Application Insights .NET/.NET Core SDK na verzi 2.18.1 – červené pole
2.8.41
Přidání funkce autoinstruace ASP.NET Core
Další kroky
- Zjistěte, jak nasadit aplikaci do škálovací sady virtuálních počítačů Azure.
- Přehled dostupnosti