3

我想验证我们设置的几个 Mongo DB 是否被实际使用。因此,我希望获得最后一次写入操作的时间戳。到目前为止我发现了什么:

  • 查询带有时间戳的集合。问题:不同集合的不同查询。并非所有人都有时间戳。许多数据库中的许多集合。

  • 一般的oplog。对于 STANDALONE 服务器将无法工作 - 除非我现在通过使独立服务器在副本集中运行来创建 oplog。然后也许我可以 ping oplog 并获取数据。让 JS 脚本请求最后一个对象可能会更快。

  • mongooplog命令。用于复制更改(将更改从 A 应用到 B)。我宁愿浏览 oplog 本身。

  • 使用 ObjectID(它的时间戳精确到一秒)。甚至还有详细介绍如何使用.

不过,我想知道是否有办法只查询数据库并让它回答。最好是每个集合,但如果我能得到每个数据库的答案,那就太酷了。这将允许我删除未使用的数据库。有什么我可以用的吗?

4

1 回答 1

1

关于什么

db.serverStatus() 

在此命令的输出中,您有许多操作:

"opcounters" : {
        "insert" : 1111,
        "query" : 532,
        "update" : 0,
        "delete" : 0,
        "getmore" : 4,
        "command" : 357
    },

连接数:

"connections" : {
    "current" : 1,
    "available" : 2047
},

网络利用率:

"network" : {
    "bytesIn" : 82202280,
    "bytesOut" : 24469137,
    "numRequests" : 1635
},

简单的监控就够了

于 2013-04-24T11:17:37.540 回答