当Kusto中​​的数据存在间隙时,仅使用连续数据集并切断数据

问题描述

我有一个Kusto查询来分析我的应用程序数据。

我的查询将仅显示来自商店的实时应用程序中的数据,而不显示来自我们的质量检查测试安装的数据。

到目前为止,我唯一区分数据的方法是,实时数据是每天连续的数据,从某个日期到现在为止都没有间隔。

测试数据也是生成数据,但是连续大约一两天都可见为数据块,然后有间隔。

以下是显示其外观的屏幕截图。

Data from latest app version both test data and live data

所以基本上我想要在应用上线之前切断所有数据。

不,我不想每次上线并更改发布日期时手动编辑脚本。我想通过复杂的Kusto查询找出发布日期。

赞:让我获得所有连续一天都有数据的所有时间戳

我只是不知道如何将其放入Kusto 你们可以帮我吗?

最好的问候, 小牛

解决方法

您可以使用摘要和prev函数的组合找到数据中的最后一个空白,然后过滤以仅包含空白之后的数据(假设T是源数据集):

let lastGap = toscalar(T
  | summarize by Timestamp=bin(Timestamp,1d)
  | order by Timestamp asc
  | extend gap = Timestamp - prev(Timestamp)
  | where gap > 1d
  | summarize lastGap = max(Timestamp));
T
| where Timestamp >= lastGap

相关问答

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