Log Analytics Workspace中KQL查询日期变量解析错误求助
KQL查询错误修正:筛选密钥过期超3年的应用注册
问题根源
你用format_datetime()将计算出的datetime类型转换成了字符串,之后试图用datetime(newyear)解析变量——但KQL的datetime()函数仅支持接收字符串字面量(比如datetime(2025-01-01)),不能处理变量,这是导致解析错误的核心原因。
正确查询写法
根本不需要将日期转成字符串,直接保留datetime类型做比较即可:
// 直接计算当前时间3年后的datetime值,无需格式化为字符串 let three_years_later = datetime_add('year', 3, now()); // 筛选密钥过期时间晚于3年后的应用注册 AppRegExp_CL | project AppRegName_s, AppID_g, SecretEndDate_t | where SecretEndDate_t >= three_years_later
补充说明
如果SecretEndDate_t字段本身存储的是字符串类型(而非datetime),需要先将其转换为datetime类型再做比较:
let three_years_later = datetime_add('year', 3, now()); AppRegExp_CL | project AppRegName_s, AppID_g, SecretEndDate_t | where to_datetime(SecretEndDate_t) >= three_years_later
内容的提问来源于stack exchange,提问作者azpd
相关产品推荐
相关产品推荐

