时间格式约定

面向集成与存储的统一时间戳格式。

时间格式约定

HUATUO 统一以 UTC 和固定九位纳秒精度序列化时间戳:

2006-01-02T15:04:05.000000000Z

例如,2026 年 7 月 22 日 00:30:00.123456789 的事件会写为:

2026-07-22T00:30:00.123456789Z

为什么使用固定 UTC 精度

  • 所有主机都使用 Z 时区,分布式查询无需处理不同的本地时区。
  • 九位小数使字符串宽度固定,因此字典序与时间序一致,便于日志文件和关键字索引存储排序。
  • 纳秒精度能够保留 Go time.Time 与事件追踪流水线提供的时间信息。

集成建议

向 HUATUO 写入数据时,请使用统一辅助函数:

timestamp := timeutil.FormatUTC(time.Now())

读取时间戳时使用 timeutil.Parse。它既支持统一格式,也支持包含 0 到 9 位小数的 RFC 3339 旧数据;返回值始终会规范化为 UTC。

只有在两侧均由 FormatUTC 生成字符串时,才应直接按字符串比较时间。第三方 RFC 3339 值可能使用可变小数精度或非 UTC 偏移。