Create and store data pipeline telemetry data
Project description
Create and store data pipeline telemetry data
Free software: GNU Lesser General Public License v3 or later (LGPLv3+)
Installation
pip install pipeline-telemetry
You can also install the in-development version with:
pip install https://github.com/MaartendeRuyter/pipeline-telemetry/archive/master.zip
Documentation
Development
To run all the tests run:
tox
Note, to combine the coverage data from all the tox environments run:
Windows |
set PYTEST_ADDOPTS=--cov-append tox |
---|---|
Other |
PYTEST_ADDOPTS=--cov-append tox |
Changelog
0.0.1 (2021-10-06)
First release on PyPI.
0.0.4 (2021-10-31)
Seperated the storage module
Added MongoDb storage class
Started with documentation
0.1.0 (2021-11-05)
added Telemetry method add_telemetry_counter
Added TelemetryCounter class that can be used to make prefedined objects that can be added to the Telemetry instance with the add_telemetry_counter method. This will improve readibilty of your code:
from pipeline_telemetry import TelemetryCounter YOUR_PREDFINED_COUNTER = ( process_type=ProcessTypes.CREATE_DATA_FROM_API, sub_process='RETRIEVE_RAW_DATA', counter_name='my_custom_counter', ) telemetry.add_telemetry_counter(YOUR_PREDFINED_COUNTER)
0.2.0 (2021-11-09)
added error field to TelemetryCounter so that default Errorcodes can be used in a TelemetryCounter instance to keep an error counter in the telemetry
Updated add_telemetry_counter so that it can handle TelemetryCounter instances with either an Errorcode of a custom counter. In case of ErrorCode the actual error_code will serve as the customer counter.
0.2.1 (2021-11-09)
added is_telemetry_counter method in helper module
moved add_telemetry decorator to helper module
both methods can be directly imported from pipeline_telemetry module
0.2.2 (2021-11-10)
added add_mongo_telemetry decorator that uses mongo storage class
0.2.3 (2021-11-10)
Added attribute process_types to TelemetryCounter dataclass next to existing process_type attribute. This allows you to choose between a list of process_types or just a single process_type to be in scope of the TelemetryCounter` instance
0.2.4 (2021-11-11)
Implemented add_to method in TelemetryCounter. Can be used to add a TelemetryCounter instance to an object with a telemetry instance attached to it. This will make the code more readable.
0.2.5 (2021-11-11)
Implemented increase_base_count and increase_fail_count method. They can be used to make your code more readable when updating the telemetry
0.2.6 (2021-12-08)
Added default increment value = 1 to methods increase_base_count and increase_fail_count
0.2.7 (2022-01-13)
Added fields category and sub_category to the telemetry object to allow for better distinction between telemetry sources
Rename telemetry field ‘process_name’ to ‘soure_name’ to be more clear about the data source in scope of the telemetry object
0.2.8 (2022-01-13)
Fix in storage classes to ensure category and sub_category to be stored in the toplevel of the telemetry object
0.2.10 (2022-01-18)
Added indexes to mongo storage class
0.2.11 (2022-01-18)
Added created_at field in mongo storage class for better date selection
of the telemetry objects
0.2.12 (2022-01-19)
Added traffic_light attribute to Telemetry object indicating the success state of the datapipeline process that is reporting on
Some minor refactoring
0.2.16 (2022-02-01)
Added telemetry_type and io_time_in_seconds attributes to Telemetry
object including a method to increase io_time_in_seconds.
0.2.18 (2022-03-2)
Added add_single_usage_telemetry decorator to be used for single usage
telemetry objects
0.3.0 (2022-05-12)
Added add_errors_from_return_value helper method to easily add the errors from a ReturnValueWithStatus object from error-manager package.
Automatically initialize a missing sub_process when a telemetry counter is added to the telemetry instance.
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
Built Distribution
File details
Details for the file pipeline-telemetry-0.3.0.tar.gz
.
File metadata
- Download URL: pipeline-telemetry-0.3.0.tar.gz
- Upload date:
- Size: 61.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
6732c6c10723b1cc524bfbf56cba889aebdebc9b1ddaf4f969df4ab881f15bf9
|
|
MD5 |
e6923582105c8fefe6e93a19f2905801
|
|
BLAKE2b-256 |
1b12ec6ee036cc2af5de92b3e70f84055161ff3bbdc0ec1d80594b8c800dc450
|
File details
Details for the file pipeline_telemetry-0.3.0-py2.py3-none-any.whl
.
File metadata
- Download URL: pipeline_telemetry-0.3.0-py2.py3-none-any.whl
- Upload date:
- Size: 39.6 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
2c1481d18dfbd489c7d55bc416d40a2e9ab5fc5f19f5338af8161d10582f601c
|
|
MD5 |
02206ccb8da0bb5c4b704e8b66f39521
|
|
BLAKE2b-256 |
d09c31413bce72e93bb24be5a806c7f7b98561e941a3cf786edba7937a45f34b
|