A Python performance tracking package
Project description
PerfTracker
PerfTracker is a Python performance tracking package. It allows you to measure and record the execution time of your functions. The package provides a decorator you can add to any function to track its performance.
Features
- Easy to use: Simply add a decorator to your functions.
- Flexible: Set a maximum number of entries to keep for each function.
- Detailed statistics: Get the execution times and calculate the average calls per minute over a certain period.
Installation
Install PerfTracker with pip:
pip install perftracker
Usage
Here is a quick example:
from perftracker import perf, get_stats
@perf(max_entries=100)
def my_function():
# Your code here...
# Get performance statistics
stats = get_stats()
Methods
perf(max_entries=None)
: A decorator to measure and record the execution time of a function. Ifmax_entries
is set, it will limit the number of records kept for the function to this value.get_stats()
: Returns the current Performance instance, which contains all recorded performance data.Performance.add(function, exe_time, max_entries=None)
: Adds an execution time record for a function.Performance.get(function)
: Returns the execution time records for a function.Performance.cpm(function, time_delta)
: Calculates the average calls per minute (CPM) of a function over a certain period.Performance.avg_tme(function, time_delta)
: Calculate the average time a function takes to execute over a certain period.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the terms of the MIT license.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
perftracker-1.0.2.tar.gz
(5.4 kB
view details)
File details
Details for the file perftracker-1.0.2.tar.gz
.
File metadata
- Download URL: perftracker-1.0.2.tar.gz
- Upload date:
- Size: 5.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0621cbec3aa078e626e3cfbb02e6dcf66bb9b353c1ca1ab949b7a25e08499f2b |
|
MD5 | 229bcc305b0c7d31c092ddd9a47037cd |
|
BLAKE2b-256 | 46f93bd54b17a95da416a8865bb90b6264572af52b0ddddd7978ce7c0c451da2 |