Bagikan melalui


Mengonfigurasi BYOS untuk Application Insights Profiler untuk .NET dan Snapshot Debugger

Saat Anda menggunakan Application Insights Profiler untuk .NET atau Snapshot Debugger, artefak yang dihasilkan oleh aplikasi Anda diunggah secara default ke akun Azure Storage melalui internet publik. Untuk artefak dan akun penyimpanan ini, Microsoft mengontrol dan menanggung biaya untuk:

  • Pemrosesan dan analisis.
  • Kebijakan manajemen enkripsi saat tidak aktif dan seumur hidup.

Sementara itu, ketika Anda "membawa penyimpanan Anda sendiri" (BYOS), artefak diunggah ke akun penyimpanan yang hanya Anda kontrol dan atasi biaya untuk:

  • Kebijakan enkripsi saat tidak aktif dan kebijakan manajemen Seumur Hidup.
  • Akses jaringan.

Catatan

BYOS diperlukan jika Anda mengaktifkan Azure Private Link atau kunci yang dikelola pelanggan.

Dalam panduan ini, Anda akan mempelajari cara:

  • Berikan akses Layanan Diagnostik ke akun penyimpanan Anda.
  • Tautkan akun penyimpanan Anda dengan sumber daya Application Insights Anda.
  • Pelajari bagaimana akun penyimpanan Anda diakses.

Prasyarat

  • Verifikasi bahwa Anda membuat akun penyimpanan di lokasi yang sama dengan sumber daya Application Insights Anda.
  • Jika Anda mengaktifkan Private Link, izinkan koneksi ke Layanan Microsoft Tepercaya kami dari jaringan virtual Anda.

Memberikan akses Layanan Diagnostik ke akun penyimpanan Anda

Akun penyimpanan BYOS ditautkan ke sumber daya Application Insights. Mulailah dengan memberikan peran ke Storage Blob Data Contributor aplikasi Microsoft Entra bernama Diagnostic Services Trusted Storage Access melalui halaman Access Control (IAM) di akun penyimpanan Anda.

  1. Pilih Kontrol akses (IAM).

  2. Pilih Tambahkan>Tambahkan penetapan peran untuk membuka halaman Tambahkan penetapan peran.

  3. Tetapkan peran berikut.

    Pengaturan Nilai
    Peran Kontributor Data Blob Penyimpanan
    Tetapkan akses ke Pengguna, grup, atau perwakilan layanan
    Anggota Akses Penyimpanan Tepercaya Layanan Diagnostik

    Cuplikan layar yang memperlihatkan halaman penetapan peran di portal Azure.

    Setelah ditetapkan, Anda dapat melihat peran di bawah bagian Penetapan peran. Cuplikan layar yang memperlihatkan layar IAM setelah penetapan Peran.

Catatan

Jika Anda juga menggunakan Private Link, satu konfigurasi lagi diperlukan untuk mengizinkan koneksi ke Layanan Microsoft Tepercaya kami dari jaringan virtual Anda. Untuk informasi selengkapnya, lihat Dokumentasi keamanan jaringan penyimpanan.

Anda memiliki tiga opsi untuk mengonfigurasi BYOS untuk diagnostik tingkat kode seperti .NET Profiler dan Snapshot Debugger:

  • Cmdlet Azure PowerShell
  • Azure CLI
  • Templat Azure Resource Manager

Sebelum memulai, instal Azure PowerShell 4.2.0 atau yang lebih baru.

  1. Pasang ekstensi Application Insights PowerShell.

    Install-Module -Name Az.ApplicationInsights -Force
    
  2. Masuk menggunakan akun langganan Azure Anda.

    Connect-AzAccount -Subscription "{subscription_id}"
    

    Untuk informasi selengkapnya tentang cara masuk, lihat dokumentasi Connect-AzAccount.

  3. Hapus akun penyimpanan sebelumnya yang ditautkan ke sumber daya Application Insights Anda.

    Pola:

    Get-AzApplicationInsights -ResourceGroupName "{resource_group_name}" -Name "{application_insights_name}" | Remove-AzApplicationInsightsLinkedStorageAccount
    

    Contoh:

    Get-AzApplicationInsights -ResourceGroupName "byos-test" -Name "byos-test-westus2-ai" | Remove-AzApplicationInsightsLinkedStorageAccount
    
  4. Hubungkan akun penyimpanan Anda dengan sumber daya Application Insights Anda.

    Pola:

    $storageAccount = Get-AzStorageAccount -ResourceGroupName "{resource_group_name}" -Name "{storage_account_name}"
    Get-AzApplicationInsights -ResourceGroupName "{resource_group_name}" -Name "{application_insights_name}" | New-AzApplicationInsightsLinkedStorageAccount -LinkedStorageAccountResourceId $storageAccount.Id
    

    Contoh:

    $storageAccount = Get-AzStorageAccount -ResourceGroupName "byos-test" -Name "byosteststoragewestus2"
    Get-AzApplicationInsights -ResourceGroupName "byos-test" -Name "byos-test-westus2-ai" | New-AzApplicationInsightsLinkedStorageAccount -LinkedStorageAccountResourceId $storageAccount.Id
    

