0
<field>
<name value="timestamp" />
<layout type="log4net.Layout.PatternLayout" value="%date" />
</field>
存儲日誌與log4mongo,但我無法使用時間戳字段的TTL操作。
db.logs.ensureIndex({ "timestamp": 1 }, { expireAfterSeconds: 3600 })
應該不是這可能嗎?如果不是,我該怎麼辦?
P.S.時間戳不是一個索引字段(在此之前,ensureIndex調用)
你是從收到錯誤消息回ensureindex()調用?如果有,請將它添加到您的問題。另外,你可以添加一個來自日誌集合的示例文檔(也許運行db.logs.findOne())? –
是否有可能您的時間戳不是MongoDB集合中的本機Date類型。可能你的佈局實際上是產生一個字符串。請參閱[測試用例]中的配置(https://github.com/log4mongo/log4mongo-net/blob/master/src/Log4Mongo.Tests/MongoDBAppenderTest.cs#L39-L42) –
我已經提交了一個請求(https://github.com/log4mongo/log4mongo-net/pull/29)啓用TTL索引。 – seanfitzg