我想知道负责的查询,这些查询消耗了cosmos db azure中来自cosmos db“诊断工具”支持的较高RU。
我能够将DataPlane日志从Azure门户存储到日志分析/ blob存储中。在查看日志时,我看到名为“ requestcharge_s”的字段。据我了解,这是该操作消耗的RU。
我想知道与此日志条目相对应的确切基础查询。我该怎么办?我确实在日志条目中看到“ activityId_g”字段...但是不知道是否有任何方法可以使用该字段值来获取确切的查询。
我知道,在启动cosmos db的查询时,消耗的RU作为HTTP标头值之一返回。但是,我希望在azure门户上看到它,以便进行更好的就地分析。
我在这里想念什么吗?
答案 0 :(得分:0)
布彭德拉。根据{{3}}中的属性表,不存在使用RU记录准确查询的属性。
事实上,Cosmos DB上的任何操作都会消耗RU,并且诊断日志记录会通过OperationName
属性来区分操作类型。
您可以在上面的链接中找到以下线索:
1.TimeGenerated,操作发生的日期和时间(UTC)
2.OperationName,此值可以是以下任何操作:创建,更新,读取,ReadFeed,删除,替换,执行,SqlQuery,查询,JSQuery,Head,HeadFeed或Upsert。
3.activityId_g,用于记录的操作的唯一GUID。
4.ResourceId,根据执行的操作,该值可以指向databaseRid,collectionRid或documentRid。
5.requestCharge_s,该操作使用的RU数。
我认为您基本上可以找到客户端发送查询的位置。如果您确实想了解特定的查询sql,则可以将打印SQL的日志添加到客户端,并辅以定位操作时间。