
package.build.npm.cjs.integrations.featureFlags.featureFlagsIntegration.js Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of browser Show documentation
Show all versions of browser Show documentation
Official Sentry SDK for browsers
Object.defineProperty(exports, '__esModule', { value: true });
const core = require('@sentry/core');
const featureFlags = require('../../utils/featureFlags.js');
/**
* Sentry integration for buffering feature flags manually with an API, and
* capturing them on error events. We recommend you do this on each flag
* evaluation. Flags are buffered per Sentry scope and limited to 100 per event.
*
* See the [feature flag documentation](https://develop.sentry.dev/sdk/expected-features/#feature-flags) for more information.
*
* @example
* ```
* import * as Sentry from '@sentry/browser';
* import { type FeatureFlagsIntegration } from '@sentry/browser';
*
* // Setup
* Sentry.init(..., integrations: [Sentry.featureFlagsIntegration()])
*
* // Verify
* const flagsIntegration = Sentry.getClient()?.getIntegrationByName('FeatureFlags');
* if (flagsIntegration) {
* flagsIntegration.addFeatureFlag('my-flag', true);
* } else {
* // check your setup
* }
* Sentry.captureException(Exception('broke')); // 'my-flag' should be captured to this Sentry event.
* ```
*/
const featureFlagsIntegration = core.defineIntegration(() => {
return {
name: 'FeatureFlags',
processEvent(event, _hint, _client) {
return featureFlags.copyFlagsFromScopeToEvent(event);
},
addFeatureFlag(name, value) {
featureFlags.insertFlagToScope(name, value);
},
};
}) ;
exports.featureFlagsIntegration = featureFlagsIntegration;
//# sourceMappingURL=featureFlagsIntegration.js.map
© 2015 - 2025 Weber Informatics LLC | Privacy Policy