You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Monitor日志:用KQL从JSON字段提取键值并拆分多行

Azure Monitor日志JSON字段提取键值并拆分行

首先注意你提供的JSON示例存在语法错误,autoAbstractRegions的数组写法不符合标准JSON规范,正确格式应该是:

{
  "industry": ["Health"],
  "autoAbstractRegions": ["United States", "Canada"]
}

基于修正后的JSON结构,你可以在现有KQL语句基础上,通过键索引直接提取对应的值,再用mv-expand拆分值数组,最终实现每行对应一个键值对:

// 替换为你的表名和JSON字段名
YourTableName
| extend keys = bag_keys(Filters)
| mv-expand keys
| extend values = Filters[keys]  // 根据当前keys字段的值,从Filters中提取对应的数组值
| mv-expand values               // 将值数组拆分为单独行,每个值对应一行

语句说明:

  • bag_keys(Filters):提取JSON对象Filters中的所有键,生成动态数组
  • mv-expand keys:将键数组拆分为单独行,每行对应一个键
  • Filters[keys]:利用当前行的keys值作为索引,从原始JSON对象中获取对应的数组值
  • mv-expand values:将值数组拆分为单独行,最终每条记录对应一个key和单个value

如果你的原始JSON确实存在特殊格式的嵌套数组(非标准JSON),可以先通过array_concat等函数合并数组后再处理,但建议优先修正JSON格式以保证兼容性。

内容的提问来源于stack exchange,提问作者Brenda_love

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 04:16:13