JSONPath-expressies
JSONPath-notatie beschrijft het pad naar een of meer elementen in een JSON-document.
De JSONPath-notatie wordt gebruikt in de volgende scenario's:
- Gegevenstoewijzingen opgeven voor opname
- Gegevenstoewijzingen opgeven voor externe tabellen
- In Kusto-querytaal functies (KQL) die dynamische objecten verwerken, zoals bag_remove_keys() en extract_json()
De volgende subset van de JSONPath-notatie wordt ondersteund:
Padexpressie | Description |
---|---|
$ |
Hoofdobject |
. |
Selecteert de opgegeven eigenschap in een bovenliggend object. Gebruik deze notatie als de eigenschap geen speciale tekens bevat. |
['property'] of ["property"] |
Selecteert de opgegeven eigenschap in een bovenliggend object. Zorg ervoor dat u enkele aanhalingstekens of dubbele aanhalingstekens plaatst rond de naam van de eigenschap. Gebruik deze notatie als de naam van de eigenschap speciale tekens bevat, zoals spaties, of begint met een ander teken dan A..Za..z_ . |
[n] |
Selecteert het n-th element uit een matrix. Indexen zijn gebaseerd op 0. |
Notitie
Jokertekens, recursie, samenvoeging, segmenten en huidig object worden niet ondersteund.
Voorbeeld
Gegeven het volgende JSON-document:
{
"Source": "Server-01",
"Timestamp": "2023-07-25T09:15:32.123Z",
"Log Level": "INFO",
"Message": "Application started successfully.",
"Details": {
"Service": "AuthService",
"Endpoint": "/api/login",
"Response Code": 200,
"Response Time": 54.21,
"User": {
"User ID": "user123",
"Username": "kiana_anderson",
"IP Address": "192.168.1.100"
}
}
}
U kunt elk van de velden met de JSONPath-notatie als volgt weergeven:
"$.Source" // Source field
"$.Timestamp" // Timestamp field
"$['Log Level']" // Log Level field
"$.Message" // Message field
"$.Details.Service" // Service field
"$.Details.Endpoint" // Endpoint field
"$.Details['Response Code']" // Response Code field
"$.Details['Response Time']" // Response Time field
"$.Details.User['User ID']" // User ID field
"$.Details.User.Username" // Username field
"$.Details.User['IP Address']" // IP Address field
Gerelateerde inhoud
Feedback
https://aka.ms/ContentUserFeedback.
Binnenkort beschikbaar: In de loop van 2024 zullen we GitHub-problemen geleidelijk uitfaseren als het feedbackmechanisme voor inhoud en deze vervangen door een nieuw feedbacksysteem. Zie voor meer informatie:Feedback verzenden en weergeven voor