-
Notifications
You must be signed in to change notification settings - Fork 906
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Spike: Can we use telemetry to track user selection in the revamped "new" flow? #2522
Comments
To explore:
|
I confirm that
Of course it gets flagged by
And everytime the user upgrades Kedro, they would get that dependency installed again:
We'd need to investigate how does this affect our conda package. Despite pip's permissiveness, I still have a bad feeling about this. It's false that As an alternative solution, if each add-on were a Kedro plugin that is pip-installed, we have PyPI download stats and we don't even need to use the telemetry flow for this. |
I am also slightly uncomfortable by putting it in the core dependency, making sure it can run everywhere is proven to be tricky. On the other hand, I want to point out that I created this chart in HEAP: https://heapanalytics.com/app/env/2388822444/graph/chart/CLI-Command-Runs-kedro-new-7690174 |
More crazy ideas: turn Edit: This is a weird dependency tree, and tweaking it (like kedro depending on kedro-core + kedro-new + kedro-telemetry) still makes kedro-telemetry a mandatory dependency, which has the problems described above. |
So, I looked through how Kedro and BackgroundKedro hooksKedro has these two kinds of hooks that can be used by users/plugins - Two of these are used by Kedro Telemetry
At this point, I spotted two potential bugs/problems -
Proposal 1Problems
Solution
Pros and ConsPros
Cons
Proposal 2If we just want to track which add-ons are being selected, we could just keep everything as it is and just save what add ons have been selected by the project creator as metadata in the project's
[tool.kedro]
package_name = "spaceflights"
project_name = "spaceflights"
project_version = "0.18.11"
add_ons = ["1,2,3"] #or ["Linting", "Documentation"] or ["1", "2", "3"] format can be decided later
Pros and ConsPros
Cons
Conclusions
|
Thanks a lot @ankatiyar for the super detailed writeup ⭐ I'm very much in favour of Proposal 2 if it's technically feasible. I have a personal interest on revamping how we collect telemetry but there is no urgency for it, and Proposal 2 already addresses the original concern without adding much complexity. |
This is fantastic work! Thanks @ankatiyar 🤩 I'm also in favour of proposal 2. |
I also really, really like proposal 2! Let's do it and then revisit |
Thank you for the feedback! Closing this in favour of the follow up tickets - |
Description
With the new utility modules and template flow for Kedro (#2388) users will be able to choose to add utilities, specific templates and examples. We would like to be able to track which options users select.
The aim of this spike is to figure out how we can track this.
To explore
kedro-telemetry
? At the moment telemetry is only available after requirements.txt is installed. If we asked for permission to collect data when kedro is installed, when we could collect data about what options are used on project creationThe text was updated successfully, but these errors were encountered: