我想查詢使用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