Project: kedro-telemetry

Kedro-Telemetry

Project Details

Latest version
0.3.1
Home Page
PyPI Page
https://pypi.org/project/kedro-telemetry/

Project Popularity

PageRank
0.002226030349795534
Number of downloads
37881

Kedro-Telemetry

Python Version PyPI version License Code Style: Black

Introduction

To find out how Kedro's features are used, the Kedro team have created an opt-in Kedro-Telemetry plugin to gather anonymised (before being sent across the internet) and aggregated usage analytics.

The data it gathers will help drive future development of Kedro because we can understand how the product is being used.

Why is my data being collected?

Telemetry data is made available to project maintainers of the Kedro Project. The purpose of providing this information is to provide metrics to the maintainers on how Kedro is used. This data helps inform future product development because we can better understand if certain features are having traction with our users. We want to make sure that Kedro is as streamlined as possible and it is difficult to do this without usage analytics.

What about my personal data?

The Kedro Project’s telemetry has been reviewed and approved under the Telemetry Data Collection and Usage Policy of LF Projects, LLC.

What data is being collected?

We process your hashed hostname and hashed computer username, which both is pseudonymized information that indirectly relates to you personally. Besides the hashed host and username, we collect the following project-related information. Again, we rely on your consent to do so:

Description Example Input What we receive
CLI command (masked arguments) kedro run --pipeline=ds --env=test kedro run --pipeline ***** --env *****
(Hashed) Package name my-project 1c7cd944c28cd888904f3efc2345198507...
(Hashed) Project name my_project a6392d359362dc9827cf8688c9d634520e...
kedro project version 0.17.6 0.17.6
kedro-telemetry version 0.1.2 0.1.2
Python version 3.8.10 (default, Jun 2 2021, 10:49:15) 3.8.10 (default, Jun 2 2021, 10:49:15)
Operating system used darwin darwin

How do I consent to the use of Kedro-Telemetry?

Kedro-Telemetry is a Python plugin. To install it:

pip install kedro-telemetry

Note: If you are using an official Kedro project template then kedro-telemetry is included in the project-level requirements.txt of the starter. kedro-telemetry is activated after you have a created a new project with a Kedro project template and have run kedro install from the terminal.

When you next run the Kedro CLI you will be asked for consent to share usage analytics data for the purposes explained in the privacy notice, and a .telemetry YAML file will be created in the project root directory. The variable consent will be set according to your choice in the file, e.g. if you consent:

consent: true

Note: The .telemetry file should not be committed to git or packaged in deployment. In kedro>=0.17.4 the file is git-ignored.

How do I withdraw consent?

To withdraw consent, you can change the consent variable to false in .telemetry YAML by editing the file in the following way:

consent: false

Or you can uninstall the plugin:

pip uninstall kedro-telemetry

What happens when I withdraw consent?

Data will only be collected if consent is given. Otherwise, if consent was explicitly denied or withdrawn, the message below will be printed out on every Kedro CLI invocation. If you explicitly deny consent from the beginning, no data will be collected. If you withdraw consent later, the processing of data will be stopped from that moment on.

Kedro-Telemetry is installed, but you have opted out of sharing usage analytics so none will be collected.

How is the data collected

Kedro-Telemetry uses pluggy hooks and requests to send data to Heap Analytics. Project maintainers have access to the data and can create dashboards that show adoption and feature usage.

What licence do you use?

Kedro-Telemetry is licensed under the Apache 2.0 License.

Python version support policy

  • The Kedro-Telemetry supports all Python versions that are actively maintained by the CPython core team. When a Python version reaches end of life, support for that version is dropped from kedro-telemetry. This is not considered a breaking change.