使用 HTTP 資料收集器 API 將記錄資料傳送至 Log Analytics
Azure Log Analytics HTTP 資料收集器 API 可讓您從任何可呼叫 REST API 的用戶端將 JSON 資料 POST 至 Log Analytics 工作區。 透過使用此方法,您可以從協力廠商應用程式或腳本傳送資料,例如從 Azure 自動化 中的 Runbook
要求 URI
若要指定 Log Analytics 工作區,請將 {CustomerID} 取代為您工作區的識別碼。
方法 | 要求 URI |
---|---|
郵寄 | HTTPs://{CustomerID}.ods.opinsights.azure.com/ < Resource > ?api-version=2016-04-01 |
要求 | URI 參數 |
---|---|
參數 | 描述 |
CustomerID | Log Analytics 工作區的唯一識別碼 |
資源 | API 資源名稱。 /api/logs |
API 版本 | 要與此要求搭配使用的 API 版本。 目前 2016-04-01 |
要求標頭
下表列出必要的要求標頭。
標頭 | 描述 |
---|---|
授權 | 請參閱下列有關建立 HMAC-SHA256 標頭的其他資訊 |
Content-Type | 必要。 將此設定為 application/json |
Log-Type | 可讓您指定正在提交之訊息的名稱。 目前,記錄類型僅支援 Alpha 字元。 它不支援數值或特殊字元 |
x-ms-date | 要求以 RFC 1123 格式處理的日期 |
time-generated-field | 可讓您指定訊息的時間戳記欄位,以做為 TimeGenerated 欄位。 這可讓您設定 TimeGenerated,以反映來自訊息資料的實際時間戳。 如果未指定此欄位,則擷取訊息時,TimeGenerated 的預設值。 指定的訊息欄位應遵循 YYYY-MM-DDThh:mm:ssZ 的 ISO 8601 |
驗證標頭
對 Log Analytics HTTP 資料收集器 API 的任何要求都必須包含授權標頭。 若要驗證要求,您必須使用發出要求之工作區的主要或次要金鑰簽署要求,並在要求中傳遞該簽章。
授權標頭的格式如下所示:
Authorization: SharedKey <WorkspaceID>:<Signature>
WorkspaceID 是 Log Analytics 工作區的唯一識別碼, 而 Signature 是雜湊型訊息驗證碼 (HMAC) 使用 SHA256 演算法建構,然後使用 SHA256 演算法來計算,然後使用 Base64 編碼進行編碼。
建構簽章字串
若要編碼共用金鑰簽章字串,請使用下列格式:
StringToSign = VERB + "\n" +
Content-Length + "\n" +
Content-Type + "\n" +
x-ms-date + "\n" +
"/api/logs";
下列範例顯示簽章字串:
POST \n1024\napplication/json\nx-ms-date:Mon, 04 Apr 2016 08:00:00 GMT\n/api/logs
接下來,透過 UTF-8 編碼簽章字串使用 HMAC-SHA256 演算法來編碼此字串、建構授權標頭,並將標頭新增至要求。
對簽章進行編碼
若要對簽章進行編碼,請對 UTF-8 編碼的簽章字串呼叫 HMAC-SHA256 演算法,並將結果編碼為 Base64。 請使用下列格式 (顯示為虛擬程式碼):
Signature=Base64(HMAC-SHA256(UTF8(StringToSign)))
要求本文
提交至端點之訊息的本文。
{
"key1": "value1",
"key2": "value2",
"key3": "value3",
"key4": "value4"
}
您可以將相同類型的多個訊息批次處理成單一要求本文。
[
{
"key1": "value1",
"key2": "value2",
"key3": "value3",
"key4": "value4"
},
{
"key1": "value5",
"key2": "value6",
"key3": "value7",
"key4": "value8"
}
]
資料限制
在張貼至 Log Analytics 資料收集 API 的資料上有一些限制。
- 可張貼至 Log Analytics 資料收集 API 的每個張貼項目大小上限為 30 MB。 這是單一張貼項目的大小限制。 如果資料是來自超出 30 MB 的單一張貼項目,您應該將資料分割成較小區塊,然後同時傳送它們。
- 欄位值的大小上限為 32 KB。 如果欄位值大於 32 KB,資料將會被截斷。
- 指定類型欄位的建議數目上限為 50。 對於使用性和搜尋體驗觀點而言,這是一個實際的限制。