我在Application Insights中有一些数据,我正在使用Analytics视图来编写查询。
我可以看到我有一个跟踪,其CustomDimensions包含一个名为ActivityID的属性,它是一个guid:
我想要做的是现在运行另一个查询以返回包含该ActivityId的所有跟踪。
使用this作为指南,我目前有以下内容:
union (traces
| extend ActivityId = tostring(customDimensions.ActivityId)
| project ActivityId
| where ActivityId == "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
| top 101 by timestamp desc
但是,这会返回以下语法错误消息:
Failed to resolve 'top' key column
我做错了什么?如果可能的话,我也会感谢并解释错误信息。
答案 0 :(得分:1)
除非您在投影中实际包含时间戳列,否则无法对投影进行top
。
我做了:
union (traces)
| top 101 by timestamp desc
| project session_Id
所以这应该有用
union (traces
| extend ActivityId = tostring(customDimensions.ActivityId)
| where ActivityId == "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
| top 101 by timestamp desc
| project ActivityId
然后它的工作原理。您的完整查询是什么(我猜您使用union
后还有更多信息?)
答案 1 :(得分:0)
您必须投放'时间戳'列如果你想在顶部使用它。
traces
| extend ActivityId = tostring(customDimensions.ActivityId)
| project ActivityId, timestamp
| where ActivityId == "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
| top 101 by timestamp desc
*请注意,您也不需要使用 union