在 KQL(Kusto 查询语言)中,我可以按列(时间)进行分组并对所有其他包含整数的列求和吗?

问题描述 投票:0回答:1

我想生成一个符合 Grafana Cloud 中时间序列数据可视化所需格式的表格。 (更多详细信息:https://grafana.com/docs/grafana/latest/panels-visualizations/visualizations/time-series

customEvents
| where name == "send_editionCO_service" and timestamp > datetime("2024-10-25, 8:00:00.000")
| evaluate bag_unpack(customDimensions)
| extend formsData = parse_json(Forms)
| mv-expand formsData
| extend FormCode = formsData.FormLibelle,
         FormLibelle = formsData.FormCode
| extend Time = bin(timestamp, 1h)
| summarize nbForms = count() by Time, EtatCode, EtatLibelle
| project Time, EtatCode, EtatLibelle, nbForms
| order by Time
| extend index = row_number()
| order by EtatCode, index
| extend total=row_cumsum(nbForms, EtatCode != prev(EtatCode))
| evaluate pivot(EtatLibelle, sum(total))
| project-away EtatCode, nbForms, index;

我运行了这个专栏并得到了这个结果。 结果表 我想按时间分组并对所有其他列进行求和。输出将是一个仅包含 4 个日期和其他 n 列求和的表。 --> [时间] / [第 1 列] / [第 2 列] / [第 3 列]

azure group-by grafana azure-application-insights kql
1个回答
0
投票

在 KQL(Kusto 查询语言)中,我可以按列(时间)进行分组并对所有其他包含整数的列求和吗?

是的,您可以使用以下 KQL 查询来做到这一点:

如果您想要 1 小时:

RithTable
| summarize 
    Colname1 = sum(Colname1), 
    Colname2 = sum(Colname2), 
    ................,
    ................, 
    Colnamex = sum(Colnamex)
by bin(Time, 1h)

1天,改为bin(Time, 1d)。

输出(基于您的输入):

enter image description here

小提琴

© www.soinside.com 2019 - 2024. All rights reserved.