Pemecahan Masalah

Memecahkan masalah umum dalam mengonfigurasi BYOS.

  • Untuk pemecahan masalah .NET Profiler umum, lihat dokumentasi pemecahan masalah Profiler.
  • Untuk pemecahan masalah Snapshot Debugger umum, lihat dokumentasi pemecahan masalah Snapshot Debugger.

Skenario: Skema templat '{schema_uri}' tidak didukung

Anda menerima kesalahan yang mirip dengan contoh berikut:

New-AzResourceGroupDeployment : 11:53:49 AM - Error: Code=InvalidTemplate; Message=Deployment template validation failed: 'Template schema
'https://schema.management.azure.com/schemas/2020-01-01/deploymentTemplate.json#' is not supported. Supported versions are
'2014-04-01-preview,2015-01-01,2018-05-01,2019-04-01,2019-08-01'. Please see https://aka.ms/arm-template for usage details.'.

Solusi

  • Pastikan bahwa $schema properti templat valid. Ini harus mengikuti pola ini:

    https://schema.management.azure.com/schemas/{schema_version}/deploymentTemplate.json#
    
  • Pastikan bahwa schema_version templat berada dalam nilai yang valid: 2014-04-01-preview, 2015-01-01, 2018-05-01, 2019-04-01, 2019-08-01.

Skenario: Tidak ada penyedia sumber daya terdaftar yang ditemukan untuk lokasi '{location}'

Anda menerima kesalahan yang mirip dengan contoh berikut:

New-AzResourceGroupDeployment : 6:18:03 PM - Resource microsoft.insights/components 'byos-test-westus2-ai' failed with message '{
  "error": {
    "code": "NoRegisteredProviderFound",
    "message": "No registered resource provider found for location 'westus2' and API version '2020-03-01-preview' for type 'components'. The supported api-versions are '2014-04-01,
2014-08-01, 2014-12-01-preview, 2015-05-01, 2018-05-01-preview'. The supported locations are ', eastus, southcentralus, northeurope, westeurope, southeastasia, westus2, uksouth,
canadacentral, centralindia, japaneast, australiaeast, koreacentral, francecentral, centralus, eastus2, eastasia, westus, southafricanorth, northcentralus, brazilsouth, switzerlandnorth,
australiasoutheast'."
  }
}'

Solusi

  • Pastikan bahwa apiVersion sumber daya microsoft.insights/components adalah 2015-05-01.
  • Pastikan bahwa apiVersion sumber daya linkedStorageAccount adalah 2020-03-01-preview.

Skenario: Lokasi akun penyimpanan harus cocok dengan lokasi komponen Application Insights

Anda menerima kesalahan yang mirip dengan contoh berikut:

New-AzResourceGroupDeployment : 1:01:12 PM - Resource microsoft.insights/components/linkedStorageAccounts 'byos-test-centralus-ai/serviceprofiler' failed with message '{
  "error": {
    "code": "BadRequest",
    "message": "Storage account location should match AI component location",
    "innererror": {
      "trace": [
        "System.ArgumentException"
      ]
    }
  }
}'

Solusi

Pastikan lokasi sumber daya Application Insights sama dengan akun penyimpanan.

Tanya jawab umum

Bagian ini memberikan jawaban atas pertanyaan umum tentang mengonfigurasi BYOS untuk .NET Profiler dan Snapshot Debugger.

Jika saya mengaktifkan .NET Profiler/Snapshot Debugger dan BYOS, apakah data saya dimigrasikan ke akun penyimpanan saya?

Tidak, itu tidak akan.

Apakah BYOS berfungsi dengan kunci enkripsi saat tidak aktif dan dikelola pelanggan?

Ya. Tepatnya, BYOS adalah persyaratan untuk mengaktifkan .NET Profiler/Snapshot Debugger dengan kunci manajer pelanggan.

Apakah BYOS berfungsi di lingkungan yang terisolasi dari internet?

Ya. BYOS adalah persyaratan untuk skenario jaringan yang terisolasi.

Ya, itu mungkin.

Jika saya mengaktifkan BYOS, dapatkah saya kembali menggunakan akun penyimpanan Diagnostic Services untuk menyimpan data yang dikumpulkan?

Ya, bisa, tetapi saat ini kami tidak mendukung migrasi data dari BYOS Anda.

Ya.

Bagaimana akun penyimpanan saya diakses?

  1. Agen yang berjalan di komputer virtual Anda atau Azure App Service mengunggah artefak (profil, rekam jepret, dan simbol) ke kontainer blob di akun Anda.

    Proses ini melibatkan kontak .NET Profiler atau Snapshot Debugger untuk mendapatkan token tanda tangan akses bersama ke blob baru di akun penyimpanan Anda.

  2. .NET Profiler atau Snapshot Debugger:

    • Menganalisis blob masuk.
    • Menulis kembali hasil analisis dan file log ke penyimpanan blob.

    Bergantung pada kapasitas komputasi yang tersedia, proses ini mungkin terjadi kapan saja setelah diunggah.

  3. Saat Anda melihat jejak Profiler atau analisis Snapshot Debugger, layanan mengambil hasil analisis dari penyimpanan blob.

Langkah berikutnya