分析在 Mod_wsgi 上运行的 Python 脚本

Posted

技术标签:

【中文标题】分析在 Mod_wsgi 上运行的 Python 脚本【英文标题】:Profiling Python Scripts running on Mod_wsgi 【发布时间】:2009-07-23 05:52:07 【问题描述】:

如何分析在 apache 上的 mod_wsgi 上运行的 python 脚本

我想使用 cProfile,但它似乎需要我手动调用一个函数。有没有办法全局启用 cProfile 并让它继续记录结果。

【问题讨论】:

【参考方案1】:

您需要将 wsgi 应用程序函数包装在另一个函数中,该函数只使用 cProfile 调用您的函数并将其用作应用程序。或者您可以重用现有的 WSGI 中间件来为您执行此操作,例如 repoze.profile 几乎可以满足您的需求。

【讨论】:

【参考方案2】:

这是WHIFF 的 WSGI 配置文件中间件(目前仅可从 mercurial 存储库获得): profile.py。那应该让你开始。如果您想修改它以在 WHIFF 上下文之外运行,请更改行

 gateway.putResource(env, resourcePath, report)

类似

 file("/tmp/profile.txt", "w").write(report)

【讨论】:

以上是关于分析在 Mod_wsgi 上运行的 Python 脚本的主要内容,如果未能解决你的问题,请参考以下文章