分析在 Mod_wsgi 上运行的 Python 脚本

发布于 2024-07-27 14:09:46 字数 115 浏览 4 评论 0原文

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

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

How can I profile a python script running on mod_wsgi on apache

I would like to use cProfile but it seems it requires me to invoke a function manually. Is there a way to enable cProfile globally and have it keep on logging results.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

爱,才寂寞 2024-08-03 14:09:46

您需要将 wsgi 应用程序函数包装在另一个函数中,该函数仅使用 cProfile 调用您的函数并将其用作应用程序。 或者您可以重用现有的 WSGI 中间件来为您完成此操作,例如 repoze.profile 几乎可以完成您的任务似乎想要。

You need to wrap you wsgi application function inside another function that just calls your function using cProfile and use that as the application. Or you can reuse existing WSGI middleware to do that for you, for example repoze.profile does pretty much what you seem to want.

你怎么敢 2024-08-03 14:09:46

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

 gateway.putResource(env, resourcePath, report)

为类似的内容

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

Here is the WSGI profile middleware for WHIFF (currently only available from the mercurial repository):
profile.py. That should get you started. If you want to modify it to run outside of the WHIFF context change the line

 gateway.putResource(env, resourcePath, report)

to something like

 file("/tmp/profile.txt", "w").write(report)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文