Mengaktifkan Snapshot Debugger untuk aplikasi.NET di Azure App Service

Snapshot Debugger saat ini mendukung aplikasi ASP.NET dan ASP.NET Core yang berjalan di Azure App Service pada paket layanan Windows.

Catatan

Sebaiknya jalankan aplikasi Anda pada tingkat layanan Dasar atau yang lebih tinggi ketika menggunakan Snapshot Debugger. Untuk sebagian besar aplikasi, tingkat layanan Gratis dan Bersama tidak memiliki cukup memori atau ruang disk untuk menyimpan rekam jepret. Tingkat Konsumsi saat ini tidak tersedia untuk Snapshot Debugger.

Aktifkan Snapshot Debugger

Snapshot Debugger telah diinstal sebagai bagian dari runtime Azure App Services, tetapi Anda perlu mengaktifkannya untuk mendapatkan rekam jepret untuk aplikasi App Service Anda. Untuk mengaktifkan Snapshot Debugger untuk aplikasi, ikuti petunjuk di bawah ini:

Catatan

Jika Anda menggunakan versi pratinjau.NET Core, atau aplikasi Anda merujuk ke SDK Application Insights secara langsung atau tidak langsung melalui perakitan dependen, ikuti petunjuk untuk Mengaktifkan Snapshot Debugger untuk lingkungan lain untuk menyertakan paket NuGet Microsoft.ApplicationInsights.SnapshotCollector dengan aplikasi, lalu selesaikan petunjuk selebihnya di bawah ini.

Catatan

Penginstalan tanpa kode Application Insights Snapshot Debugger mengikuti kebijakan dukungan.NET Core. Untuk informasi selengkapnya tentang runtime yang didukung, lihat Kebijakan Dukungan.NET Core.

Setelah menyebarkan aplikasi .NET app:

  1. Buka panel kontrol untuk Azure App Service.

  2. Buka laman Setelan>Application Insights.

    Screenshot showing the Enable App Insights on App Services portal.

  3. Ikuti petunjuk di halaman untuk membuat sumber daya baru atau pilih sumber daya App Insights yang ada untuk memantau aplikasi Anda.

  4. Alihkan pengalih Snapshot Debugger menjadi Aktif.

    Screenshot showing how to add App Insights site extension.

  5. Snapshot Debugger kini diaktifkan menggunakan Pengaturan Aplikasi App Services.

    Screenshot showing App Setting for Snapshot Debugger.

Jika Anda menjalankan jenis layanan Azure yang berbeda, berikut adalah instruksi untuk mengaktifkan Snapshot Debugger di platform lain yang didukung:

Mengaktifkan Snapshot Debugger untuk cloud lain

Saat ini satu-satunya wilayah yang memerlukan modifikasi titik akhir adalah Azure Government dan Microsoft Azure yang dioperasikan oleh 21Vianet melalui Application Insights Koneksi ion String.

Properti String Koneksi Cloud Pemerintah AS Cloud Tiongkok
SnapshotEndpoint https://snapshot.monitor.azure.us https://snapshot.monitor.azure.cn

Untuk informasi selengkapnya tentang penimpaan koneksi lainnya, lihat dokumentasi Application Insights.

Mengaktifkan autentikasi Microsoft Entra untuk penyerapan rekam jepret

Application Insights Snapshot Debugger mendukung autentikasi Microsoft Entra untuk penyerapan rekam jepret. Ini berarti, agar semua snapshot aplikasi Anda diserap, aplikasi Anda harus diautentikasi dan memberikan pengaturan aplikasi yang diperlukan ke agen Snapshot Debugger.

Mulai hari ini, Snapshot Debugger hanya mendukung autentikasi Microsoft Entra saat Anda mereferensikan dan mengonfigurasi ID Microsoft Entra menggunakan Application Insights SDK di aplikasi Anda.

