You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Log Analytics自定义表旧时间戳TimeGenerated被覆盖问题求助

问题分析与解决:Azure Log Analytics旧日志TimeGenerated被覆盖为当前时间

问题原因

Azure Monitor日志摄入存在默认时间戳校验机制:当日志的时间戳(即你通过KQL生成的TimeGenerated)距离当前时间超过默认的24小时延迟窗口时,系统会自动忽略转换后的TimeGenerated,强制将其替换为日志的实际摄入时间。你的场景中,旧日志是两天前的时间戳,超出了默认窗口,因此触发了这个机制,导致TimeGenerated被覆盖。

解决方法

1. 调整自定义表的摄入延迟阈值

进入Log Analytics工作区的自定义表配置页面,找到目标表:

  • 打开表的「数据保留和摄入设置」
  • 将「摄入延迟」的最大值调整为覆盖你的旧日志时间范围(比如设置为48小时或更长)
  • 保存设置后,系统会允许该时间范围内的旧日志使用自定义的TimeGenerated值

2. 确认DCR转换规则的正确性

确保你的转换规则没有后续逻辑覆盖TimeGenerated,同时验证Time字段格式可被todatetime正确解析:

source
| extend TimeGenerated = todatetime(Time)
| project-away Time

若Time字段格式解析失败,系统同样会自动 fallback 到摄入时间。

3. 验证修复效果

重新发送带有旧时间戳的测试日志:

{
    "Time": "2023-02-05 11:15:23.926060",
    "Source": "VM03",
    "Status": 1
}

通过KQL查询目标表,确认TimeGenerated已正确映射为日志中的原始时间,而非摄入时间。


内容的提问来源于stack exchange,提问作者Vitamin C

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 22:55:16