Bagikan melalui


Log diagnostik - Jaringan Pengiriman Konten Azure

Penting

Azure CDN Standard dari Microsoft (klasik) akan dihentikan pada 30 September 2027. Untuk menghindari gangguan layanan apa pun, penting untuk memigrasikan profil Azure CDN Standard dari Microsoft (klasik) ke tingkat Azure Front Door Standard atau Premium paling lambat 30 September 2027. Untuk informasi selengkapnya, lihat Penghentian Layanan Azure CDN Standard dari Microsoft (klasik).

Azure CDN dari Edgio dihentikan pada 15 Januari 2025. Untuk informasi selengkapnya, lihat Bagian Tanya Jawab Umum penghentian Azure CDN dari Edgio.

Dengan Log diagnostik Azure, Anda dapat melihat analitik inti dan menyimpannya ke satu atau beberapa tujuan berikut:

  • Akun Azure Storage
  • Ruang kerja Analitik Log
  • Azure Event Hubs

Fitur ini tersedia pada titik akhir jaringan pengiriman konten untuk semua tingkat harga.

Log diagnostik memungkinkan Anda mengekspor metrik penggunaan dasar dari titik akhir jaringan pengiriman konten Anda ke berbagai jenis sumber sehingga Anda dapat menggunakannya dengan cara yang disesuaikan. Anda dapat melakukan jenis ekspor data berikut:

  • Mengekspor data ke penyimpanan blob, mengekspor ke CSV, dan membuat grafik di Excel.
  • Mengekspor data ke Event Hubs dan menghubungkan dengan data dari layanan Azure lainnya.
  • Mengekspor data ke log Azure Monitor dan melihat data di ruang kerja Log Analytics Anda sendiri

Profil Azure Content Delivery Network diperlukan untuk langkah-langkah berikut. Referensi Membuat profil dan titik akhir Jaringan Pengiriman Konten Azure sebelum melanjutkan.

Aktifkan pencatatan dengan portal Azure

Ikuti langkah-langkah ini untuk mengaktifkan pengelogan untuk titik akhir Azure Content Delivery Network Anda:

  1. Masuk ke portal Azure.

  2. Di portal Azure, navigasikan ke Semua sumber daya>your-cdn-profile.

  3. Pilih titik akhir jaringan pengiriman konten yang ingin Anda aktifkan log diagnostiknya.

  4. Pilih Log diagnostik di bagian Pemantauan .

Mengaktifkan pengelogan dengan Azure Storage

Untuk menggunakan akun penyimpanan untuk menyimpan log, ikuti langkah-langkah berikut:

Catatan

Akun penyimpanan diperlukan untuk menyelesaikan langkah-langkah ini. Untuk informasi selengkapnya, lihat Membuat akun Azure Storage.

  1. Untuk Nama pengaturan diagnostik, masukkan nama untuk pengaturan log diagnostik Anda.

  2. Pilih Arsipkan ke akun penyimpanan, lalu pilih CoreAnalytics.

  3. Untuk Retensi (hari), pilih jumlah hari retensi. Retensi selama nol hari berarti log disimpan tanpa batas waktu.

  4. Pilih akun langganan dan penyimpanan untuk log.

  5. Pilih Simpan.

Mengirim ke Log Analytics

Untuk menggunakan Log Analytics untuk log, ikuti langkah-langkah berikut:

Catatan

Ruang kerja Analitik Log diperlukan untuk menyelesaikan langkah-langkah ini. Untuk informasi selengkapnya, lihat Membuat ruang kerja Log Analytics di Portal Azure.

  1. Untuk Nama pengaturan diagnostik, masukkan nama untuk pengaturan log diagnostik Anda.

  2. Pilih Kirim ke Log Analytics, lalu pilih CoreAnalytics.

  3. Pilih langganan dan ruang kerja Log Analytics untuk log.

    Cuplikan layar log diagnostik - Analisis Log.

  4. Pilih Simpan.

Melakukan streaming ke hub acara

