Espressioni JSONPath
La notazione JSONPath descrive il percorso di uno o più elementi in un documento JSON.
La notazione JSONPath viene usata negli scenari seguenti:
- Per specificare i mapping dei dati per l'inserimento
- Per specificare i mapping dei dati per le tabelle esterne
- Nelle funzioni Linguaggio di query Kusto (KQL) che elaborano oggetti dinamici, ad esempio bag_remove_keys() e extract_json()
È supportato il subset seguente della notazione JSONPath:
Espressione di percorso | Descrizione |
---|---|
$ |
Oggetto radice |
. |
Seleziona la proprietà specificata in un oggetto padre. Usare questa notazione se la proprietà non contiene caratteri speciali. |
['property'] o ["property"] |
Seleziona la proprietà specificata in un oggetto padre. Assicurarsi di inserire virgolette singole o virgolette doppie intorno al nome della proprietà. Utilizzare questa notazione se il nome della proprietà contiene caratteri speciali, ad esempio spazi, o inizia con un carattere diverso da A..Za..z_ . |
[n] |
Seleziona l'elemento n-th da una matrice. Gli indici sono basati su 0. |
Nota
I caratteri jolly, la ricorsione, l'unione, le sezioni e l'oggetto corrente non sono supportati.
Esempio
Dato il documento JSON seguente:
{
"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"
}
}
}
È possibile rappresentare ognuno dei campi con la notazione JSONPath come indicato di seguito:
"$.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
Contenuti correlati
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per