第 4 课
ISO 8601 与日志时间格式
理解 `Z` 后缀、`+08:00` 偏移,以及日志中混用的时间样式。
ISO 8601 是现代 API 与配置中最常见的日期时间文本格式。同一日志文件里常混用 ISO、epoch 整数与本地化字符串。
ISO 8601 结构
2024-03-15T14:30:00Z # UTC
2024-03-15T14:30:00+08:00 # 相对 UTC 的固定偏移
2024-03-15T14:30:00.123Z # 含小数秒
T分隔日期与时间Z或数字偏移使瞬间无歧义- 既无偏移又无 timezone 上下文时容易出错
RFC 2822 / 邮件风格
Mon, 15 Mar 2024 14:30:00 +0000
含星期与月份缩写。各语言有解析器,但一致性不如 ISO——需验证。
日志常见模式
| 风格 | 示例 | 说明 |
|---|---|---|
| Epoch 秒 | 1700000000 | 紧凑,需转换才易读 |
| ISO UTC | 2023-11-14T22:13:20Z | 自描述 |
| 本地 + 偏移 | 2023-11-15 06:13:20 +0800 | 应用日志常见 |
| 空格分隔 | 2023-11-14 22:13:20 | 无 timezone 时 有歧义 |
grep 日志时,先抽出数字或 ISO 片段再解析——前缀(INFO、trace ID)不是时间的一部分。
要点
新系统优先 带 Z 或偏移的 ISO。 ingestion 旧日志时,先识别字段格式再转 epoch 做关联。