Untuk menggunakan hub peristiwa untuk log, ikuti langkah-langkah berikut:

Catatan

Hub peristiwa diperlukan untuk menyelesaikan langkah-langkah ini. Untuk informasi selengkapnya, lihat Panduan Cepat: Membuat Hub Acara menggunakan Portal Azure.

  1. Untuk Nama pengaturan diagnostik, masukkan nama untuk pengaturan log diagnostik Anda.

  2. Pilih Streaming ke hub acara, lalu pilih CoreAnalytics.

  3. Pilih langganan dan namespace hub peristiwa untuk log.

    Cuplikan layar log Diagnostik - Pusat aktivitas.

  4. Pilih Simpan.

Aktifkan pengelogan dengan PowerShell

Contoh berikut menunjukkan cara mengaktifkan log diagnostik melalui Cmdlet Azure PowerShell.

Catatan

Sebaiknya Anda menggunakan modul Azure Az PowerShell untuk berinteraksi dengan Azure. Untuk memulai, lihat Menginstal Azure PowerShell. Untuk mempelajari cara bermigrasi ke modul Az PowerShell, lihat Memigrasikan Azure PowerShell dari AzureRM ke Az.

Mengaktifkan log diagnostik di akun penyimpanan

  1. Masuk ke Azure PowerShell:

    Connect-AzAccount 
    
  2. Untuk mengaktifkan Log Diagnostik di akun penyimpanan, masukkan perintah ini. Ganti variabel dengan nilai Anda:

    $rsg = <your-resource-group-name>
    $cdnprofile = <your-cdn-profile-name>
    $cdnendpoint = <your-cdn-endpoint-name>
    $storageacct = <your-storage-account-name>
    $diagname = <your-diagnostic-setting-name>
    
    $cdn = Get-AzCdnEndpoint -ResourceGroupName $rsg -ProfileName $cdnprofile -EndpointName $cdnendpoint
    
    $storage = Get-AzStorageAccount -ResourceGroupName $rsg -Name $storageacct
    
    Set-AzDiagnosticSetting -Name $diagname -ResourceId $cdn.id -StorageAccountId $storage.id -Enabled $true -Categories CoreAnalytics
    

Mengaktifkan log diagnostik untuk ruang kerja Log Analytics

  1. Masuk ke Azure PowerShell:

    Connect-AzAccount 
    
  2. Untuk mengaktifkan Log Diagnostik untuk Log Analytics workspace, masukkan perintah ini. Ganti variabel dengan nilai Anda:

    $rsg = <your-resource-group-name>
    $cdnprofile = <your-cdn-profile-name>
    $cdnendpoint = <your-cdn-endpoint-name>
    $workspacename = <your-log-analytics-workspace-name>
    $diagname = <your-diagnostic-setting-name>
    
    $cdn = Get-AzCdnEndpoint -ResourceGroupName $rsg -ProfileName $cdnprofile -EndpointName $cdnendpoint
    
    $workspace = Get-AzOperationalInsightsWorkspace -ResourceGroupName $rsg -Name $workspacename
    
    Set-AzDiagnosticSetting -Name $diagname -ResourceId $cdn.id -WorkspaceId $workspace.ResourceId -Enabled $true -Categories CoreAnalytics
    

Mengaktifkan log diagnostik untuk namespace event hub

  1. Masuk ke Azure PowerShell:

    Connect-AzAccount 
    
  2. Untuk mengaktifkan Log Diagnostik untuk Log Analytics workspace, masukkan perintah ini. Ganti variabel dengan nilai Anda:

    $rsg = <your-resource-group-name>
    $cdnprofile = <your-cdn-profile-name>
    $cdnendpoint = <your-cdn-endpoint-name>
    $eventhubname = <your-event-hub-namespace-name>
    $diagname = <your-diagnostic-setting-name>
    
    $cdn = Get-AzCdnEndpoint -ResourceGroupName $rsg -ProfileName $cdnprofile -EndpointName $cdnendpoint
    
    Set-AzDiagnosticSetting -Name $diagname -ResourceId $cdn.id -EventHubName $eventhubname -Enabled $true -Categories CoreAnalytics
    

