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

Log Analytics中解析自定义维度嵌套Payload的Kusto查询问题

解决Log Analytics中嵌套JSON自定义维度的属性提取问题

你的自定义维度customDimensions包含嵌套的Payload字段,示例Payload如下:

{"Number":"","Number":"123","A":false,"B":true,"C":true,"D":1661507873379}

你需要提取属性A作为单独列用于筛选,但当前查询生成的pay3列始终为空。

问题原因

你的查询中存在重复且不必要的JSON解析操作:parse_json(tostring(parse_json(pay2)))。当customDimensions["Payload"]是JSON格式的字符串时,第一次parse_json(pay)就已经将其转换为结构化的JSON对象,后续的tostring再parse_json会导致解析失效,最终无法提取到属性值。

正确查询语句

traces 
| where tostring(customDimensions['SN']) == '123'
| where message contains "A"
| extend pay = customDimensions["Payload"]
| extend parsedPayload = parse_json(pay)
| extend A_Value = parsedPayload.A
// 可根据需要添加筛选条件,比如筛选A为false的记录
| where A_Value == false

额外说明

  • 如果customDimensions["Payload"]本身已经是JSON对象(而非字符串类型),可以直接跳过parse_json步骤,直接用customDimensions["Payload"].A提取属性值
  • 注意示例Payload中存在重复的Number键,根据JSON规范,重复键的处理由序列化工具决定,通常后一个值会覆盖前一个,建议检查Payload的生成逻辑避免此类问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 03:54:29