Kusto查询-如何按日期分组以及如何按名称分组

问题描述

在下面的查询中,我正在以给定日期范围内调用的第80个百分位数查看一个API(foo / bar1)持续时间,以便可以查看是否存在任何峰值或降级。 (下图)

let dataset = requests 
| where name == "GET foo/bar1"
and timestamp between(datetime("2020-10-15") .. datetime('2020-10-28'));
dataset
| summarize loadTime = round(percentile(duration,80)) by format_datetime(timestamp,'yyyy-MM-dd')
| order by timestamp desc

Result of first query API duration for foo/bar1

我面临的挑战是可以有多个API(我的环境中大约有150个),我也想获得这些API的第80个百分位数,但很难做到甚至不可能。

解决方法

我可以通过从数据集中删除“名称”,然后在汇总行末尾的分组部分中添加“名称”来解决这个问题。

let dataset = requests 
    |
    where timestamp between(datetime("2020-10-25") .. datetime('2020-10-28'));
    dataset
    | summarize loadTime = round(percentile(duration,80)) by format_datetime(timestamp,'yyyy-MM-dd'),name
    | order by timestamp desc 

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...