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.3.tar.gz
(5.5 kB
view details)
File details
Details for the file perftracker-1.0.3.tar.gz
.
File metadata
- Download URL: perftracker-1.0.3.tar.gz
- Upload date:
- Size: 5.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b5c87a7c31850f3b06e7ed677a4cf7f094dca26db07cf1480170a32dc74c6b59 |
|
MD5 | 44a6047d58238cb811f8cc6fb1405e66 |
|
BLAKE2b-256 | 4dced0e76ad0a91088349a33b01ca9a20f337e4d03305701d03a87f6032d7adf |