在Django的默認數據庫驅動程序中,有一個針對django.db.connection.queries
中的數據庫的原始查詢列表。如何記錄pymongo查詢?
在MongoDB驅動程序pymongo中是否有類似的東西可以在單個Django http往返中打開?
更具體地說,我有一個useful middleware,它顯示了Django支持的RDB的SQL查詢列表,我希望對使用pymongo的API堆棧也有同樣的事情。
在Django的默認數據庫驅動程序中,有一個針對django.db.connection.queries
中的數據庫的原始查詢列表。如何記錄pymongo查詢?
在MongoDB驅動程序pymongo中是否有類似的東西可以在單個Django http往返中打開?
更具體地說,我有一個useful middleware,它顯示了Django支持的RDB的SQL查詢列表,我希望對使用pymongo的API堆棧也有同樣的事情。
創建我自己的Django中間件,儀器pymongo.connection.Connection._send_message()
將查詢記錄到Django的connection.queries
中。
存儲爲sql_mongodb_dump_middleware.py在任何有興趣的要點,歡迎評論。
您還可以運行:
的mongod -vv(或更多-vvvvv)
讓服務器日誌的查詢。
看看這個線程:
https://groups.google.com/forum/?fromgroups=#!topic/mongodb-user/OKlfkDjZFso
它有一些有趣的見解。它指向:http://www.mongodb.org/display/DOCS/Database+Profiler,它展示了一些本地mongo函數來記錄查詢,特別是慢速查詢。
但是,這將記錄所有的查詢,這真的不是我想要的。因爲我只想得到在特定請求往返中使用的查詢。 – Evgeny 2012-09-10 22:01:44