【发布时间】:2016-03-10 11:45:42
【问题描述】:
我正在使用 node.js 中的 mongoose 查询 Oplog,以使用以下代码获取最后一条 oplog 记录的时间戳:
oplogModel.find().sort('-ts').limit(1).select('ts').exec(function(err, res){
if (err) {console.log(err);}
lastTimestamp=res[0];
console.log(JSON.stringify(lastTimestamp));
});
但我得到的输出是{"ts":"6260013777081597954"}
当我在 mongo shell 中运行它时,
rs0:PRIMARY> db.oplog.rs.find({}, {ts:1, _id:0}).sort({ts:-1}).limit(1);
我明白了:{ "ts" : Timestamp(1457523037, 2) }
如何将{"ts":"6260013777081597954"} 转换为纪元时间或iso 时间?
这个时间戳是什么格式的?
【问题讨论】:
-
documentation 应该在这里提供帮助。
-
这里出了点问题。使用
bson-timestamp库将您在 Mongo 中获得的时间戳转换为整数会得到完全不同的结果
标签: node.js mongodb datetime mongoose timestamp