Skip to main content

Aggregate profiling for WSGI requests

Project description

repoze.profile

https://travis-ci.org/repoze/repoze.profile.png?branch=master Documentation Status https://img.shields.io/pypi/v/repoze.profile.svg https://img.shields.io/pypi/pyversions/repoze.profile.svg

This package provides a WSGI middleware component which aggregates profiling data across all requests to a WSGI application. It provides a minimal web GUI for viewing profiling data.

Installation

Install using setuptools, e.g. (within a virtualenv):

$ easy_install repoze.profile

or via pip:

$ pip install repoze.profile

Usage

For details on using the various components, please see the documentation in docs/index.rst. A rendered version of that documentation is also available online:

Reporting Bugs

Please report bugs in this package to

https://github.com/repoze/repoze.profile/issues

Obtaining Source Code

Download development or tagged versions of the software by visiting:

https://github.com/repoze/repoze.profile

repoze.profile Changelog

2.3 (2018-11-12)

  • Add support for Python 3.6 and 3.7.

  • Drop support for Python 3.3.

2.2 (2016-06-03)

  • Add decorator for profiling individual functions.

  • Add support for Python 3.5.

  • Drop support for Python 2.6 and Python 3.2.

2.1 (2015-05-28)

  • Add support for testing on Travis-CI.

  • Add support for Python 3.4.

2.0 (2013-04-08)

  • No changes since 2.0b1.

2.0b1 (2013-01-30)

  • Add support for building docs / exercising doctest snippets under tox.

  • Add setup.py docs alias (installs Sphinx).

  • Note support for PyPy.

  • Add support for Python 3.3.

  • Drop support for Python 2.4 / 2.5.

1.4 (2012-03-29)

  • This release is the last which will maintain support for Python 2.4 / Python 2.5.

  • Added an unwind configuration option. If unwind is True, the iterable returned by the downstream application will be consumed and turned into a list during profiling. This allows you to profile applications which return generators or other iterables that do “real work”.

  • Applications which return generators that do “real work” will now need to supply the unwind flag to configuration to see that work in profile output.

1.3 (2011-09-30)

  • Added an option to filter profile output by filename. Thanks to Shish for the patch.

  • Put a lock around “index” method in order to prevent exceptions when trying to view profile data as it’s being generated. Closes http://bugs.repoze.org/issue168.

  • Removed these dependencies: meld3, paste.

  • A new paste.filter_app_factory entry point has been added named main which points to the profiler. This allows for the simplified spelling egg:repoze.profile in paste.ini files when referring to the profile middleware (instead of the older, more verbose egg:repoze.profile#profiler. The older alias continues to work as well.

  • The new canonical import location for the profiling middleware is repoze.profile.ProfileMiddleware. Older imports continue to work.

  • Remove ez_setup.py.

  • Python 3.2 compatibility.

1.2 (2010-11-25)

1.1 (2009-10-06)

  • 100% test coverage.

  • Get rid of spurious measurements of testing scaffolding in profile output (show no calls that are inside r.profile itself).

1.0 (2009-06-04)

  • Relax the pinned requirement on elementtree < 1.2.7.

0.9 (2009-05-10)

  • Made the pyprof2calltree dependency conditional on the Python version. This package depends on Python >= 2.5.

0.8 (2009-02-25)

  • Added optional support for directly writing out the profiling data in the KCacheGrind format.

  • Avoid a dependency on elementtree when used with Python 2.5 and later. In those Python versions we used the built-in xml.etree support.

0.7 (2009-02-08)

  • discard_first_request = true did not work!

  • Added tests for discard_first_request and flush_at_shutdown.

  • Converted CHANGES.txt to ReST.

  • Bump ez_setup.py version.

0.6 (2008-08-21)

  • discard_first_request = false did not work.

  • Clearing the profile data from the user interface did not properly

    discard profiler state.

0.5 (2008-06-11)

  • Initial PyPI release.

0.4 (2008-05-07)

  • Remove dependency-link to http://dist.repoze.org to prevent easy_install from adding that to its search path.

  • Incorporated a patch from Alec Flett <alecf@metaweb.com> to uses cProfile, if available, rather than pure Python profile.

  • Bump ez_setup.py version.

0.3 (2008-02-20)

  • Added compatibility with Python 2.5.

  • Made setup.py depend explicitly on ElementTree 1.2.6: meld needs it but meld isn’t a setuptools package.

0.2 (2008-02-20)

  • Added a browser UI.

  • Added a knob to control discard at shutdown.

0.1 (2008-02-08)

  • Initial release.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

repoze.profile-2.3.tar.gz (141.3 kB view details)

Uploaded Source

Built Distribution

repoze.profile-2.3-py3-none-any.whl (14.4 kB view details)

Uploaded Python 3

File details

Details for the file repoze.profile-2.3.tar.gz.

File metadata

  • Download URL: repoze.profile-2.3.tar.gz
  • Upload date:
  • Size: 141.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/2.7.14

File hashes

Hashes for repoze.profile-2.3.tar.gz
Algorithm Hash digest
SHA256 a13e01a40f8780d4c445758159be191bbd14f45040c49888fb2335fefffd5b8e
MD5 65e87b8ef5ac7e6b2074decdb89a180b
BLAKE2b-256 f620364581f56bfadb4cb5ee412f18001916707071be83bc5165943930803f48

See more details on using hashes here.

File details

Details for the file repoze.profile-2.3-py3-none-any.whl.

File metadata

  • Download URL: repoze.profile-2.3-py3-none-any.whl
  • Upload date:
  • Size: 14.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/2.7.14

File hashes

Hashes for repoze.profile-2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 6aaa0201d4cda2e7f97c119d7dfc87376aab7e7dd48d6f85d0000351ffe67509
MD5 a8ff35d9ef664d57338d5b29fcf6284e
BLAKE2b-256 201516b9d1ed70fe1229290038aba646394287b81b6150abb099898930a6e725

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page