如何匹配Azure LogAnalytics返回JSON的列与行并提取指定属性值
提取Azure LogAnalytics返回结果中的指定属性
针对你提供的LogAnalytics JSON结构,要提取TimeGenerated和AuditEventId到Power Automate的Compose动作中,分以下两步操作:
1. 提取TimeGenerated
TimeGenerated直接存在于结果的rows数组中,对应columns列表里的第三个字段(索引从0开始)。在Compose动作中使用以下表达式:
body('Run_query_and_list_results')?['tables']?[0]?['rows']?[0]?[2]
注意:将
Run_query_and_list_results替换为你实际执行LogAnalytics查询的动作名称。
2. 提取AuditEventId
AuditEventId嵌套在Properties字段中,而Properties是一个JSON格式的字符串,需要先解析为JSON对象再提取属性:
在Compose动作中使用以下表达式:
json(body('Run_query_and_list_results')?['tables']?[0]?['rows']?[0]?[9])?['AuditEventId']
说明:
rows[0][9]对应columns里的Properties字段,json()函数负责将字符串转为可读取的JSON对象,之后即可直接访问AuditEventId属性。
整合使用
你也可以将两个属性整合到一个Compose动作中,输出为结构化对象,方便后续动作直接引用:
{ "TimeGenerated": @{body('Run_query_and_list_results')?['tables']?[0]?['rows']?[0]?[2]}, "AuditEventId": @{json(body('Run_query_and_list_results')?['tables']?[0]?['rows']?[0]?[9])?['AuditEventId']} }
内容的提问来源于stack exchange,提问作者SamTn
相关产品推荐
相关产品推荐

