JSONPath 式
JSONPath 表記は、JSON ドキュメント内の 1 つ以上の要素へのパスを記述します。
JSONPath 表記は、次のシナリオで使用されます。
- インジェストのデータ マッピングを指定する
- 外部テーブルのデータ マッピングを指定する
- bag_remove_keys() や extract_json() などの動的オブジェクトを処理する Kusto 照会言語 (KQL) 関数
JSONPath 表記の次のサブセットがサポートされています。
パス式 | 説明 |
---|---|
$ |
ルート オブジェクト |
. |
親オブジェクトで指定したプロパティを選択します。 プロパティに特殊文字が含まれていない場合は、この表記を使用します。 |
['property'] または ["property"] |
親オブジェクトで指定したプロパティを選択します。 プロパティ名の周りに単一引用符または二重引用符を付けます。 プロパティ名にスペースなどの特殊文字が含まれている場合、または A..Za..z_ 以外の文字で始まる場合は、この表記を使用します。 |
[n] |
配列から n 番目の要素を選択します。 インデックスは 0 から始まります。 |
注意
ワイルドカード、再帰、和集合、スライス、および現在のオブジェクトはサポートされていません。
例
次の JSON ドキュメントを指定します。
{
"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"
}
}
}
各フィールドは、次のように JSONPath 表記で表すことができます。
"$.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
関連コンテンツ
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示