日志中的时间戳格式
大多数日志行包含时间戳和事件描述:
[When] [What]例如:
[23/Jul/2013:19:35:11 +0000] Processing started.
[23/Jul/2013:19:36:11 +0000] Processed 1000 items.
[23/Jul/2013:19:37:11 +0000] Processing finished successfully.我正在试图为我的日志行找到一个标准的时间戳。我的标准是:
grep事件并使用POSIX sort或甚至word/excel对它们进行排序时,我希望按字母顺序排序以遵循时间顺序排序。例如,[23/Jul/2012:19:35:11 +0000]和[22/Jul/2013:19:35:11 +0000]是不可排序的--2013年的行将出现在2012年行的前面。到目前为止,我发现的唯一标准是8601,它有许多变体(例如2007-04-05T14:30Z和2007-03-01T13:00:00Z),并且缺乏日志行事件的明确标准。
您能为日志行推荐一种标准的时间戳格式吗?
发布于 2013-08-01 00:03:48

@J.F. Sebestian -谢谢你的评论。
经过一些研究,我选择了协调世界时RFC 3339 / ISO 8601,例如:
date -u "+[%Y-%m-%d %H:%M:%S%z (%Z)]" # Space separated with tz abbreviation
[2013-07-31 23:56:34+0000 (UTC)]
date -u "+[%Y-%m-%d %H:%M:%S.%N %z (%Z)]" # Space separated with nanoseconds and tz abbreviation
[2013-07-31 23:56:34.812572000 +0000 (UTC)]功能:
[,]分隔,用于重新确定日期。我还创建了一个不错的github项目,它有助于日期格式化 --可以随意查看并建议您自己的格式!
发布于 2017-04-10 13:24:26
unix命令有这样一个选项。使用
date -Iseconds或
date -Ins传令上写着:
-I[FMT], --iso-8601[=FMT]
output date/time in ISO 8601 format. FMT='date' for date only (the default),
'hours', 'minutes', 'seconds', or 'ns' for date and time to the indicated preci‐
sion. Example: 2006-08-14T02:34:56-0600https://stackoverflow.com/questions/17819834
复制相似问题