Bagikan melalui


Mengirim data log ke Log Analytics dengan HTTP Data Collector API

API Pengumpul Data HTTP Azure Log Analytics, memungkinkan Anda memPOSTING data JSON ke Ruang Kerja Analitik Log dari klien mana pun yang dapat memanggil REST API. Dengan menggunakan metode ini, Anda dapat mengirim data dari aplikasi pihak ketiga atau dari skrip, seperti dari runbook di Azure Automation

Meminta URI

Untuk menentukan ruang kerja Analitik log Anda, ganti {CustomerID} dengan ID Ruang Kerja Anda.

Metode Meminta URI
Kirim https://{CustomerID}.ods.opinsights.azure.com/< Resource>?api-version=2016-04-01
Minta Parameter URI
Parameter Deskripsi
ID Pelanggan Pengidentifikasi unik untuk ruang kerja Analitik Log
Sumber daya Nama sumber daya API. /api/logs
Versi API Versi API yang akan digunakan dengan permintaan ini. Saat ini 2016-04-01

Header permintaan

Header permintaan dalam tabel berikut diperlukan.

Header Deskripsi
Authorization Lihat informasi tambahan di bawah ini tentang membuat header HMAC-SHA256
Jenis-Konten Wajib diisi. Atur ini ke application/json
Log-Type Memungkinkan Anda menentukan nama pesan yang sedang dikirimkan. Saat ini, Jenis log hanya mendukung karakter alfa. Ini tidak mendukung numerik atau karakter khusus
x-ms-date Tanggal permintaan diproses dalam format RFC 1123
bidang yang dihasilkan waktu Memungkinkan Anda menentukan bidang tanda waktu pesan untuk digunakan sebagai bidang TimeGenerated. Ini memungkinkan Anda mengonfigurasi TimeGenerated untuk mencerminkan tanda waktu aktual dari data pesan. Jika bidang ini tidak ditentukan, default untuk TimeGenerated saat pesan diserap. Bidang pesan yang ditentukan harus mengikuti ISO 8601 dari YYYY-MM-DDThh:mm:ssZ

Header otorisasi

Setiap permintaan ke API Pengumpul Data HTTP analitik Log harus menyertakan header Otorisasi. Untuk mengautentikasi permintaan, Anda harus menandatangani permintaan dengan kunci primer atau sekunder untuk ruang kerja yang membuat permintaan dan meneruskan tanda tangan tersebut sebagai bagian dari permintaan.

Format untuk header Otorisasi adalah sebagai berikut:

Authorization: SharedKey <WorkspaceID>:<Signature>

WorkspaceID adalah pengidentifikasi unik untuk ruang kerja Analitik Log, dan Tanda Tangan adalah Kode Autentikasi Pesan berbasis Hash (HMAC) yang dibangun dari permintaan dan dihitung dengan menggunakan algoritma SHA256, lalu dikodekan menggunakan pengodean Base64.

Membuat string tanda tangan

Untuk mengodekan string tanda tangan Kunci Bersama, gunakan format berikut:

	StringToSign = VERB + "\n" +
	Content-Length + "\n" +
	Content-Type + "\n" +
	x-ms-date + "\n" +
	"/api/logs";

Contoh berikut menunjukkan string tanda tangan:

POST \n1024\napplication/json\nx-ms-date:Mon, 04 Apr 2016 08:00:00 GMT\n/api/logs

Selanjutnya, kodekan string ini dengan menggunakan algoritma HMAC-SHA256 melalui string tanda tangan yang dikodekan UTF-8, buat header Otorisasi, dan tambahkan header ke permintaan.

Mengodekan Tanda Tangan

Untuk mengodekan tanda tangan, panggil algoritma HMAC-SHA256 pada string tanda tangan yang dikodekan UTF-8 dan kodekan hasilnya sebagai Base64. Gunakan format berikut (ditampilkan sebagai pseudocode):

Signature=Base64(HMAC-SHA256(UTF8(StringToSign)))

Isi permintaan

Isi pesan yang dikirimkan ke titik akhir.

	{
	  "key1": "value1",
	  "key2": "value2",
	  "key3": "value3",
	  "key4": "value4"
	}

Anda dapat mengumpulkan beberapa pesan dengan jenis yang sama ke dalam satu isi permintaan.

	[
	  {
	    "key1": "value1",
	    "key2": "value2",
	    "key3": "value3",
	    "key4": "value4"
	  },
	  {
	    "key1": "value5",
	    "key2": "value6",
	    "key3": "value7",
	    "key4": "value8"
	  }
	]

Batasan data

Ada beberapa batasan di sekitar data yang diposting ke API pengumpulan Data Analitik Log.

  • Maksimum 30 MB per posting ke LOG Analytics Data Collector API. Ini adalah batas ukuran untuk satu posting. Jika data dari satu posting melebihi 30 MB, Anda harus membagi data menjadi bagian yang lebih kecil dan mengirimkannya secara bersamaan.
  • Maksimum 32 KB batas untuk nilai bidang. Jika nilai bidang lebih besar dari 32 KB, data akan dipotong.
  • Jumlah maksimum bidang yang disarankan untuk tipe tertentu adalah 50. Ini adalah batas praktis dari perspektif penggunaan dan pengalaman pencarian.

Lihat juga