Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Mit der HTTP-Datensammler-API für Azure Log Analytics können Sie JSON-Daten von jedem Client, der die REST-API aufrufen kann, an einen Log Analytics-Arbeitsbereich senden. Mit dieser Methode können Sie Daten aus Drittanbieteranwendungen oder aus Skripts senden, z. B. aus einem Runbook in Azure Automation
Anforderungs-URI
Um Ihren Log Analytics-Arbeitsbereich anzugeben, ersetzen Sie {CustomerID} durch die ID Ihres Arbeitsbereichs.
| Methode | Anforderungs-URI |
|---|---|
| Post | https://{Kunden-ID}.ods.opinsights.azure.com/< Ressource>?api-version=2016-04-01 |
| Anfrage | URI-Parameter |
|---|---|
| Parameter | BESCHREIBUNG |
| Kunden-ID | Eindeutiger Bezeichner für den Log Analytics-Arbeitsbereich |
| Ressource | Name der API-Ressource. /api/logs |
| API-Version | Version der API, die mit dieser Anforderung verwendet werden soll. Aktuell 01.04.2016 |
Anforderungsheader
Die Anforderungsheader in der folgenden Tabelle sind erforderlich.
| Kopfzeile | BESCHREIBUNG |
|---|---|
| Autorisierung | Weitere Informationen zum Erstellen einer HMAC-SHA256 Kopfzeile finden Sie weiter unten |
| Inhaltstyp | Erforderlich. Legen Sie dies auf application/json fest. |
| Protokolltyp | Hier können Sie den Namen der Nachricht angeben, die gesendet wird. Derzeit unterstützt der Protokolltyp nur Alphazeichen. Ziffern oder Sonderzeichen werden nicht unterstützt |
| x-ms-datum | Das Datum, an dem die Anforderung im RFC 1123-Format verarbeitet wurde |
| zeitgeneriertes Feld | Ermöglicht es Ihnen, das Zeitstempelfeld der Nachricht anzugeben, das als TimeGenerated-Feld verwendet werden soll. Auf diese Weise können Sie TimeGenerated so konfigurieren, dass der tatsächliche Zeitstempel aus den Nachrichtendaten widergespiegelt wird. Wenn dieses Feld nicht angegeben ist, wird der Standardwert für TimeGenerated verwendet, wenn die Nachricht erfasst wird. Das angegebene Nachrichtenfeld sollte der ISO 8601 von YYYY-MM-DDThh:mm:ssZ entsprechen. |
Autorisierungsheader
Jede Anforderung an die Log Analytics-HTTP-Datensammler-API muss den Authorization-Header enthalten. Um eine Anforderung zu authentifizieren, müssen Sie die Anforderung entweder mit dem Primär- oder Sekundärschlüssel für den Arbeitsbereich signieren, der die Anforderung stellt, und diese Signatur als Teil der Anforderung übergeben.
Das Format für den Authorization-Header lautet wie folgt:
Authorization: SharedKey <WorkspaceID>:<Signature>
WorkspaceID ist der eindeutige Identifikator für den Log Analytics-Arbeitsbereich, und Signature ist ein Hash-basierter Nachrichtenauthentifizierungscode (HMAC), der aus der Anforderung erstellt und mithilfe des SHA256-Algorithmus berechnet und dann mit der Base64-Codierung codiert wird.
Erstellen der Signaturzeichenfolge
Verwenden Sie das folgende Format, um die Signaturzeichenfolge für den gemeinsam verwendeten Schlüssel zu codieren:
StringToSign = VERB + "\n" +
Content-Length + "\n" +
Content-Type + "\n" +
x-ms-date + "\n" +
"/api/logs";
Das folgende Beispiel zeigt eine Signaturzeichenfolge:
POST \n1024\napplication/json\nx-ms-date:Mon, 04 Apr 2016 08:00:00 GMT\n/api/logs
Codieren Sie als Nächstes diese Zeichenfolge, indem Sie den HMAC-SHA256-Algorithmus für die UTF-8-codierte Signaturzeichenfolge verwenden, erstellen Sie den Authorization-Header, und fügen Sie den Header der Anforderung hinzu.
Codieren der Signatur
Um die Signatur zu codieren, rufen Sie den HMAC-SHA256-Algorithmus für die UTF-8-codierte Signaturzeichenfolge auf, und codieren Sie das Ergebnis als Base64. Verwenden Sie das folgende Format (als Pseudocode angezeigt):
Signature=Base64(HMAC-SHA256(UTF8(StringToSign)))
Anfragekörper
Der Text der Nachricht, die an den Endpunkt übermittelt wird.
{
"key1": "value1",
"key2": "value2",
"key3": "value3",
"key4": "value4"
}
Sie können mehrere Nachrichten desselben Typs in einem einzigen Anforderungstext zusammenfassen.
[
{
"key1": "value1",
"key2": "value2",
"key3": "value3",
"key4": "value4"
},
{
"key1": "value5",
"key2": "value6",
"key3": "value7",
"key4": "value8"
}
]
Datenlimits
Es gibt einige Einschränkungen in Bezug auf die Daten, die an die Log Analytics-Datensammlungs-API gesendet werden.
- Maximal 30 MB pro Beitrag an die Log Analytics-Datensammler-API. Dies ist eine Größenbeschränkung für einen einzelnen Beitrag. Wenn die Daten aus einem einzelnen Beitrag größer als 30 MB sind, sollten Sie die Daten in kleinere Blöcke aufteilen und diese gleichzeitig senden.
- Maximal 32 KB für Feldwerte. Wenn der Feldwert größer als 32 KB ist, werden die Daten gekürzt.
- Die empfohlene maximale Anzahl von Feldern eines bestimmten Typs beträgt 50. Dies ist ein praktischer Grenzwert aus Sicht der Benutzerfreundlichkeit und Sucherfahrung.