繁体   English   中英

MongoDB跟踪用户mande的变化

[英]MongoDB track which user mande changes

我们正在运行一个微服务架构,其中有多个系统可以访问MongoDB中的共享集合(是的,有问题的设计,但我们正处于过渡期以摆脱这种局面。)

我们正试图找到一种方法来跟踪oplog中的哪些更改由哪个“用户”/服务(每个微服务使用不同的凭据)实际进行了此更改。 如果我们在数据库中发现任何无效的更改,这将使得找出哪个系统被淘汰非常容易。

有任何想法吗?

到目前为止,我提出的唯一一个必须改变客户端代码,我想避免。

如果您可以维护列editors ,使每个操作都有{ $addToSet: { editors: { by: userId, at: new Date() } } } ,那么相应的oplog条目将具有您可以交叉的信息检查您的访问控制列表。

注意:您可能必须将插入更改为upserts,或者考虑另一种情况: .insert({ ..., editors: [{ by: userId, at: new Date() }] })

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM