Table-based exploration tool for Python profiling data (pstats files).
Project description
Table-based exploration tool for Python profiling data (pstats files).
Get better at command line Git with my book Boost Your Git DX.
Requirements
Python 3.10 to 3.14 supported.
Installation
Install with pip:
python -m pip install profiling-explorer
Usage
profiling-explorer reads pstats files as generated by Python’s profilers: profiling.tracing (called cProfile on Python < 3.15) and profiling.sampling (new in Python 3.15). To use it, first generate a profile file, for example by running your program under cProfile:
$ python -m cProfile -o example.pstats example.py
(Also runnable as python -m profiling.tracing instead on Python 3.15+.)
Then run profiling-explorer with the generated file:
$ profiling-explorer example.pstats
The report will open in your web browser, and you can explore the profile data with the interactive interface. Features:
Click the calls, internal ms, or cumulative ms column headers to sort by that column.
Use the search box to filter by filename or function name.
Hover by a filename + line number pair to reveal the copy button, which copies the location to your clipboard for faster opening.
Click the callers or callees links on the right of a row to see the callers or callees of that function.
Full help:
usage: profiling-explorer [-h] [--port PORT] [--dev] FILE
positional arguments:
FILE The pstats data file to explore.
options:
-h, --help show this help message and exit
--port PORT Port for the local web server (default: 8099).
--dev Run in development mode (enables server reload and debug mode).
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file profiling_explorer-1.0.0.tar.gz.
File metadata
- Download URL: profiling_explorer-1.0.0.tar.gz
- Upload date:
- Size: 15.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6891d776dace2ffc707581606b113139754f8fff27148f889441b88f9735c549
|
|
| MD5 |
4878b0ec451d295aecd554e7a7ac18a1
|
|
| BLAKE2b-256 |
789344dcce7a1a237cf684fec591b4e8844f92cff9e4c9db7cb7ed05040f7101
|
Provenance
The following attestation bundles were made for profiling_explorer-1.0.0.tar.gz:
Publisher:
main.yml on adamchainz/profiling-explorer
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
profiling_explorer-1.0.0.tar.gz -
Subject digest:
6891d776dace2ffc707581606b113139754f8fff27148f889441b88f9735c549 - Sigstore transparency entry: 1209782431
- Sigstore integration time:
-
Permalink:
adamchainz/profiling-explorer@f7e2308a08bb85a3faf445d17fc676af9f1620a2 -
Branch / Tag:
refs/tags/1.0.0 - Owner: https://github.com/adamchainz
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
main.yml@f7e2308a08bb85a3faf445d17fc676af9f1620a2 -
Trigger Event:
push
-
Statement type:
File details
Details for the file profiling_explorer-1.0.0-py3-none-any.whl.
File metadata
- Download URL: profiling_explorer-1.0.0-py3-none-any.whl
- Upload date:
- Size: 16.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
30e55ac54c62de191339b1d6cf442449de5c388f07861e01aee3670d74fba7a4
|
|
| MD5 |
28b2b09c351cd34e56365a70d5d4cb81
|
|
| BLAKE2b-256 |
8f35d989ee8974657dd03771302154595a5ed8b3b788ae76f91979ebeb1322fd
|
Provenance
The following attestation bundles were made for profiling_explorer-1.0.0-py3-none-any.whl:
Publisher:
main.yml on adamchainz/profiling-explorer
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
profiling_explorer-1.0.0-py3-none-any.whl -
Subject digest:
30e55ac54c62de191339b1d6cf442449de5c388f07861e01aee3670d74fba7a4 - Sigstore transparency entry: 1209782495
- Sigstore integration time:
-
Permalink:
adamchainz/profiling-explorer@f7e2308a08bb85a3faf445d17fc676af9f1620a2 -
Branch / Tag:
refs/tags/1.0.0 - Owner: https://github.com/adamchainz
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
main.yml@f7e2308a08bb85a3faf445d17fc676af9f1620a2 -
Trigger Event:
push
-
Statement type: