无法弄清楚如何在Mongoengine中获取db.stats。 我尝试过:
db = MongoEngine()
db.stats()
也
db.Document.objects.stats()
db.Document.stats()
也尝试执行JS,但是没有任何效果,文档也很差。
答案 0 :(得分:1)
db.stats
是mongo'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)