getsentry / team-sdks

A meta repository for tracking work across all SDK teams.
0 stars 0 forks source link

Track SDK feature usage #83

Open philipphofmann opened 2 months ago

philipphofmann commented 2 months ago

Description

Some of our SDKs use integrations, SDK names, or packages to communicate if certain features are turned on, but that doesn’t work for smaller features, such as performanceV2 for mobile, which slightly changes span durations.

To make this happen, we can add a new field features similar to integrations to the SDK event payload and index it in Looker:

"sdk": {
  "name": "sentry.cocoa",
  "version": "8.24.0",
  "integrations": [
    "Crash",
    "MetricKit"
  ], 
  "features": [
      "performanceV2"
  ]
}
### Tasks
- [ ] https://github.com/getsentry/develop/pull/1244
- [ ] https://github.com/getsentry/relay/pull/3478
- [ ] [Index the feature field in Looker](https://getsentry.atlassian.net/browse/DATA-2457)
- [x] Ensure that Sentry hides this feature field as it does for integrations
### SDKS
- [ ] https://github.com/getsentry/sentry-cocoa/pull/3948

Why should we be doing this?

We want to know about the adoption of our features.

Why now?

Mobile starfish needs to know how many users use performanceV2, a feature flag that changes how SDKs send performance data.

Stakeholder(s)

All SDK teams.

Team(s)

All SDK teams, the data team for indexing the data in Looker, and ingest to accept this data in Relay.