Untuk mengaktifkan ID Microsoft Entra untuk penyerapan rekam jepret:

  1. Buat dan tambahkan identitas terkelola yang ingin Anda gunakan untuk mengautentikasi sumber daya Application Insights ke App Service Anda.

    1. Untuk identitas Terkelola yang Ditugaskan Sistem, lihat dokumentasi berikut.

    2. Untuk identitas Terkelola yang Ditetapkan Pengguna, lihat dokumentasi berikut.

  2. Konfigurasikan dan aktifkan ID Microsoft Entra di sumber daya Application Insights Anda. Untuk informasi selengkapnya, lihat dokumentasi

  3. Tambahkan pengaturan aplikasi berikut, yang digunakan untuk memberi tahu agen Snapshot Debugger tentang identitas terkelola yang akan digunakan:

Untuk Identitas yang DitetapkanSistem:

Pengaturan Aplikasi Nilai
APPLICATIONINSIGHTS_AUTHENTICATION_STRING Authorization=AD

Untuk Identitas yang Ditetapkan Pengguna:

Pengaturan Aplikasi Nilai
APPLICATIONINSIGHTS_AUTHENTICATION_STRING Otorisasi=AD; ClientID={ID Klien dari Identitas yang Ditetapkan Pengguna}

Menonaktifkan Snapshot Debugger

Untuk menonaktifkan Snapshot Debugger, harap ulangi langkah aktivasi. Namun, alihkan pengalih Snapshot Debugger menjadi Nonaktif.

Templat Azure Resource Manager

Untuk Layanan Azure App Service, Anda dapat mengatur pengaturan aplikasi dalam template Azure Resource Manager untuk mengaktifkan Snapshot Debugger dan Profiler. Contohnya:

{
  "apiVersion": "2015-08-01",
  "name": "[parameters('webSiteName')]",
  "type": "Microsoft.Web/sites",
  "location": "[resourceGroup().location]",
  "dependsOn": [
    "[variables('hostingPlanName')]"
  ],
  "tags": { 
    "[concat('hidden-related:', resourceId('Microsoft.Web/serverfarms', variables('hostingPlanName')))]": "empty",
    "displayName": "Website"
  },
  "properties": {
    "name": "[parameters('webSiteName')]",
    "serverFarmId": "[resourceId('Microsoft.Web/serverfarms', variables('hostingPlanName'))]"
  },
  "resources": [
    {
      "apiVersion": "2015-08-01",
      "name": "appsettings",
      "type": "config",
      "dependsOn": [
        "[parameters('webSiteName')]",
        "[concat('AppInsights', parameters('webSiteName'))]"
      ],
      "properties": {
        "APPINSIGHTS_INSTRUMENTATIONKEY": "[reference(resourceId('Microsoft.Insights/components', concat('AppInsights', parameters('webSiteName'))), '2014-04-01').InstrumentationKey]",
        "APPINSIGHTS_PROFILERFEATURE_VERSION": "1.0.0",
        "APPINSIGHTS_SNAPSHOTFEATURE_VERSION": "1.0.0",
        "DiagnosticServices_EXTENSION_VERSION": "~3",
        "ApplicationInsightsAgent_EXTENSION_VERSION": "~2"
      }
    }
  ]
},

Skenario Tidak Didukung

Di bawah ini Anda dapat menemukan skenario tempat Pengumpul Snapshot tidak didukung:

Skenario Efek Samping Rekomendasi
Saat menggunakan Snapshot Pengumpul SDK di aplikasi Anda secara langsung (.csproj) dan Anda telah mengaktifkan opsi lanjutan "Interop". SDK Application Insights lokal (termasuk telemetri Pengumpul Snapshot) akan hilang. Oleh karena itu, tidak ada rekam jepret yang akan tersedia.
Aplikasi Anda bisa crash saat mulai dengan System.ArgumentException: telemetryProcessorTypedoes not implement ITelemetryProcessor.
Pelajari lebih lanjut tentang fitur Application Insights "Interop".
Jika Anda menggunakan opsi lanjutan "Interop", gunakan injeksi Kolektor Snapshot tanpa kode (diaktifkan melalui portal Azure).

Langkah berikutnya

  • Hasilkan lalu lintas ke aplikasi Anda yang dapat memicu pengecualian. Kemudian, tunggu 10 hingga 15 menit agar rekam jepret dikirim ke instans Application Insights.
  • Lihat rekam jepret di portal Microsoft Azure.
  • Untuk bantuan tentang pemecahan masalah Snapshot Debugger, lihat Pemecahan masalah Snapshot Debugger.