Mengonsumsi log diagnostik dari Azure Storage

Bagian ini menjelaskan skema analitik inti jaringan pengiriman konten, organisasi di akun Azure Storage, dan menyediakan kode sampel untuk mengunduh log dalam file CSV.

Menggunakan Microsoft Azure Storage Explorer

Untuk mengunduh alat ini, lihat Azure Storage Explorer. Setelah mengunduh dan menginstal perangkat lunak, konfigurasikan untuk menggunakan akun Azure Storage yang sama yang telah dikonfigurasi sebagai tujuan untuk Log Diagnostik dari jaringan pengiriman konten.

  1. Buka Microsoft Azure Storage Explorer
  2. Cari lokasi akun penyimpanan
  3. Perluas elemen Kontainer Blob pada akun penyimpanan ini.
  4. Pilih kontainer bernama insights-logs-coreanalytics.
  5. Hasil muncul di panel kanan, dimulai dengan tingkat pertama, sebagai resourceId=. Lanjutkan memilih setiap level hingga Anda menemukan file PT1H.json. Untuk penjelasan tentang jalur, lihat format jalur Blob.
  6. Setiap file PT1H.json blob mewakili log analitik selama satu jam untuk titik akhir jaringan pengiriman konten tertentu atau domain kustomnya.
  7. Skema konten file JSON ini dijelaskan dalam skema bagian log analitik inti.

Format jalur blob

Log analitik inti dihasilkan setiap jam dan data dikumpulkan dan disimpan di dalam satu blob Azure sebagai payload JSON. Alat penjelajah penyimpanan menginterpretasikan '/' sebagai pemisah direktori dan menunjukkan hierarki. Jalur ke blob Azure muncul seolah-olah ada struktur hierarkis dan mewakili nama blob. Nama blob mengikuti konvensi penamaan berikut:

resourceId=/SUBSCRIPTIONS/{Subscription Id}/RESOURCEGROUPS/{Resource Group Name}/PROVIDERS/MICROSOFT.CDN/PROFILES/{Profile Name}/ENDPOINTS/{Endpoint Name}/ y=/m=/d=/h=/m=/PT1H.json

Deskripsi bidang:

Nilai Deskripsi
ID Langganan ID langganan Azure dalam format pengidentifikasi unik global (GUID).
Nama Grup Sumber Daya Nama grup sumber daya tempat sumber daya jaringan pengiriman konten berada.
Nama Profil Nama Profil jaringan pengiriman konten
Nama titik akhir Nama Titik Akhir jaringan pengiriman konten
Tahun Format angka empat digit untuk tahun, contohnya, 2017
Bulan Representasi dua digit untuk angka bulan. 01=Januari ... 12=Desember
Hari Representasi dua digit hari dalam bulan
PT1H.json File JSON aktual tempat data analitik disimpan

Mengekspor data analitik inti ke file CSV

Untuk mengakses analitik inti, kode sampel untuk alat disediakan. Alat ini memungkinkan pengunduhan file JSON ke dalam format file yang dipisahkan koma datar, yang dapat digunakan untuk membuat bagan atau agregasi lainnya.

Berikut cara menggunakan alat ini:

  1. Buka tautan GitHub: https://github.com/Azure-Samples/azure-cdn-samples/tree/master/CoreAnalytics-ExportToCsv
  2. Unduh kode.
  3. Ikuti instruksi untuk mengompilasi dan mengonfigurasi.
  4. Jalankan alat.
  5. Hasil file CSV menunjukkan data analitik dalam hierarki datar sederhana.

Penundaan log data

Data log Microsoft tertunda hingga 1 jam. Penundaan ini disebabkan oleh waktu yang diperlukan untuk memproses dan menyimpan data.

Jenis log diagnostik untuk analitik inti jaringan pengiriman konten

Microsoft saat ini hanya menawarkan log inti analitik, yang berisi metrik yang menunjukkan statistik respons HTTP dan statistik keluar seperti yang terlihat dari titik-titik tepi (POPs/edges) jaringan pengiriman konten.

Detil-detil metrik analitik utama

Tabel berikut ini memperlihatkan daftar metrik yang tersedia di log analitik inti.

Tidak semua metrik tersedia dari semua penyedia, meskipun perbedaannya sedikit. Tabel juga menampilkan apakah metrik yang diberikan tersedia dari penyedia. Metrik hanya tersedia untuk titik akhir jaringan pengiriman konten yang memiliki lalu lintas di dalamnya.

Metrik Deskripsi
JumlahTotalPermintaan Jumlah total hit permintaan selama periode ini.
RequestCountHttpStatus2xx Jumlah semua permintaan yang menghasilkan kode HTTP 2xx (misalnya, 200, 202).
RequestCountHttpStatus3xx Jumlah semua permintaan yang menghasilkan kode HTTP 3xx (misalnya, 300, 302).
JumlahPermintaanStatusHTTP4xx Jumlah semua permintaan yang menghasilkan kode HTTP 4xx (misalnya, 400, 404).
RequestCountHttpStatus5xx Jumlah semua permintaan yang menghasilkan kode HTTP 5xx (misalnya, 500, 504).
JumlahPermintaanStatusHttpLainnya Jumlah semua kode HTTP lainnya (selain 2xx-5xx).
RequestCountHttpStatus200 Jumlah semua permintaan yang menghasilkan respons kode HTTP 200.
RequestCountHttpStatus206 Jumlah semua permintaan yang menghasilkan respons kode HTTP 206.
JumlahPermintaanHttpStatus302 Jumlah semua permintaan yang menghasilkan respons kode HTTP 302.
RequestCountHttpStatus304 Jumlah semua permintaan yang menghasilkan respons kode HTTP 304.
JumlahPermintaanHttpStatus404 Jumlah semua permintaan yang menghasilkan respons kode HTTP 404.
RequestCountCacheHit Jumlah semua permintaan yang menghasilkan cache hit. Aset dikirim langsung dari POP ke klien.
JumlahPermintaanCacheTidakAda Jumlah semua permintaan yang menghasilkan cache miss. Cache miss berarti aset tidak ditemukan di POP terdekat dengan pelanggan, dan diambil dari sumber asalnya.
RequestCountCacheNoCache Jumlah semua permintaan ke aset yang dicegah untuk di-cache karena adanya konfigurasi pengguna pada edge.
HitunganPermintaanCacheTidakDapatDi-cache Jumlah semua permintaan ke aset yang pencegahan pencachannya dilakukan oleh header Cache-Control dan Expires aset. Jumlah ini menunjukkan bahwa ini tidak boleh di-cache di POP atau oleh klien HTTP.
EgressTotal Transfer data keluar diukur dalam GB
EgressHttpStatus2xx Transfer data keluar* untuk respons dengan status HTTP 2xx dalam gigabyte.
EgressHttpStatus3xx Transfer data luar untuk respons dengan kode status HTTP 3xx dalam GB.
EgressHttpStatus4xx Pengiriman data keluar untuk respons dengan kode status HTTP 4xx dalam GB.
EgressHttpStatus5xx Pengiriman data keluar untuk respons dengan kode status HTTP 5xx dalam satuan GB.
StatusHttpEgressLainnya Transfer data keluar untuk respons dengan kode status HTTP lain dalam GB.
EgressCacheHit Transfer data keluar untuk respons yang dikirimkan langsung dari cache jaringan pengiriman konten pada POPs/Edges jaringan pengiriman konten.
EgressCacheMiss Transfer data keluar untuk respons yang tidak ditemukan di server POP terdekat dan diambil dari server asal.
EgressCacheNoCache Transfer data keluar untuk aset yang dicegah dari caching karena konfigurasi pengguna di jaringan tepi.
Cache Egress Tidak Dapat Di-cache Transfer data keluar untuk aset yang dicegah dari caching oleh header Cache-Control atau Expires aset. Menunjukkan bahwa jangan di-cache di POP atau oleh klien HTTP.

*Transfer data keluar mengacu pada lalu lintas yang dikirimkan dari server POP jaringan pengiriman konten ke klien.

Skema log inti analitik

Semua log disimpan dalam format JSON dan setiap entri memiliki bidang string sesuai dengan skema berikut:

    "records": [
        {
            "time": "2017-04-27T01:00:00",
            "resourceId": "<ARM Resource Id of the CDN Endpoint>",
            "operationName": "Microsoft.Cdn/profiles/endpoints/contentDelivery",
            "category": "CoreAnalytics",
            "properties": {
                "DomainName": "<Name of the domain for which the statistics is reported>",
                "RequestCountTotal": integer value,
                "RequestCountHttpStatus2xx": integer value,
                "RequestCountHttpStatus3xx": integer value,
                "RequestCountHttpStatus4xx": integer value,
                "RequestCountHttpStatus5xx": integer value,
                "RequestCountHttpStatusOthers": integer value,
                "RequestCountHttpStatus200": integer value,
                "RequestCountHttpStatus206": integer value,
                "RequestCountHttpStatus302": integer value,
                "RequestCountHttpStatus304": integer value,
                "RequestCountHttpStatus404": integer value,
                "RequestCountCacheHit": integer value,
                "RequestCountCacheMiss": integer value,
                "RequestCountCacheNoCache": integer value,
                "RequestCountCacheUncacheable": integer value,
                "RequestCountCacheOthers": integer value,
                "EgressTotal": double value,
                "EgressHttpStatus2xx": double value,
                "EgressHttpStatus3xx": double value,
                "EgressHttpStatus4xx": double value,
                "EgressHttpStatus5xx": double value,
                "EgressHttpStatusOthers": double value,
                "EgressCacheHit": double value,
                "EgressCacheMiss": double value,
                "EgressCacheNoCache": double value,
                "EgressCacheUncacheable": double value,
                "EgressCacheOthers": double value,
            }
        }

    ]
}

Dimana time mewakili waktu awal batas jam untuk mana statistik dilaporkan. Metrik yang tidak didukung oleh penyedia jaringan pengiriman konten, alih-alih nilai ganda atau bilangan bulat, menghasilkan nilai null. Nilai null ini menunjukkan tidak adanya metrik, dan berbeda dengan nilai 0. Satu set metrik untuk setiap domain dikonfigurasi pada titik akhir.

Contoh properti:

{
     "DomainName": "azurecdntest.azureedge.net",
     "RequestCountTotal": 480,
     "RequestCountHttpStatus2xx": 480,
     "RequestCountHttpStatus3xx": 0,
     "RequestCountHttpStatus4xx": 0,
     "RequestCountHttpStatus5xx": 0,
     "RequestCountHttpStatusOthers": 0,
     "RequestCountHttpStatus200": 480,
     "RequestCountHttpStatus206": 0,
     "RequestCountHttpStatus302": 0,
     "RequestCountHttpStatus304": 0,
     "RequestCountHttpStatus404": 0,
     "RequestCountCacheHit": null,
     "RequestCountCacheMiss": null,
     "RequestCountCacheNoCache": null,
     "RequestCountCacheUncacheable": null,
     "RequestCountCacheOthers": null,
     "EgressTotal": 0.09,
     "EgressHttpStatus2xx": null,
     "EgressHttpStatus3xx": null,
     "EgressHttpStatus4xx": null,
     "EgressHttpStatus5xx": null,
     "EgressHttpStatusOthers": null,
     "EgressCacheHit": null,
     "EgressCacheMiss": null,
     "EgressCacheNoCache": null,
     "EgressCacheUncacheable": null,
     "EgressCacheOthers": null
}

Sumber daya lainnya