@sentry/core
Advanced tools
Comparing version 4.2.3 to 4.2.4
@@ -11,8 +11,2 @@ import { Integration, SentryEvent } from '@sentry/types'; | ||
private readonly options; | ||
/** JSDoc */ | ||
private ignoreErrors?; | ||
/** JSDoc */ | ||
private blacklistUrls?; | ||
/** JSDoc */ | ||
private whitelistUrls?; | ||
/** | ||
@@ -32,14 +26,14 @@ * @inheritDoc | ||
/** JSDoc */ | ||
shouldDropEvent(event: SentryEvent): boolean; | ||
shouldDropEvent(event: SentryEvent, options: InboundFiltersOptions): boolean; | ||
/** JSDoc */ | ||
isIgnoredError(event: SentryEvent): boolean; | ||
isIgnoredError(event: SentryEvent, options?: InboundFiltersOptions): boolean; | ||
/** JSDoc */ | ||
isBlacklistedUrl(event: SentryEvent): boolean; | ||
isBlacklistedUrl(event: SentryEvent, options?: InboundFiltersOptions): boolean; | ||
/** JSDoc */ | ||
isWhitelistedUrl(event: SentryEvent): boolean; | ||
isWhitelistedUrl(event: SentryEvent, options?: InboundFiltersOptions): boolean; | ||
/** JSDoc */ | ||
mergeOptions(clientOptions?: InboundFiltersOptions): InboundFiltersOptions; | ||
/** JSDoc */ | ||
private isMatchingPattern; | ||
/** JSDoc */ | ||
private configureOptions; | ||
/** JSDoc */ | ||
private getPossibleEventMessages; | ||
@@ -46,0 +40,0 @@ /** JSDoc */ |
@@ -71,4 +71,2 @@ "use strict"; | ||
this.options = options; | ||
/** JSDoc */ | ||
this.ignoreErrors = DEFAULT_IGNORE_ERRORS; | ||
/** | ||
@@ -78,3 +76,2 @@ * @inheritDoc | ||
this.name = InboundFilters.id; | ||
this.configureOptions(); | ||
} | ||
@@ -87,8 +84,14 @@ /** | ||
hub_1.addGlobalEventProcessor(function (event) { return __awaiter(_this, void 0, void 0, function () { | ||
var self; | ||
var hub, self, client, clientOptions, options; | ||
return __generator(this, function (_a) { | ||
self = hub_1.getCurrentHub().getIntegration(InboundFilters); | ||
hub = hub_1.getCurrentHub(); | ||
if (!hub) { | ||
return [2 /*return*/, event]; | ||
} | ||
self = hub.getIntegration(InboundFilters); | ||
if (self) { | ||
self.configureOptions(); | ||
if (self.shouldDropEvent(event)) { | ||
client = hub.getClient(); | ||
clientOptions = client ? client.getOptions() : {}; | ||
options = self.mergeOptions(clientOptions); | ||
if (self.shouldDropEvent(event, options)) { | ||
return [2 /*return*/, null]; | ||
@@ -102,12 +105,12 @@ } | ||
/** JSDoc */ | ||
InboundFilters.prototype.shouldDropEvent = function (event) { | ||
if (this.isIgnoredError(event)) { | ||
InboundFilters.prototype.shouldDropEvent = function (event, options) { | ||
if (this.isIgnoredError(event, options)) { | ||
logger_1.logger.warn("Event dropped due to being matched by `ignoreErrors` option.\nEvent: " + misc_1.getEventDescription(event)); | ||
return true; | ||
} | ||
if (this.isBlacklistedUrl(event)) { | ||
if (this.isBlacklistedUrl(event, options)) { | ||
logger_1.logger.warn("Event dropped due to being matched by `blacklistUrls` option.\nEvent: " + misc_1.getEventDescription(event) + ".\nUrl: " + this.getEventFilterUrl(event)); | ||
return true; | ||
} | ||
if (!this.isWhitelistedUrl(event)) { | ||
if (!this.isWhitelistedUrl(event, options)) { | ||
logger_1.logger.warn("Event dropped due to not being matched by `whitelistUrls` option.\nEvent: " + misc_1.getEventDescription(event) + ".\nUrl: " + this.getEventFilterUrl(event)); | ||
@@ -119,5 +122,6 @@ return true; | ||
/** JSDoc */ | ||
InboundFilters.prototype.isIgnoredError = function (event) { | ||
InboundFilters.prototype.isIgnoredError = function (event, options) { | ||
var _this = this; | ||
if (!this.ignoreErrors) { | ||
if (options === void 0) { options = {}; } | ||
if (!options.ignoreErrors || !options.ignoreErrors.length) { | ||
return false; | ||
@@ -127,26 +131,37 @@ } | ||
// Not sure why TypeScript complains here... | ||
return _this.ignoreErrors.some(function (pattern) { return _this.isMatchingPattern(message, pattern); }); | ||
return options.ignoreErrors.some(function (pattern) { return _this.isMatchingPattern(message, pattern); }); | ||
}); | ||
}; | ||
/** JSDoc */ | ||
InboundFilters.prototype.isBlacklistedUrl = function (event) { | ||
InboundFilters.prototype.isBlacklistedUrl = function (event, options) { | ||
var _this = this; | ||
if (options === void 0) { options = {}; } | ||
// TODO: Use Glob instead? | ||
if (!this.blacklistUrls) { | ||
if (!options.blacklistUrls || !options.blacklistUrls.length) { | ||
return false; | ||
} | ||
var url = this.getEventFilterUrl(event); | ||
return !url ? false : this.blacklistUrls.some(function (pattern) { return _this.isMatchingPattern(url, pattern); }); | ||
return !url ? false : options.blacklistUrls.some(function (pattern) { return _this.isMatchingPattern(url, pattern); }); | ||
}; | ||
/** JSDoc */ | ||
InboundFilters.prototype.isWhitelistedUrl = function (event) { | ||
InboundFilters.prototype.isWhitelistedUrl = function (event, options) { | ||
var _this = this; | ||
if (options === void 0) { options = {}; } | ||
// TODO: Use Glob instead? | ||
if (!this.whitelistUrls) { | ||
if (!options.whitelistUrls || !options.whitelistUrls.length) { | ||
return true; | ||
} | ||
var url = this.getEventFilterUrl(event); | ||
return !url ? true : this.whitelistUrls.some(function (pattern) { return _this.isMatchingPattern(url, pattern); }); | ||
return !url ? true : options.whitelistUrls.some(function (pattern) { return _this.isMatchingPattern(url, pattern); }); | ||
}; | ||
/** JSDoc */ | ||
InboundFilters.prototype.mergeOptions = function (clientOptions) { | ||
if (clientOptions === void 0) { clientOptions = {}; } | ||
return { | ||
blacklistUrls: __spread((this.options.blacklistUrls || []), (clientOptions.blacklistUrls || [])), | ||
ignoreErrors: __spread((this.options.ignoreErrors || []), (clientOptions.ignoreErrors || []), DEFAULT_IGNORE_ERRORS), | ||
whitelistUrls: __spread((this.options.whitelistUrls || []), (clientOptions.whitelistUrls || [])), | ||
}; | ||
}; | ||
/** JSDoc */ | ||
InboundFilters.prototype.isMatchingPattern = function (value, pattern) { | ||
@@ -164,14 +179,2 @@ if (is_1.isRegExp(pattern)) { | ||
/** JSDoc */ | ||
InboundFilters.prototype.configureOptions = function () { | ||
if (this.options.ignoreErrors) { | ||
this.ignoreErrors = __spread(DEFAULT_IGNORE_ERRORS, this.options.ignoreErrors); | ||
} | ||
if (this.options.blacklistUrls) { | ||
this.blacklistUrls = __spread(this.options.blacklistUrls); | ||
} | ||
if (this.options.whitelistUrls) { | ||
this.whitelistUrls = __spread(this.options.whitelistUrls); | ||
} | ||
}; | ||
/** JSDoc */ | ||
InboundFilters.prototype.getPossibleEventMessages = function (event) { | ||
@@ -178,0 +181,0 @@ if (event.message) { |
{ | ||
"name": "@sentry/core", | ||
"version": "4.2.3", | ||
"version": "4.2.4", | ||
"description": "Base implementation for all Sentry JavaScript SDKs", | ||
@@ -18,6 +18,6 @@ "repository": "git://github.com/getsentry/raven-js.git", | ||
"dependencies": { | ||
"@sentry/hub": "4.2.3", | ||
"@sentry/minimal": "4.2.3", | ||
"@sentry/types": "4.2.3", | ||
"@sentry/utils": "4.2.3" | ||
"@sentry/hub": "4.2.4", | ||
"@sentry/minimal": "4.2.4", | ||
"@sentry/types": "4.2.4", | ||
"@sentry/utils": "4.2.4" | ||
}, | ||
@@ -24,0 +24,0 @@ "devDependencies": { |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
202911
2597
+ Added@sentry/hub@4.2.4(transitive)
+ Added@sentry/minimal@4.2.4(transitive)
+ Added@sentry/types@4.2.4(transitive)
+ Added@sentry/utils@4.2.4(transitive)
- Removed@sentry/hub@4.2.3(transitive)
- Removed@sentry/minimal@4.2.3(transitive)
- Removed@sentry/types@4.2.3(transitive)
- Removed@sentry/utils@4.2.3(transitive)
Updated@sentry/hub@4.2.4
Updated@sentry/minimal@4.2.4
Updated@sentry/types@4.2.4
Updated@sentry/utils@4.2.4