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.1.tar.gz
(5.2 kB
view details)
File details
Details for the file perftracker-1.0.1.tar.gz
.
File metadata
- Download URL: perftracker-1.0.1.tar.gz
- Upload date:
- Size: 5.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8c92e881776f84998ec48aaefc2deaa8cab52876dd62914e81c1cb17826bc39e |
|
MD5 | b7f23b2176c420b8d45e529687daa7f4 |
|
BLAKE2b-256 | 646fe8df3ae26d49b91daac8806e83bc5e59db9f291db780f424343d6ba3b0d8 |