Mongoengine烧瓶获取dbstats

时间:2019-10-19 19:15:09

标签: python mongodb mongoengine flask-mongoengine

无法弄清楚如何在Mongoengine中获取db.stats。 我尝试过:

db = MongoEngine()
db.stats()

db.Document.objects.stats()
db.Document.stats()

也尝试执行JS,但是没有任何效果,文档也很差。

2 个答案:

答案 0 :(得分:1)

db.statsmongo's shell method

您可以尝试类似的操作:

from mongoengine.connection import get_connection
con = get_connection()

con.get_database().eval('db.stats()')
con.get_database().eval('db.getCollectionInfos()')

我也建议您使用dir方法检查对象,有时可能会有用:

from pprint import pprint
pprint(dir(con))

答案 1 :(得分:1)

MongoEngine是PyMongo的包装器。因此,要使用mongoengine获取mongo数据库的统计信息,可以使用pymongo命令功能在数据库上运行'dbstats'mongodb api命令:

from mongoengine import connect

client = connect()
db = client.get_database('your_database_name')
db_stats = db.command('dbstat')
coll_stats = db.command('collstats', 'your_colletion_name')
print(db_stats)
print(coll_stats)