我想查询使用Java的mongodbs oplog,如果可能的话用spring mongodb集成。我的问题是从Java创建以下查询:用spring mongo查询oplog时间戳
db['oplog.rs'].find({ "ts": { $gt: Timestamp(1489568405,34) }, $and: [ { "ns": "myns" } ] })
我已经试过像BsonTimestamp或BSONTimestamp一些事情,导致错误的querys。使用
BasicQuery({ "ts": { $gt: Timestamp(1489568405,34) }, $and: [ { "ns": "myns" } ] })
导致java mongodb驱动程序的JSON解析器发生错误。
任何提示?
THX于尔根
一个典型的记录是这样的:
{
"ts" : Timestamp(1489567144, 2),
"t" : NumberLong(2),
"h" : NumberLong(7303473893196954969),
"v" : NumberInt(2),
"op" : "i",
"ns" : "asda.jam",
"o" : {
"_id" : NumberInt(2),
"time" : ISODate("2017-03-15T08:39:00.000+0000"),
"roadDesc" : {
"roadId" : NumberInt(28102917),
"roadName" : "A480 W"
},
"posUpFront" : NumberInt(1003),
"posDownFront" : NumberInt(1003),
"_class" : "de.heuboe.acaJNI.test.Jam"
}
}
THX你的答案但它不起作用。以上代码导致以下查询 {使用查询:{“ts”:{“$ gt”:{“inc”:34,“time”:{“$ date”:“2017-03-15T09:00: 05.000Z“}}},”$和“:[{”ns“:”myns“}]}} 这会导致一个空的结果。 – JayBee
欢迎您。你可以添加你正在查询的记录吗? – Veeram
为了提高可读性,我在记录中添加了一条记录。 Thx为您的努力。 – JayBee