使用 Kusto / KQL 尝试解析 Azure SQL Analytics 中的死锁 xml,并陷入转义标记名称进程列表,如下所示
所以死锁xml看起来像
<deadlock>
<process-list>
...
我想获得 process-list 下的一个属性,但 KQL 在连字符上阻塞,我不知道如何转义它以使其工作 - 请参阅最后一行中的粗体部分
Azure诊断 | 哪里(类别==“死锁”)| 其中 ResourceId 包含“/SERVERS/”| 其中 ResourceId 包含“/DATABASES/”| 其中资源包含“分析”| 项目资源 = strcat(extract(".+/SERVERS/([^/]+)/.+", 1, ResourceId), ".", extract(".+/DATABASES/(.+)", 1, ResourceId)).tolower(), TimeGenerated, deadlock_xml_s | 扩展 DeadlockXML = parse_xml(deadlock_xml_s) | 扩展 KeyDeets = DeadlockXML.deadlock。进程列表.waitresource
请参阅:https ://learn.microsoft.com/en-us/azure/data-explorer/kusto/query/schema-entities/entity-names#identifier-quoting
例如:
DeadlockXML.deadlock['process-list'].waitresource