0

我们在 Heroku 上使用MongoHQ插件和Mongoid 3.0适配器。插件计划带有大小限制,当达到 DB 限制时,Mongo 将默默地失败写入(除非配置为安全模式——在这种情况下它会抛出异常)。

我正在尝试从应用程序中查询我们离我们有多近,并在我们达到限制时发送警报。我怎样才能运行类似db.stats()命令但使用 Mongoid 的东西?

4

2 回答 2

1

我在 Mongoid 3.x 中找到了如何做到这一点,它使用 Moped 作为驱动程序,而不是 10gen 的 Ruby 驱动程序。

是 Moped 的作者本人回答了关于此事提出的github 问题

Mongoid.default_session.command(collstats: 'collection_name')

db.stats()这将返回与Mongo 控制台相同的结果。作为额外的奖励,如果集合有上限,则返回值中会有一个标志表明这一点。

于 2013-01-22T02:15:15.710 回答
0

您可以在您的对象(例如文档)上调用“.db”方法,然后对其执行 .stats。

例如:

MyBlog.db.stats

对于 Mongoid 3.0.0 之前的版本,Mongoid.master.stats也应该可以工作。

于 2012-11-20T08:16:57.000 回答