我希望在Mongodb中发生的任何创建,更新或删除操作上跟踪(通过登录到另一个集合)。
我现有的应用程序(NodeJs)使用mongoose作为存储库。我每次在DB中发生变化(CUD)时都会尝试记录。简单的解决方案是在我修改到db的地方添加日志,但我有很多方法。我想知道我是否可以“挂钩”帖子全局保存?就像Mongo的中间件一样。
答案 0 :(得分:1)
在您要记录的架构上使用以下挂钩(这仅用于保存功能)
schema.post('save', function(next){
//log data using this here
next();
})
请参阅此链接: http://mongoosejs.com/docs/middleware.html
根据此链接:
> use myDb
switched to db myDb
> db.getProfilingLevel()
0
> db.setProfilingLevel(2)
{ "was" : 0, "slowms" : 1, "ok" : 1 }
> db.getProfilingLevel()
2
> db.system.profile.find().pretty()