使用JavaScript解析Apache日志时间戳

时间:2015-06-17 21:34:50

标签: javascript mysql apache momentjs

我尝试使用moment.js将Apache日志时间戳(14/Jun/2015:11:05:54 -0700)格式化为正确的MySQL DATETIME格式。

获取MySQL DATETIME格式非常简单。但是时刻似乎只是自动检测ISO 8601格式。将Apache日志的时间戳传入时刻时,我的Node.js控制台输出:

> moment( '08/Jun/2015:15:03:29' ).format("YYYY-MM-DD HH:mm:ss")
'Invalid date'

我无法找到解析Apache日志时间戳的方法,而无需在JavaScript中进行大量的字符串拆分。是否有一种干净的方式将Apache日志时间戳加载到片刻?或者也许进入Date对象?

注意:更改Apache日志的时间戳格式对我的情况不起作用,因为我使用的是旧日志文件,而不是新日志文件。

1 个答案:

答案 0 :(得分:3)

你需要告诉我们字符串的格式,以便解析它。

类似的东西:

moment( '08/Jun/2015:15:03:29', 'DD/MMM/YYYY:HH:mm:ss Z').format("YYYY-MM-DD HH:mm:ss")