Application Insights untuk Azure VM dan set skala komputer virtual

Mengaktifkan pemantauan untuk aplikasi yang dihosting ASP.NET dan ASP.NET Core IIS yang berjalan di Azure Virtual Machines atau Azure Virtual Machine Scale Sets sekarang lebih mudah daripada sebelumnya. Dapatkan semua manfaat penggunaan Application Insights tanpa memodifikasi kode.

Artikel ini memandikan Anda mengaktifkan pemantauan Application Insights dengan menggunakan Agen Application Insights. Ini juga memberikan panduan awal untuk mengotomatiskan proses untuk penyebaran skala besar.

Mengaktifkan Application Insights

Autoinstrumentasi mudah diaktifkan. Konfigurasi tingkat lanjut tidak diperlukan.

Untuk daftar lengkap skenario autoinstrumentasi yang didukung, lihat Lingkungan, bahasa, dan penyedia sumber daya yang didukung.

Catatan

Autoinstrumentasi tersedia untuk aplikasi yang dihosting ASP.NET, ASP.NET Core IIS, dan Java. Gunakan SDK untuk melengkapi aplikasi Node.js dan Python yang dihosting di komputer virtual Azure dan set skala komputer virtual.

Agen Application Insights mengotomatiskan sinyal dependensi yang sama di luar kotak dengan SDK. Untuk mempelajari selengkapnya, lihat Autocollection dependensi.

Sebelum menginstal ekstensi Agen Application Insights, Anda memerlukan string koneksi. Buat sumber daya Application Insights baru atau salin string koneksi dari sumber daya Application Insights yang ada.

Mengaktifkan pemantauan untuk komputer virtual

Anda dapat menggunakan portal Azure atau PowerShell untuk mengaktifkan pemantauan untuk VM.

Portal Azure

  1. Di Azure portal - Microsoft Azure, kunjungi sumber daya Application Insights Anda. Salin string koneksi Anda ke clipboard.

    Cuplikan layar yang memperlihatkan string koneksi.

  2. Buka komputer virtual Anda. Di bawah bagian Pengaturan di menu di sisi kiri, pilih Ekstensi + aplikasi>Tambahkan.

    Cuplikan layar yang memperlihatkan panel Ekstensi + aplikasi dengan tombol Tambahkan.

  3. Pilih Agen>Application Insights Berikutnya.

    Cuplikan layar yang memperlihatkan panel Instal Ekstensi dengan tombol Berikutnya.

  4. Tempelkan string koneksi yang Anda salin di langkah 1 dan pilih Tinjau + buat.

    Cuplikan layar yang memperlihatkan tab Buat dengan tombol Tinjau + buat.

PowerShell

Catatan

Apakah Anda baru menggunakan PowerShell? Lihat panduan Memulai.

Instal atau perbarui Agen Application Insights sebagai ekstensi untuk komputer virtual 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

Catatan

Untuk penyebaran dalam skala besar yang lebih rumit, Anda dapat menggunakan perulangan PowerShell untuk menginstal atau memperbarui ekstensi Agen Application Insights di beberapa VM.

Kueri status ekstensi Application Insights Agent untuk komputer virtual Azure:

Get-AzVMExtension -ResourceGroupName "<myVmResourceGroup>" -VMName "<myVmName>" -Name ApplicationMonitoringWindows -Status

Dapatkan daftar ekstensi yang diinstal untuk komputer virtual Azure:

Get-AzResource -ResourceId "/subscriptions/<mySubscriptionId>/resourceGroups/<myVmResourceGroup>/providers/Microsoft.Compute/virtualMachines/<myVmName>/extensions"

Hapus instalan ekstensi Application Insights Agent dari komputer virtual Azure:

Remove-AzVMExtension -ResourceGroupName "<myVmResourceGroup>" -VMName "<myVmName>" -Name "ApplicationMonitoring"

Catatan

Verifikasi penginstalan dengan memilih Streaming Metrik Langsung dalam sumber daya Application Insights yang terkait dengan string koneksi yang Anda gunakan untuk menyebarkan ekstensi Agen Application Insights. Jika Anda mengirim data dari beberapa komputer virtual, pilih komputer virtual Azure target di bawah Nama Server. Mungkin perlu waktu hingga satu menit agar data mulai mengalir.

Mengaktifkan pemantauan untuk set skala komputer virtual

Anda dapat menggunakan portal Azure atau PowerShell untuk mengaktifkan pemantauan untuk set skala komputer virtual.

Portal Azure

Ikuti langkah-langkah sebelumnya untuk VM, tetapi buka set skala komputer virtual Anda alih-alih VM Anda.

PowerShell

Instal atau perbarui Application Insights Agent sebagai ekstensi untuk set skala komputer virtual:

# 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

Dapatkan daftar ekstensi yang diinstal untuk set skala komputer virtual:

Get-AzResource -ResourceId "/subscriptions/<mySubscriptionId>/resourceGroups/<myResourceGroup>/providers/Microsoft.Compute/virtualMachineScaleSets/<myVmssName>/extensions"

Hapus instalan ekstensi pemantauan aplikasi dari set skala komputer virtual:

# 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

Pemecahan Masalah

Temukan tips pemecahan masalah untuk ekstensi Application Insights Monitoring Agent untuk aplikasi .NET yang berjalan di komputer virtual Azure dan set skala komputer virtual.

Jika Anda mengalami masalah saat menyebarkan ekstensi, tinjau output eksekusi yang dicatat ke file yang ditemukan di direktori berikut:

C:\WindowsAzure\Logs\Plugins\Microsoft.Azure.Diagnostics.ApplicationMonitoringWindows\<version>\

Jika ekstensi Anda berhasil disebarkan tetapi Anda tidak dapat melihat telemetri, itu bisa menjadi salah satu masalah berikut yang tercakup dalam pemecahan masalah Agen:

  • DLL yang bertentangan di direktori bin aplikasi
  • Konflik dengan konfigurasi bersama IIS

Menguji konektivitas antara host aplikasi Anda dan layanan penyerapan

Application Insights SDK dan agen mengirim telemetri untuk diserap sebagai panggilan REST ke titik akhir penyerapan kami. Anda dapat menguji konektivitas dari server web atau komputer host aplikasi Anda ke titik akhir layanan penyerapan dengan menggunakan klien REST mentah dari PowerShell atau perintah curl. Lihat Memecahkan masalah telemetri aplikasi yang hilang di Azure Monitor Application Insights.

Catatan rilis

2.8.44

  • Application Insights .NET/.NET Core SDK yang diperbarui ke bidang 2.20.1 - merah.
  • Pengumpulan kueri SQL yang diaktifkan.
  • Dukungan yang diaktifkan untuk autentikasi Microsoft Entra.

2.8.42

Application Insights .NET/.NET Core SDK yang diperbarui ke bidang 2.18.1 - merah.

2.8.41

Menambahkan fitur autoinstrumentasi ASP.NET Core.

Langkah berikutnya