Azure cosmosdb Cosmos DB SQL API查询跟踪

Azure cosmosdb Cosmos DB SQL API查询跟踪,azure-cosmosdb,azure-cosmosdb-sqlapi,Azure Cosmosdb,Azure Cosmosdb Sqlapi,我在Cosmos DB(SQL API)中有许多集合,许多服务使用相同的数据库。每分钟执行100次查询,有时我会看到警告。我知道所有的查询并不是在所有的应用程序中都得到优化 是否有任何方法可以获取所有查询和执行时间(如SQL server Profiler跟踪) 我试图启用Cosmos DB诊断设置,但没有找到任何跟踪查询的方法您必须采用的方法是在SDK中启用PopulateQueryMetrics 启用查询的将填充x-ms-documentdb-query-metrics标题。该值如下所示:

我在Cosmos DB(SQL API)中有许多集合,许多服务使用相同的数据库。每分钟执行100次查询,有时我会看到警告。我知道所有的查询并不是在所有的应用程序中都得到优化

是否有任何方法可以获取所有查询和执行时间(如SQL server Profiler跟踪)


我试图启用Cosmos DB
诊断设置
,但没有找到任何跟踪查询的方法

您必须采用的方法是在SDK中启用
PopulateQueryMetrics

启用查询的将填充
x-ms-documentdb-query-metrics
标题。该值如下所示:

totalExecutionTimeInMs=33.67;queryCompileTimeInMs=0.06;queryLogicalPlanBuildTimeInMs=0.02;queryPhysicalPlanBuildTimeInMs=0.10;queryOptimizationTimeInMs=0.00;VMExecutionTimeInMs=32.56;indexLookupTimeInMs=0.36;documentLoadTimeInMs=9.58;systemFunctionExecuteTimeInMs=0.00;userFunctionExecuteTimeInMs=0.00;retrievedDocumentCount=2000;retrievedDocumentSize=1125600;outputDocumentCount=2000;writeOutputTimeInMs=18.10;indexUtilizationRatio=1.00
正如您所看到的,这需要进行拆分和解析,但它有很多有用的信息,您可以记录和查询这些信息,以查看有关查询及其性能的很多信息


您可以在此处阅读有关查询指标的更多信息:

谢谢您的回答,我知道这些详细信息。目前,我们有10多个微服务,通过这种方法,我必须更改所有应用程序数据访问层,并编写自定义代码来记录查询和执行指标。这是您真正拥有的唯一选项。如果你真的需要它们,你需要添加它们。强烈建议无论如何都要有依赖项日志记录。如果您认为此功能应该出炉,请投票-