{ "info": { "author": "Timothy Palpant", "author_email": "tim@palpant.us", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)", "Operating System :: POSIX", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Software Development :: Testing" ], "description": "# pypprof\npypprof adds HTTP-based endpoints for collecting profiles from a running Python application a la Go's [`net/http/pprof`](https://golang.org/pkg/net/http/pprof/).\n\nUnder the hood, it uses [zprofile](https://github.com/timpalpant/zprofile) and [mprofile](https://github.com/timpalpant/mprofile) to collect CPU and heap profiles with minimal overhead.\n\n# Usage\n\n## Add profiling endpoints to an application\n\nRegister the profiling endpoints in your application:\n```python\nfrom pypprof.net_http import start_pprof_server\n\nstart_pprof_server(port=8081)\n```\n\n## Fetch profiles from your running application\n\nFetch a 30s CPU profile, and view as a flamegraph:\n```bash\n$ go tool pprof -http=:8088 :8081/debug/pprof/profile\n```\n\nFetch a heap profile:\n```bash\n$ go tool pprof :8081/debug/pprof/heap\n```\n\nDump stacks from your application:\n```bash\n$ curl localhost:8081/debug/pprof/thread?debug=1\n```\n\n# Compatibility\n\npypprof is compatible with Python >= 2.7. Memory profiling is only available by default in Python >= 3.4. To enable memory profiling in earlier Pythons, you must patch Python and manually install [mprofile](https://github.com/timpalpant/mprofile).\n\n# Contributing\n\nPull requests and issues are welcomed!\n\n# License\n\npypprof is released under the [GNU Lesser General Public License, Version 3.0](https://www.gnu.org/licenses/lgpl-3.0.en.html)", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/timpalpant/pypprof", "keywords": "profiling performance", "license": "LGPLv3", "maintainer": "", "maintainer_email": "", "name": "pypprof", "package_url": "https://pypi.org/project/pypprof/", "platform": "Mac OS X", "project_url": "https://pypi.org/project/pypprof/", "project_urls": { "Homepage": "http://github.com/timpalpant/pypprof", "Source": "https://github.com/timpalpant/pypprof", "Tracker": "https://github.com/timpalpant/pypprof/issues" }, "release_url": "https://pypi.org/project/pypprof/0.0.1/", "requires_dist": null, "requires_python": "", "summary": "Python profiler endpoints like Go's net/http/pprof.", "version": "0.0.1" }, "last_serial": 5932434, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "27b27df76b748cc4b893a2f61984da81", "sha256": "08deae1734ba5cd11fc9def23b40d1fe28a758a214ff58794d7a2f96aa5bfa2c" }, "downloads": -1, "filename": "pypprof-0.0.1.tar.gz", "has_sig": false, "md5_digest": "27b27df76b748cc4b893a2f61984da81", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11344, "upload_time": "2019-10-05T16:25:31", "url": "https://files.pythonhosted.org/packages/60/6a/1486f0320376119e93c7ca4208f1105d592ee80e2a0fcddb282e9df762a7/pypprof-0.0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "27b27df76b748cc4b893a2f61984da81", "sha256": "08deae1734ba5cd11fc9def23b40d1fe28a758a214ff58794d7a2f96aa5bfa2c" }, "downloads": -1, "filename": "pypprof-0.0.1.tar.gz", "has_sig": false, "md5_digest": "27b27df76b748cc4b893a2f61984da81", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11344, "upload_time": "2019-10-05T16:25:31", "url": "https://files.pythonhosted.org/packages/60/6a/1486f0320376119e93c7ca4208f1105d592ee80e2a0fcddb282e9df762a7/pypprof-0.0.1.tar.gz" } ] }