簡體   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