Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork 1.7k
Add feature flags to issue-details page and launchdarkly integration documentation#11749
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
Uh oh!
There was an error while loading. Please reload this page.
Changes from all commits
0011f2d0dc00d11cf3e8eb0bbf645a0e7791800bb4f00a3fa22d9ec4920a532cd6eceede576632e6e233acb2b7142432271b0e3d4db5797d22a253eb5976c18e0051d4cd2f65File filter
Filter by extension
Conversations
Uh oh!
There was an error while loading. Please reload this page.
Jump to
Uh oh!
There was an error while loading. Please reload this page.
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -4,6 +4,8 @@ sidebar_order: 1 | ||||||
| description: Learn about Sentry's LaunchDarkly integration. LaunchDarkly enables organizations to use Sentry errors as a metric in their LaunchDarkly experiments. | ||||||
Contributor There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. we should probably update this description to be more generic -- right now it's about metrics, but we're adding FF info to this page too! | ||||||
| --- | ||||||
| ## Metrics Integration | ||||||
| This integration is maintained and supported by the company that created it. For more details or questions, feel free to contact rrosefigura@launchdarkly.com. | ||||||
| ## Install and Configure | ||||||
| @@ -23,3 +25,9 @@ The LaunchDarkly integration is only available to organizations with a Business | ||||||
| 1. Navigate to **Settings > Integrations > LaunchDarkly** | ||||||
| 2. Follow the full [LaunchDarkly installation instructions](https://docs.launchdarkly.com/integrations/sentry). | ||||||
| ## Change Tracking Integration | ||||||
Contributor There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. we should mention that there's another step needed to set up feature flags completely (e.g. for eval tracking, they need to set up the platform-specific language for their sdk) & link to a full list of platforms (a product index page, when we create it, would make sense)
| ||||||
| Sentry offers a flag change tracking integration which allows Sentry to associate flag definition changes with errors that occurred in your application. To enable this integration, create a new <Link to="https://app.launchdarkly.com/settings/integrations?q=generic+trigger">"Generic Trigger"</Link> integration and paste the Sentry web hook URL generated by the Feature Flag Integration Modal. For information on how to generate a Sentry Web Hook URL, visit the <PlatformLink to="/product/issues/issue-details/#feature-flags">feature flag integration documentation here</PlatformLink>. Learn more about LaunchDarkly's "Generic Triggers" <Link to="https://docs.launchdarkly.com/home/releases/triggers">here</Link>. | ||||||
Contributor There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
| ||||||
|  | ||||||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -102,6 +102,18 @@ If you’ve enabled [Session Replay](/product/explore/session-replay/), you’ll | ||
|  | ||
| ## Feature Flags | ||
| There are two types of integrations you can configure to integrate feature flag data into your error events. | ||
| The first integration type is **flag evaluation tracking** within the Sentry SDK. To enable it, update the Sentry SDK's `init` method to include one of our supported feature flag integrations. Support varies by language and by provider. Doing so will give you access to the feature flag table, which shows any flags that were evaluated after the Sentry SDK's initialization and before the error event occurred. You will see rows of (flag, evaluation-result) pairs. Supported integrations include: | ||
| * LaunchDarkly ([Python](/platforms/python/integrations/launchdarkly/) and [JavaScript](/platforms/javascript/integrations/launchdarkly/)) | ||
| * OpenFeature ([Python](/platforms/python/integrations/openfeature/) and [JavaScript](/platforms/javascript/integrations/openfeature/)) | ||
| The second integration type is **feature flag change tracking**. This will enable a timeline of feature flag definition changes on the event and user volume chart. These annotations can help you diagnose when a feature flag change is related to a new issue. To enable this type of integration, please visit the documentation page of one of our supported providers: | ||
Contributor There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. we should list the providers and the links here! Contributor There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. or at the very least, we should link to a spot where we have a full list of providers (an index page, when we create one, would make sense)
| ||
| When both integrations are enabled, you'll see suspect feature flags highlighted in yellow in the feature flag table. Feature flags are marked as "suspect" if they're modified suspiciously close to the detection of a new issue. | ||
| ## Breadcrumbs | ||
|  | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is the generic trigger different from this one that i've been using?