Perfnetto
Perfnetto wraps the Perfetto tracing SDK to make it possible to trace Python code.
[!NOTE]
This is a very new project and certainly rough around the edges. Please report any issues you find – I hope it's useful in any case.
Installation
From PyPI
Prebuilt binary wheels are available for Linux and macOS for recent versions of Python on PyPI,
so you can use pip or uv pip to install it.
Building from source
Source packages are not available on PyPI (so pip install perfnetto won't work out of the box)
because of the submodule dependency on the Perfetto SDK.
Usage
The high-level API is the with perfnetto.tracing() as ctx: context manager.
Code run within this block is traced into a perfnetto-(TIME).dump file, unless you specify another name.
Perfnetto will log the name of the output file onto the standard Python logger as it finishes.
When tracing, you can use with perfnetto.region(name): to mark a region.
You can also set instant marks with perfnetto.instant(name).
Once you have a dump file, view it with ui.perfetto.dev.
License
Since the majority of this code is a wrapper around the Perfetto library, it is licensed under the same license.
This project is licensed under the Apache License, Version 2.0.
See the LICENSE file for more details.
Metadata
Release files for perfnetto 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| perfnetto-0.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.13 | CPython 3.13 | Linux glibc 2.17+ x86-64 | Details for perfnetto-0.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
| perfnetto-0.1.0-cp313-cp313-macosx_11_0_arm64.whl | CPython 3.13 | CPython 3.13 | macOS 11.0+ ARM64 | Details for perfnetto-0.1.0-cp313-cp313-macosx_11_0_arm64.whl |
| perfnetto-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.12 | CPython 3.12 | Linux glibc 2.17+ x86-64 | Details for perfnetto-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
Total release size: 28.8 MB
Release files / perfnetto-0.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | perfnetto-0.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 13.9 MB |
| Tags | CPython 3.13 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
d8681e0db76b0c63b7e0675fb9dd49920f5e496f0f99619b66ad1617e06981e9
|
|
BLAKE2b-256 checksum How to use checksums |
9f411cb2a63c5490e753467b2b1eb400006f09c72a918d992326b950cc904a32
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/5.1.1 CPython/3.12.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 4, 2024.
Transparency logRelease files / perfnetto-0.1.0-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | perfnetto-0.1.0-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 1.1 MB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
292acd2815a55e109e84b0662b81d9a7109646a6d5991e5e213d62130e5e90c1
|
|
BLAKE2b-256 checksum How to use checksums |
e30b877eb6c3b822b9303aadbb0c8c11e37a2c41d2bc680c25dda67470df0be1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/5.1.1 CPython/3.12.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 4, 2024.
Transparency logRelease files / perfnetto-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | perfnetto-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 13.9 MB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
c841ac3df9344fdb5468bd4bfe71226646f43ef7d5b4e9494e4623eedcaa9fae
|
|
BLAKE2b-256 checksum How to use checksums |
5bf7885dc11345f12acf4436c9c9ec7b9eec01a12f66e852bb4d6381f12a7571
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/5.1.1 CPython/3.12.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 4, 2024.
Transparency logSecurity for perfnetto 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 3 files in this release have been uploaded with provenance metadata.
Attestation for perfnetto-0.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 4, 2024.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.