Sdílet prostřednictvím


Odesílání dat protokolu do Log Analytics pomocí rozhraní API kolektoru dat HTTP

Rozhraní API kolektoru dat HTTP služby Azure Log Analytics umožňuje postovat data JSON do pracovního prostoru služby Log Analytics z libovolného klienta, který může volat rozhraní REST API. Pomocí této metody můžete odesílat data z aplikací třetích stran nebo ze skriptů, například z runbooku v Azure Automation

Identifikátor URI žádosti

Pokud chcete zadat pracovní prostor služby Log Analytics, nahraďte {CustomerID} ID pracovního prostoru.

Metoda Identifikátor URI žádosti
Příspěvek https://{CustomerID}.ods.opinsights.azure.com/< Resource>?api-version=2016-04-01
Žádost Parametry identifikátoru URI
Parametr Popis
CustomerID Jedinečný identifikátor pracovního prostoru služby Log Analytics
Prostředek Název prostředku rozhraní API. /api/logs
Verze rozhraní API Verze rozhraní API, která se má použít s tímto požadavkem. Aktuálně 1.4.2016

Hlavičky požadavku

Vyžadují se hlavičky požadavků v následující tabulce.

Hlavička Description
Autorizace Další informace o vytvoření hlavičky HMAC-SHA256 najdete níže.
Typ obsahu Povinná hodnota. Nastavte tuto možnost na application/json.
Log-Type Umožňuje zadat název odesílané zprávy. Typ protokolu v současné době podporuje pouze alfa znaky. Nepodporuje číslice ani speciální znaky.
x-ms-date Datum zpracování požadavku ve formátu RFC 1123
pole generované časem Umožňuje zadat pole časového razítka zprávy, které se má použít jako pole TimeGenerated. To vám umožní nakonfigurovat TimeGenerated tak, aby odrážel skutečné časové razítko z dat zprávy. Pokud toto pole není zadané, výchozí hodnota pro TimeGenerated při ingestování zprávy. Zadané pole zprávy by mělo odpovídat normě ISO 8601 YYYY-MM-DDThh:mm:ssZ.

Hlavička autorizace

Každý požadavek na rozhraní API kolektoru dat HTTP služby Log Analytics musí obsahovat hlavičku autorizace. Pokud chcete ověřit požadavek, musíte žádost podepsat pomocí primárního nebo sekundárního klíče pracovního prostoru, který požadavek vytváří, a předat tento podpis jako součást požadavku.

Hlavička Autorizace má následující formát:

Authorization: SharedKey <WorkspaceID>:<Signature>

WorkspaceID je jedinečný identifikátor pracovního prostoru služby Log Analytics a podpis je kód HMAC (Hash-based Message Authentication Code) vytvořený z požadavku a vypočítaný pomocí algoritmu SHA256 a následně kódovaný pomocí kódování Base64.

Vytvoření řetězce podpisu

Pokud chcete kódovat řetězec podpisu sdíleného klíče, použijte následující formát:

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

Následující příklad ukazuje řetězec podpisu:

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

Dále tento řetězec zakódujte pomocí algoritmu HMAC-SHA256 přes řetězec podpisu s kódováním UTF-8, sestavte autorizační hlavičku a přidejte hlavičku do požadavku.

Kódování podpisu

Pokud chcete zakódovat podpis, zavolejte algoritmus HMAC-SHA256 v řetězci podpisu s kódováním UTF-8 a zakódujte výsledek jako Base64. Použijte následující formát (zobrazený jako pseudokód):

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

Text požadavku

Text zprávy odeslané koncovému bodu

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

Do jednoho textu požadavku můžete přidat více zpráv stejného typu.

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

Omezení dat

U dat odesílaných do rozhraní API pro shromažďování dat služby Log Analytics platí určitá omezení.

  • Maximálně 30 MB na příspěvek do rozhraní API kolektoru dat služby Log Analytics. Toto je limit velikosti pro jeden příspěvek. Pokud jsou data z jednoho příspěvku větší než 30 MB, měli byste je rozdělit na menší bloky dat a odeslat je souběžně.
  • Maximální limit pro hodnoty polí je 32 kB. Pokud je hodnota pole větší než 32 kB, data se oříznou.
  • Doporučený maximální počet polí daného typu je 50. Tento limit je praktický z hlediska použitelnosti a vyhledávání.

Viz také