我希望能够检测 Python 应用程序,以便我知道:
- 页面生成时间。
- 在外部请求(mysql、api 调用)上花费的时间百分比。
- mysql 查询的数量,MySQL 查询是什么。
我想要这些来自生产环境的数据(而不是离线分析)——因为在不同地方花费的时间在负载下会有所不同。
在 PHP 中,我可以使用 XHProf 或 instrumentation-for-php 来做到这一点。在 Ruby on Rails/.NET/Java 中,我可以使用 New Relic 做到这一点。
Python或者django有没有推荐的包?
最佳答案
是的,这是完全可能的。例如。在 URL 中使用一些神奇的开关,比如“?profile-me”,它会触发 Django 中间件中的分析。
互联网上有许多片段,例如:http://djangosnippets.org/snippets/70/或像这样的模块:http://code.google.com/p/django-profiling/ - 但我没有使用过它们中的任何一个,所以我不能推荐任何东西。
无论如何,他们采用的方法与我所做的类似 - 即使用 Python Hotshot包装 View 的中间件中的分析器模块。对于 MySQL 部分,您可以只使用 connection.queries形成 Django。
Hotshot 的好处在于它的输出可以使用 Kcachegrind 浏览,如下所示:http://www.rkblog.rk.edu.pl/w/p/django-profiling-hotshot-and-kcachegrind/
关于python - 是否有生产安全的方法来衡量在使用 Python 的生产中花费的时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4157605/