Lição 4
ISO 8601 e formatos de tempo em logs
Sufixo `Z`, offsets como `+08:00` e estilos mistos em linhas de log.
ISO 8601 é o formato textual mais comum para datetimes em APIs e configs modernas. Logs costumam misturar ISO, inteiros epoch e strings dependentes de locale no mesmo arquivo.
Blocos de ISO 8601
2024-03-15T14:30:00Z # UTC
2024-03-15T14:30:00+08:00 # Offset fixo em relação ao UTC
2024-03-15T14:30:00.123Z # Segundos fracionários
Tsepara data e horaZou offset numérico tornam o instante inequívoco- Omitir offset e contexto de fuso convida a bugs
Strings estilo RFC 2822 / e-mail
Você pode ver:
Mon, 15 Mar 2024 14:30:00 +0000
Incluem nome do dia da semana e abreviação de mês. Parsers existem na maioria das linguagens, mas são menos uniformes que ISO — valide com cuidado.
Padrões em linhas de log
Combinações típicas:
| Estilo | Exemplo | Notas |
|---|---|---|
| Epoch em segundos | 1700000000 | Compacto; precisa conversão para humanos |
| ISO UTC | 2023-11-14T22:13:20Z | Autoexplicativo |
| Local + offset | 2023-11-15 06:13:20 +0800 | Comum em logs de app |
| Separado por espaço | 2023-11-14 22:13:20 | Ambíguo sem fuso |
Ao fazer grep em logs, extraia a parte numérica ou ISO antes de parsear — prefixos (INFO, trace IDs) não fazem parte do datetime.
Conclusão
Prefira ISO com Z ou offset explícito em sistemas novos. Ao ingerir logs legados, identifique o formato por campo antes de converter para epoch para correlação.