API Penyerapan Log di Azure Monitor

API Penyerapan Log di Azure Monitor memungkinkan Anda mengirim data ke ruang kerja Analitik Log menggunakan panggilan REST API atau pustaka klien. API memungkinkan Anda mengirim data ke tabel Azure yang didukung atau ke tabel kustom yang Anda buat. Anda juga dapat memperluas skema tabel Azure dengan kolom kustom untuk menerima data tambahan.

Operasi dasar

Data dapat dikirim ke API Penyerapan Log dari aplikasi apa pun yang dapat melakukan panggilan REST API. Ini mungkin aplikasi kustom yang Anda buat, atau mungkin aplikasi atau agen yang memahami cara mengirim data ke API. Aplikasi mengirim data ke titik akhir pengumpulan data (DCE), yang merupakan titik koneksi unik untuk langganan Azure Anda. Ini menentukan aturan pengumpulan data (DCR) yang mencakup tabel target dan ruang kerja dan kredensial pendaftaran aplikasi dengan akses ke DCR yang ditentukan.

Data yang dikirim oleh aplikasi Anda ke API harus diformat di JSON dan cocok dengan struktur yang diharapkan oleh DCR. Tidak perlu mencocokkan struktur tabel target karena DCR dapat menyertakan transformasi untuk mengonversi data agar sesuai dengan struktur tabel. Anda dapat mengubah tabel target dan ruang kerja dengan memodifikasi DCR tanpa perubahan apa pun pada panggilan API atau data sumber.

Diagram yang memperlihatkan gambaran umum API penyerapan log.

Konfigurasi

Tabel berikut ini menjelaskan setiap komponen di Azure yang harus Anda konfigurasi sebelum dapat menggunakan API Penyerapan Log.

Catatan

Untuk skrip PowerShell yang mengotomatiskan konfigurasi komponen ini, lihat Kode sampel untuk mengirim data ke Azure Monitor menggunakan API penyerapan Log.

Komponen Fungsi
Pendaftaran dan rahasia aplikasi Pendaftaran aplikasi digunakan untuk mengautentikasi panggilan API. Ini harus diberikan izin ke DCR yang dijelaskan di bawah ini. Panggilan API mencakup ID Aplikasi (klien) dan ID Direktori (penyewa) aplikasi dan Nilai rahasia aplikasi.

Lihat Membuat aplikasi Microsoft Entra dan perwakilan layanan yang dapat mengakses sumber daya dan Membuat rahasia aplikasi baru.
Titik akhir pengumpulan data (DCE) DCE menyediakan titik akhir untuk dikirim aplikasi. Satu DCE dapat mendukung beberapa DCR, sehingga Anda dapat menggunakan DCE yang ada jika Anda sudah memilikinya di wilayah yang sama dengan ruang kerja Analitik Log Anda.

Lihat Membuat titik akhir pengumpulan data.
Tabel di ruang kerja Analitik Log Tabel di ruang kerja Analitik Log harus ada sebelum Anda dapat mengirim data ke ruang kerja tersebut. Anda dapat menggunakan salah satu tabel Azure yang didukung atau membuat tabel kustom menggunakan salah satu metode yang tersedia. Jika Anda menggunakan portal Azure untuk membuat tabel, maka DCR dibuat untuk Anda, termasuk transformasi jika diperlukan. Dengan metode lain, Anda perlu membuat DCR secara manual seperti yang dijelaskan di bagian berikutnya.

Lihat Membuat tabel kustom.
Aturan pengumpulan data (DCR) Azure Monitor menggunakan aturan Pengumpulan data (DCR) untuk memahami struktur data masuk dan apa yang harus dilakukan dengannya. Jika struktur tabel dan data masuk tidak cocok, DCR dapat menyertakan transformasi untuk mengonversi data sumber agar sesuai dengan tabel target. Anda juga dapat menggunakan transformasi untuk memfilter data sumber dan melakukan perhitungan atau konversi lainnya.

Jika Anda membuat tabel kustom menggunakan portal Azure, DCR dan transformasi dibuat untuk Anda berdasarkan data sampel yang Anda berikan. Jika Anda menggunakan tabel yang sudah ada atau membuat tabel kustom menggunakan metode lain, maka Anda harus membuat DCR secara manual menggunakan detail di bagian berikut.

Setelah DCR Dibuat, Anda harus memberikan akses ke DCR untuk aplikasi yang Anda buat di langkah pertama. Dari menu Monitor di portal Azure, pilih Aturan Pengumpulan Data lalu DCR yang Anda buat. Pilih Kontrol Akses (IAM) untuk DCR lalu pilih Tambahkan penetapan peran untuk menambahkan peran Penerbit Metrik Pemantauan.

Membuat DCR secara manual

Jika Anda mengirim data ke tabel yang sudah ada, maka Anda harus membuat DCR secara manual. Mulailah dengan Sampel DCR untuk API Penyerapan Log dan ubah parameter berikut dalam templat. Kemudian gunakan salah satu metode yang dijelaskan dalam Membuat dan mengedit aturan pengumpulan data (DCR) di Azure Monitor untuk membuat DCR.

Parameter Deskripsi
region Wilayah untuk membuat DCR Anda. Ini harus cocok dengan wilayah DCE dan ruang kerja Analitik Log.
dataCollectionEndpointId ID sumber daya DCE Anda.
streamDeclarations Ubah daftar kolom menjadi kolom di data masuk Anda. Anda tidak perlu mengubah nama aliran karena ini hanya perlu mencocokkan streams nama di dataFlows.
workspaceResourceId ID sumber daya ruang kerja Analitik Log Anda. Anda tidak perlu mengubah nama karena ini hanya perlu mencocokkan destinations nama di dataFlows.
transformKql Kueri KQL yang akan diterapkan ke data masuk. Jika skema data masuk cocok dengan skema tabel, maka Anda dapat menggunakan source untuk transformasi yang akan meneruskan data masuk yang tidak berubah. Jika tidak, gunakan kueri yang akan mengubah data agar sesuai dengan skema tabel.
outputStream Nama tabel untuk mengirim data. Untuk tabel kustom, tambahkan awalan Custom-table-name<>. Untuk tabel bawaan, tambahkan awalan Microsoft-table-name><.

Pustaka klien

Selain melakukan panggilan REST API, Anda dapat menggunakan pustaka klien berikut untuk mengirim data ke API penyerapan Log. Pustaka memerlukan komponen yang sama yang dijelaskan dalam Konfigurasi. Untuk contoh menggunakan masing-masing pustaka ini, lihat Kode sampel untuk mengirim data ke Azure Monitor menggunakan API penyerapan log.

Panggilan REST API

Untuk mengirim data ke Azure Monitor dengan panggilan REST API, lakukan panggilan POST melalui HTTP. Detail yang diperlukan untuk panggilan ini dijelaskan di bagian ini.

URI titik akhir

Titik akhir URI menggunakan format berikut, dengan Data Collection Endpoint dan DCR Immutable ID mengidentifikasi DCE dan DCR. ID yang tidak dapat diubah dihasilkan untuk DCR saat dibuat. Anda dapat mengambilnya dari tampilan JSON DCR di portal Azure. Stream Name mengacu pada aliran di DCR yang harus menangani data kustom.

{Data Collection Endpoint URI}/dataCollectionRules/{DCR Immutable ID}/streams/{Stream Name}?api-version=2023-01-01

Contohnya:

https://my-dce-5kyl.eastus-1.ingest.monitor.azure.com/dataCollectionRules/dcr-000a00a000a00000a000000aa000a0aa/streams/Custom-MyTable?api-version=2023-01-01

Header

Tabel berikut menjelaskan bahwa header untuk panggilan API Anda.

Header Wajib diisi? Deskripsi
Authorization Ya Token pembawa diperoleh melalui alur kredensial klien. Gunakan nilai audiens token untuk cloud Anda:

Cloud publik Azure - https://monitor.azure.com
Microsoft Azure dioperasikan oleh cloud 21Vianet - https://monitor.azure.cn
Cloud Pemerintah AS Azure - https://monitor.azure.us
Content-Type Ya application/json
Pengodean-Konten No gzip
x-ms-client-request-id No GUID berformat string. Ini adalah ID permintaan yang dapat digunakan oleh Microsoft untuk tujuan pemecahan masalah apa pun.

Isi

Isi panggilan berisi data kustom yang akan dikirim ke Azure Monitor. Bentuk data harus berupa array JSON dengan struktur item yang cocok dengan format yang diharapkan oleh aliran di DCR. Jika diperlukan untuk mengirim satu item dalam panggilan API, data harus dikirim sebagai array item tunggal.

Contohnya:

[
{
    "TimeGenerated": "2023-11-14 15:10:02",
    "Column01": "Value01",
    "Column02": "Value02"
}
]

Pastikan bahwa isi permintaan dikodekan dengan benar di UTF-8 untuk mencegah masalah dengan transmisi data.

Contoh

Lihat Contoh kode untuk mengirim data ke Azure Monitor menggunakan API penyerapan Log untuk contoh panggilan API menggunakan PowerShell.

Tabel yang didukung

Data yang dikirim ke API penyerapan dapat dikirim ke tabel berikut:

Tabel Deskripsi
Tabel kustom Tabel kustom apa pun yang Anda buat di ruang kerja Analitik Log Anda. Tabel target harus ada sebelum Anda dapat mengirim data ke tabel tersebut. Tabel kustom harus memiliki akhiran _CL.
Tabel Azure Tabel Azure berikut saat ini didukung. Tabel lain dapat ditambahkan ke daftar ini karena dukungan untuk tabel tersebut diimplementasikan.

Catatan

Nama kolom harus dimulai dengan huruf dan dapat terdiri dari hingga 45 karakter alfanumerik dan garis bawah (_). _ResourceId, , id, _SubscriptionId_ResourceId, TenantId, Type, UniqueId, dan Title adalah nama kolom yang dicadangkan. Kolom kustom yang Anda tambahkan ke tabel Azure harus memiliki akhiran _CF.

Batasan dan pembatasan

Untuk batas yang terkait dengan API Penyerapan Log, lihat Batas layanan Azure Monitor.

Langkah berikutnya