extract_json()

适用于:✅Azure 数据资源管理器Azure MonitorMicrosoft Sentinel

使用路径表达式获取 JSON 文本外指定的元素。

(可选)将提取的字符串转换为特定类型。

extract_json()extractjson() 函数是等效的

语法

extract_json(jsonPath, dataSource, type)

详细了解语法约定

参数

客户 类型​​ 必需 说明
jsonPath string ✔️ 一个 JSONPath,用于定义访问 JSON 文档的访问器。
dataSource string ✔️ JSON 文档。
type string 一个可选的类型文本。 如果提供了此参数,则提取的值将转换为此类型。 例如,typeof(long) 会将提取的值转换为 long

性能提示

  • 使用 extract_json() 之前应用 where 子句。
  • 请考虑改用与 extract 匹配的正则表达式匹配项。 如果从模板生成 JSON,运行速度则更快并且高效。
  • 如果需要从 JSON 提取多个值,请使用 parse_json()
  • 考虑将列类型声明为 dynamic,以便在引入时分析 JSON。

返回

此函数对 dataSource(内含有效的 JSON 字符串)执行 JSONPath 查询,从而可选择根据第三个参数将该值转换为其他类型。

示例

let json = '{"name": "John", "age": 30, "city": "New York"}';
print extract_json("$.name", json, typeof(string));

输出

print_0
John