Skip to content
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

track deprecations #2688

Closed
beckjake opened this issue Aug 5, 2020 · 2 comments · Fixed by #2710
Closed

track deprecations #2688

beckjake opened this issue Aug 5, 2020 · 2 comments · Fixed by #2710
Labels
enhancement New feature or request

Comments

@beckjake
Copy link
Contributor

beckjake commented Aug 5, 2020

Describe the feature

Currently, dbt tracks anonymized information about a few metrics on dbt runs (package installs, invocations, running models, ...). It would be nice to add tracking around deprecation warnings triggering.

As a dbt developer, I'd like to know how many people are using deprecated behavior so we can inform our decision making on when to remove it.

Describe alternatives you've considered

Right now we guess about it.

Who will this benefit?

Anyone making product/feature decisions.

@beckjake beckjake added enhancement New feature or request triage labels Aug 5, 2020
@jtcohen6 jtcohen6 removed the triage label Aug 5, 2020
@jtcohen6
Copy link
Contributor

jtcohen6 commented Aug 5, 2020

I agree this is valuable, especially as we look to make good on deprecating some long-overdue things.

I think there are two viable Snowplow implementations:

  1. Structured event, one per distinct deprecation:
    category: 'dbt'
    action: 'deprecation'
    label: [named deprecation, per this list]

  2. Unstructured event, fired once per invocation, containing all active_deprecations as an array. We can flatten it in the database. I think that would require a new custom context, though.

I lean toward the latter, though I know it's more setup. @drewbanin Do you have a preference either way?

@drewbanin
Copy link
Contributor

yep - let's do it. I'd like to make an unstructured event with a single field in it's schema for the deprecation name. I think this is a more sustainable long-term approach than using a bunch of untyped structured events. If there are multiple deprecation warnings in a run, we should just fire one event per deprecation IMO!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants