Mengakses log diagnostik Azure Data Lake Storage Gen1

Pelajari cara mengaktifkan pembuatan log diagnostik untuk akun Azure Data Lake Storage Gen1 Anda dan cara menampilkan log yang dikumpulkan untuk akun Anda.

Organisasi dapat mengaktifkan pembuatan log diagnostik untuk akun Azure Data Lake Storage Gen1 mereka untuk mengumpulkan log audit akses data yang menyediakan informasi seperti daftar pengguna yang mengakses data, seberapa sering data diakses, berapa banyak data yang disimpan di akun, dll. Saat diaktifkan, diagnostik dan/atau permintaan dicatat dengan upaya terbaik. Baik entri log Permintaan maupun Diagnostik hanya dibuat jika ada permintaan yang dibuat pada titik akhir layanan.

Prasyarat

Mengaktifkan pembuatan log diagnostik untuk akun Data Lake Storage Gen1 Anda

  1. Masuk ke portal Microsoft Azure baru.

  2. Buka akun Data Lake Storage Gen1 Anda, dan dari bilah akun Data Lake Storage Gen1 Anda, klik Pengaturan diagnostik.

  3. Di bilah Pengaturan diagnostik, klik Aktifkan diagnostik.

    Cuplikan layar akun Data Lake Storage Gen 1 dengan opsi Pengaturan diagnostik dan opsi Aktifkan diagnostik dipanggil.

  4. Di bilah Pengaturan diagnostik, buat perubahan berikut untuk mengonfigurasi pembuatan log diagnostik.

    Cuplikan layar bagian Pengaturan diagnostik dengan kotak teks Nama dan opsi Simpan dipanggil.

    • Untuk Nama, masukkan nilai untuk konfigurasi log diagnostik.

    • Anda dapat memilih untuk menyimpan/memproses data dengan cara yang berbeda.

      • Pilih opsi untuk Mengarsipkan ke akun penyimpanan untuk menyimpan log ke akun Azure Storage. Anda menggunakan opsi ini jika Anda ingin mengarsipkan data yang akan diproses batch di kemudian hari. Jika Anda memilih opsi ini, Anda harus menyediakan sebuah akun Azure Storage untuk menyimpan lognya.

      • Pilih opsi untuk Lakukan streaming ke hub kejadian untuk melakukan streaming data log ke Azure Event Hub. Kemungkinan besar Anda akan menggunakan opsi ini jika Anda memiliki alur pemrosesan hilir untuk menganalisis log yang masuk secara real time. Jika Anda memilih opsi ini, Anda harus memberikan detail untuk Azure Event Hub yang ingin Anda gunakan.

      • Pilih opsi untuk Mengirim ke Log Analytics untuk menggunakan layanan Azure Monitor untuk menganalisis data log yang dibuat. Jika memilih opsi ini, Anda harus memberikan detail untuk ruang kerja Log Analytics yang akan Anda gunakan untuk melakukan analisis log. Lihat Menampilkan atau menganalisis data yang dikumpulkan dengan pencarian log Azure Monitor untuk detail penggunaan log Azure Monitor.

    • Tentukan apakah Anda ingin mendapatkan log audit atau log permintaan, atau keduanya.

    • Tentukan jumlah hari bagi data harus dipertahankan. Retensi hanya berlaku jika Anda menggunakan akun penyimpanan Azure untuk mengarsipkan data log.

    • Klik Simpan.

Setelah Anda mengaktifkan pengaturan diagnostik, Anda dapat menonton log di tab Log Diagnostik.

Menampilkan log diagnostik akun Data Lake Storage Gen1 Anda

Ada dua cara untuk menampilkan data log akun Data Lake Storage Gen1 Anda.

  • Dari tampilan pengaturan akun Data Lake Storage Gen1
  • Dari akun Azure Storage tempat data disimpan

Menggunakan tampilan Pengaturan Data Lake Storage Gen1

  1. Dari bilah Pengaturan akun Data Lake Storage Gen1 Anda, klik Log Diagnostik.

    Menampilkan log diagnostik

  2. Di bilah Log Diagnostik, Anda akan melihat log yang dikategorikan oleh Log Audit dan Log Permintaan.

    • Log permintaan mengambil setiap permintaan API yang dibuat pada akun Data Lake Storage Gen1.
    • Log Audit mirip dengan Log permintaan, tetapi Log Audit memberikan perincian yang jauh lebih detail tentang operasi yang dilakukan pada akun Data Lake Storage Gen1. Misalnya, satu panggilan API pengunggahan dalam log permintaan dapat mengakibatkan beberapa operasi "Tambahkan" di log audit.
  3. Untuk mengunduh log, klik tautan Unduh pada setiap entri log.

Dari akun Azure Storage yang berisi data log

  1. Buka bilah akun Azure Storage yang terkait dengan Data Lake Storage Gen1 untuk pengelogan, lalu klik Blob. Bilah Blob service mencantumkan dua kontainer.

    Cuplikan layar bilah Data Lake Storage Gen 1 opsi Blob yang dipilih dan bilah layanan Blog dengan nama dua layanan blob dipanggil.

    • Kontainer insights-logs-audit berisi log audit.
    • Kontainer insights-logs-audit berisi log permintaan.
  2. Dalam kontainer tersebut, log disimpan di bawah struktur berikut.

    Cuplikan layar struktur log saat disimpan dalam kontainer.

    Sebagai contoh, jalur lengkap ke log audit dapat https://adllogs.blob.core.windows.net/insights-logs-audit/resourceId=/SUBSCRIPTIONS/<sub-id>/RESOURCEGROUPS/myresourcegroup/PROVIDERS/MICROSOFT.DATALAKESTORE/ACCOUNTS/mydatalakestorage/y=2016/m=07/d=18/h=04/m=00/PT1H.json

    Demikian pula, jalur lengkap ke log permintaan dapat https://adllogs.blob.core.windows.net/insights-logs-requests/resourceId=/SUBSCRIPTIONS/<sub-id>/RESOURCEGROUPS/myresourcegroup/PROVIDERS/MICROSOFT.DATALAKESTORE/ACCOUNTS/mydatalakestorage/y=2016/m=07/d=18/h=14/m=00/PT1H.json

Memahami struktur data log

Audit dan log permintaan dalam format JSON. Di bagian ini, kita akan melihat struktur JSON untuk log permintaan dan log audit.

Log permintaan

Berikut adalah entri sampel dalam log permintaan berformat JSON. Setiap blob memiliki satu objek akar yang disebut rekaman yang berisi array objek log.

{
"records": 
  [        
    . . . .
    ,
    {
        "time": "2016-07-07T21:02:53.456Z",
        "resourceId": "/SUBSCRIPTIONS/<subscription_id>/RESOURCEGROUPS/<resource_group_name>/PROVIDERS/MICROSOFT.DATALAKESTORE/ACCOUNTS/<data_lake_storage_gen1_account_name>",
        "category": "Requests",
        "operationName": "GETCustomerIngressEgress",
        "resultType": "200",
        "callerIpAddress": "::ffff:1.1.1.1",
        "correlationId": "4a11c709-05f5-417c-a98d-6e81b3e29c58",
        "identity": "1808bd5f-62af-45f4-89d8-03c5e81bac30",
        "properties": {"HttpMethod":"GET","Path":"/webhdfs/v1/Samples/Outputs/Drivers.csv","RequestContentLength":0,"StoreIngressSize":0 ,"StoreEgressSize":4096,"ClientRequestId":"3b7adbd9-3519-4f28-a61c-bd89506163b8","StartTime":"2016-07-07T21:02:52.472Z","EndTime":"2016-07-07T21:02:53.456Z","QueryParameters":"api-version=<version>&op=<operationName>"}
    }
    ,
    . . . .
  ]
}

Skema log permintaan

Nama Jenis Deskripsi
waktu String Tanda waktu (dalam UTC) log
resourceId String ID sumber daya tempat operasi berlangsung
kategori String Kategori log. Misalnya, metrik Permintaan.
operationName String Nama operasi yang dicatat. Misalnya, getfilestatus.
resultType String Status operasi, Misalnya 200.
callerIpAddress String Alamat IP klien yang membuat permintaan
correlationId String ID log yang bisa digunakan untuk mengelompokkan sekumpulan entri log yang terkait
identity Objek Identitas yang membuat log
properti JSON Lihat di bawah untuk detailnya

