从Python中的Kusto查询中提取计数值



我很难在Kusto Python SDK中从Kusto Query中提取计数值。我知道查询可以在UI控制台中工作,但每当我尝试在Python中这样做时,它都会失败。这是我的问题:

query = f"""
{table}
| where isempty({column})
| where TimeGenerated > ago(2h)
| count
"""
query_result = kusto_client.execute(KUSTO_DATABASE, query)
query_result = dataframe_from_result_table(query_result[0])['Count']

我得到了KeyError异常,尽管调试了对象,但我不知道如何提取计数值。

有更好的方法吗?

TIA-

Kusto SDK返回多个结果集,其中包括查询的结果集,以及查询属性和执行统计信息。

您想要的是primary_results

query_result = dataframe_from_result_table(query_result.primary_results[0])['Count']

使用SDK-->Python-->探索DataFrame 中的数据


这是一个基于公开集群的完整工作演示,帮助。

from azure.kusto.data import KustoClient, KustoConnectionStringBuilder
from azure.kusto.data.helpers import dataframe_from_result_table
cluster = "https://help.kusto.windows.net"
db = "Samples"
query = """
StormEvents
| count
"""
kcsb = KustoConnectionStringBuilder.with_interactive_login(cluster)
client = KustoClient(kcsb)
response = client.execute(db, query)
print(dataframe_from_result_table(response.primary_results[0])["Count"])

最新更新