Azure VM'leri ve sanal makine ölçek kümeleri için Application Insights

Azure Sanal Makineler veya Azure Sanal Makine Ölçek Kümeleri üzerinde çalışan ASP.NET ve ASP.NET Core IIS tarafından barındırılan uygulamalarınız için izlemeyi etkinleştirmek artık her zamankinden daha kolay. Kodunuzu değiştirmeden Application Insights kullanmanın tüm avantajlarını elde edin.

Bu makale, Application Insights Aracısı'nı kullanarak Application Insights izlemesini etkinleştirme konusunda size yol gösterir. Ayrıca, büyük ölçekli dağıtımlar için süreci otomatikleştirmeye yönelik ön rehberlik sağlar.

Application Insights’ı Etkinleştir

Otomatik müdahaleyi etkinleştirmek kolaydır. Gelişmiş yapılandırma gerekli değildir.

Desteklenen otomatik dağıtım senaryolarının tam listesi için bkz . Desteklenen ortamlar, diller ve kaynak sağlayıcıları.

Not

Otomatik yetkisiz erişim ASP.NET, ASP.NET Çekirdek IIS tarafından barındırılan uygulamalar ve Java için kullanılabilir. Azure sanal makinelerinde ve sanal makine ölçek kümelerinde barındırılan Node.js ve Python uygulamalarını işaretlemek için SDK kullanın.

Application Insights Aracısı, SDK ile aynı bağımlılık sinyallerini otomatik olarak alır. Daha fazla bilgi edinmek için bkz . Bağımlılık otomatik toplama.

Application Insights Aracısı uzantısını yüklemeden önce bir bağlantı dizesi gerekir. Yeni bir Application Insights kaynağı oluşturun veya mevcut bir Application Insights kaynağından bağlantı dizesi kopyalayın.

Sanal makineler için izlemeyi etkinleştirme

VM'ler için izlemeyi etkinleştirmek için Azure portalını veya PowerShell'i kullanabilirsiniz.

Azure portal

  1. Azure portalında Application Insights kaynağınıza gidin. bağlantı dizesi panoya kopyalayın.

    bağlantı dizesi gösteren ekran görüntüsü.

  2. Sanal makinenize gidin. Sol taraftaki menünün Ayarlar bölümünde Uzantılar + uygulamalar>Ekle'yi seçin.

    Uzantılar + uygulamalar bölmesinin Ekle düğmesinin gösterildiği ekran görüntüsü.

  3. Application Insights Aracısı>İleri'yi seçin.

    İleri düğmesini içeren Uzantı Yükle bölmesini gösteren ekran görüntüsü.

  4. 1. adımda kopyaladığınız bağlantı dizesi yapıştırın ve Gözden geçir + oluştur'u seçin.

    Gözden Geçir ve oluştur düğmesini içeren Oluştur sekmesini gösteren ekran görüntüsü.

PowerShell

Not

PowerShell'de yeni misiniz? Başlarken kılavuzuna göz atın.

Application Insights Aracısını Azure sanal makineleri için bir uzantı olarak yükleyin veya güncelleştirin:

# 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

Not

Daha karmaşık ölçekli dağıtımlar için, birden çok VM'de Application Insights Aracısı uzantısını yüklemek veya güncelleştirmek için bir PowerShell döngüsü kullanabilirsiniz.

Azure sanal makineleri için Application Insights Aracısı uzantısının durumunu sorgulayın:

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

Azure sanal makineleri için yüklü uzantıların listesini alın:

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

Application Insights Aracısı uzantısını Azure sanal makinelerinden kaldırın:

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

Not

Application Insights Aracısı uzantısını dağıtmak için kullandığınız bağlantı dizesi ilişkili Application Insights kaynağında Canlı Ölçüm Akışı'nı seçerek yüklemeyi doğrulayın. Birden çok sanal makineden veri gönderiyorsanız, Sunucu Adı altında hedef Azure sanal makinelerini seçin. Verilerin akmaya başlaması bir dakika kadar sürebilir.

Sanal makine ölçek kümeleri için izlemeyi etkinleştirme

Sanal makine ölçek kümelerini izlemeyi etkinleştirmek için Azure portalını veya PowerShell'i kullanabilirsiniz.

Azure portal

VM'ler için önceki adımları izleyin, ancak VM'niz yerine sanal makine ölçek kümelerinize gidin.

PowerShell

Application Insights Aracısı'nı sanal makine ölçek kümeleri için uzantı olarak yükleyin veya güncelleştirin:

# 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

Sanal makine ölçek kümeleri için yüklü uzantıların listesini alın:

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

Uygulama izleme uzantısını sanal makine ölçek kümelerinden kaldırın:

# 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

Sorun giderme

Azure sanal makinelerinde ve sanal makine ölçek kümelerinde çalışan .NET uygulamaları için Application Insights İzleme Aracısı uzantısıyla ilgili sorun giderme ipuçlarını bulun.

Uzantıyı dağıtırken sorun yaşıyorsanız, aşağıdaki dizinlerde bulunan dosyalara günlüğe kaydedilen yürütme çıkışını gözden geçirin:

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

Uzantınız başarıyla dağıtıldıysa ancak telemetriyi göremiyorsanız, aracı sorunlarını giderme bölümünde ele alınan aşağıdaki sorunlardan biri olabilir:

  • Bir uygulamanın bin dizininde çakışan DLL'ler
  • IIS paylaşılan yapılandırmasıyla çakışma

Uygulama konağınızla alma hizmeti arasındaki bağlantıyı test etme

Application Insights SDK'ları ve aracıları, alma uç noktalarımıza REST çağrıları olarak alınabilmek için telemetri gönderir. PowerShell veya curl komutlarından ham REST istemcilerini kullanarak web sunucunuzdan veya uygulama konak makinenizden alma hizmeti uç noktalarına bağlantıyı test edebilirsiniz. Bkz . Azure İzleyici Application Insights'ta eksik uygulama telemetrisi sorunlarını giderme.

Sürüm notları

2.8.44

  • Application Insights .NET/.NET Core SDK'sı 2.20.1 - kırmızı alana güncelleştirildi.
  • SQL sorgu koleksiyonu etkinleştirildi.
  • Microsoft Entra kimlik doğrulaması için destek etkinleştirildi.

2.8.42

Application Insights .NET/.NET Core SDK'sı 2.18.1 - kırmızı alana güncelleştirildi.

2.8.41

ASP.NET Core otomatik yetkisiz erişim özelliği eklendi.

Sonraki adımlar