Skema properti log permintaan

Nama Jenis Deskripsi
HttpMethod String Metode HTTP yang digunakan untuk operasi. Misalnya, GET.
Jalur String Jalur tempat operasi berlangsung
RequestContentLength int Panjang konten permintaan HTTP
ClientRequestId String ID yang mengidentifikasi permintaan ini secara unik
StartTime String Waktu saat server menerima permintaan
EndTime String Waktu saat server mengirim respons
StoreIngressSize Long Ukuran dalam byte yang dimasukkan ke Data Lake Store
StoreEgressSize Long Ukuran dalam byte yang dikeluarkan dari Data Lake Store
QueryParameters String Deskripsi: Berikut ini adalah parameter kueri http. Contoh 1: api-version=2014-01-01&op=getfilestatus Contoh 2: op=APPEND&append=true&syncFlag=DATA&filesessionid=bee3355a-4925-4435-bb4d-ceea52811aeb&leaseid=bee3355a-4925-4435-bb4d-ceea52811aeb&offset=28313319&api-version=2017-08-01

Log audit

Berikut adalah entri sampel dalam log audit berformat JSON. Setiap blob memiliki satu objek akar yang disebut rekaman yang berisi array objek log

{
"records": 
  [        
    . . . .
    ,
    {
        "time": "2016-07-08T19:08:59.359Z",
        "resourceId": "/SUBSCRIPTIONS/<subscription_id>/RESOURCEGROUPS/<resource_group_name>/PROVIDERS/MICROSOFT.DATALAKESTORE/ACCOUNTS/<data_lake_storage_gen1_account_name>",
        "category": "Audit",
        "operationName": "SeOpenStream",
        "resultType": "0",
        "resultSignature": "0",
        "correlationId": "381110fc03534e1cb99ec52376ceebdf;Append_BrEKAmg;25.66.9.145",
        "identity": "A9DAFFAF-FFEE-4BB5-A4A0-1B6CBBF24355",
        "properties": {"StreamName":"adl://<data_lake_storage_gen1_account_name>.azuredatalakestore.net/logs.csv"}
    }
    ,
    . . . .
  ]
}

Skema log audit

Nama Jenis Deskripsi
waktu String Tanda waktu (dalam UTC) log
resourceId String ID sumber daya tempat operasi berlangsung
kategori String Kategori log. Misalnya, Audit.
operationName String Nama operasi yang dicatat. Misalnya, getfilestatus.
resultType String Status operasi, Misalnya, 200.
resultSignature String Rincian tambahan tentang operasi.
correlationId String ID log yang bisa digunakan untuk mengelompokkan sekumpulan entri log yang terkait
identity Objek Identitas yang membuat log
properti JSON Lihat di bawah untuk detailnya

Skema properti log audit

Nama Jenis Deskripsi
StreamName String Jalur tempat operasi berlangsung

Sampel untuk memproses data log

Saat mengirim log dari Azure Data Lake Storage Gen1 ke log Azure Monitor (lihat Menampilkan atau menganalisis data yang dikumpulkan dengan pencarian log Azure Monitor untuk detail tentang menggunakan log Azure Monitor), kueri berikut ini akan menampilkan tabel yang berisi daftar nama tampilan pengguna, waktu kejadian, dan jumlah kejadian dari waktu kejadian bersama dengan sebuah bagan visual. Kueri tersebut dapat dengan mudah dimodifikasi untuk menampilkan GUID pengguna atau atribut lainnya:

search *
| where ( Type == "AzureDiagnostics" )
| summarize count(TimeGenerated) by identity_s, TimeGenerated

Azure Data Lake Storage Gen1 menyediakan sampel tentang cara memproses dan menganalisis data log. Anda dapat menemukan sampelnya di https://github.com/Azure/AzureDataLake/tree/master/Samples/AzureDiagnosticsSample.

Lihat juga