Datetime语法合法却报错,如何查询自定义日志表时间范围并获取数据大小?
问题解决方法
错误原因分析
你的查询语句存在两个关键问题:
- 时间范围顺序颠倒:Kusto的
between (x .. y)语法要求x必须早于y,你写的起始时间是2022年,结束时间是2020年,时间逻辑完全反向,触发了范围无效的错误。 - 日期分隔符错误:你使用的是中文全角破折号
–,而Kusto的datetime()函数要求使用英文半角减号-作为日期分隔符,非标准符号会导致日期解析失败。
修正后的查询语句
同时,如果你需要统计结果的数据大小,可以添加summarize语句来计算:
CustomData_CL | where TimeGenerated between (datetime(2020-09-14 04:00:00) .. datetime(2022-09-14 05:00:00)) | summarize 结果数据大小_字节 = sum(estimate_data_size(*))
补充说明
estimate_data_size(*)会计算当前结果集中所有列的数据总大小,单位为字节,你可以根据需求转换为KB/MB(比如除以1024或1024*1024)。- 确认
TimeGenerated是表中正确的时间戳列名,部分自定义日志可能使用其他命名(如Timestamp),需根据实际表结构调整。
内容的提问来源于stack exchange,提问作者dev333
相关产品推荐
相关产品推荐

