diff --git a/package.json b/package.json index 114456e00bb..13f02d1a55c 100644 --- a/package.json +++ b/package.json @@ -269,9 +269,9 @@ "@react-stately/menu": "3.2.3", "@react-stately/tree": "3.2.0", "@reduxjs/toolkit": "1.7.2", - "@sentry/browser": "6.18.1", - "@sentry/types": "6.18.1", - "@sentry/utils": "6.18.1", + "@sentry/browser": "6.19.1", + "@sentry/types": "6.19.1", + "@sentry/utils": "6.19.1", "@visx/event": "2.6.0", "@visx/gradient": "2.1.0", "@visx/group": "2.1.0", diff --git a/packages/grafana-runtime/package.json b/packages/grafana-runtime/package.json index 178d130d6da..9a012f3e778 100644 --- a/packages/grafana-runtime/package.json +++ b/packages/grafana-runtime/package.json @@ -25,7 +25,7 @@ "@grafana/data": "8.5.0-pre", "@grafana/e2e-selectors": "8.5.0-pre", "@grafana/ui": "8.5.0-pre", - "@sentry/browser": "6.18.1", + "@sentry/browser": "6.19.1", "history": "4.10.1", "lodash": "4.17.21", "react": "17.0.2", diff --git a/packages/grafana-ui/package.json b/packages/grafana-ui/package.json index 96d7a723d68..997bef8ff52 100644 --- a/packages/grafana-ui/package.json +++ b/packages/grafana-ui/package.json @@ -45,7 +45,7 @@ "@react-aria/menu": "3.4.1", "@react-aria/overlays": "3.8.0", "@react-stately/menu": "3.2.3", - "@sentry/browser": "6.18.1", + "@sentry/browser": "6.19.1", "ansicolor": "1.1.100", "calculate-size": "1.1.1", "classnames": "2.3.1", diff --git a/public/app/core/services/echo/backends/sentry/transports/CustomEndpointTransport.ts b/public/app/core/services/echo/backends/sentry/transports/CustomEndpointTransport.ts index 53d00d6296b..afe300c6ad4 100644 --- a/public/app/core/services/echo/backends/sentry/transports/CustomEndpointTransport.ts +++ b/public/app/core/services/echo/backends/sentry/transports/CustomEndpointTransport.ts @@ -18,6 +18,8 @@ export interface CustomEndpointTransportOptions { const DEFAULT_MAX_CONCURRENT_REQUESTS = 3; +const DEFAULT_RATE_LIMIT_TIMEOUT_MS = 5000; + /** * This is a copy of sentry's FetchTransport, edited to be able to push to any custom url * instead of using Sentry-specific endpoint logic. @@ -103,7 +105,11 @@ export class CustomEndpointTransport implements BaseTransport { if (response.status === 429) { const now = Date.now(); const retryAfterHeader = response.headers.get('Retry-After'); - this._disabledUntil = new Date(now + parseRetryAfterHeader(now, retryAfterHeader)); + if (retryAfterHeader) { + this._disabledUntil = new Date(now + parseRetryAfterHeader(retryAfterHeader, now)); + } else { + this._disabledUntil = new Date(now + DEFAULT_RATE_LIMIT_TIMEOUT_MS); + } logger.warn(`Too many requests, backing off till: ${this._disabledUntil}`); } diff --git a/yarn.lock b/yarn.lock index cca0b03681f..699034aacd4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4188,7 +4188,7 @@ __metadata: "@grafana/ui": 8.5.0-pre "@rollup/plugin-commonjs": 21.0.1 "@rollup/plugin-node-resolve": 13.1.3 - "@sentry/browser": 6.18.1 + "@sentry/browser": 6.19.1 "@testing-library/dom": 8.11.3 "@testing-library/react": ^12.1.2 "@testing-library/user-event": ^13.5.0 @@ -4379,7 +4379,7 @@ __metadata: "@rollup/plugin-commonjs": 21.0.1 "@rollup/plugin-image": 2.1.1 "@rollup/plugin-node-resolve": 13.1.3 - "@sentry/browser": 6.18.1 + "@sentry/browser": 6.19.1 "@storybook/addon-a11y": 6.4.15 "@storybook/addon-actions": 6.4.15 "@storybook/addon-docs": 6.4.15 @@ -7817,67 +7817,67 @@ __metadata: languageName: node linkType: hard -"@sentry/browser@npm:6.18.1": - version: 6.18.1 - resolution: "@sentry/browser@npm:6.18.1" +"@sentry/browser@npm:6.19.1": + version: 6.19.1 + resolution: "@sentry/browser@npm:6.19.1" dependencies: - "@sentry/core": 6.18.1 - "@sentry/types": 6.18.1 - "@sentry/utils": 6.18.1 + "@sentry/core": 6.19.1 + "@sentry/types": 6.19.1 + "@sentry/utils": 6.19.1 tslib: ^1.9.3 - checksum: 29c4b852311512b96e938e73629007829933335b2cecb979f065f68af08db1adc6fa8f0763b6da3acafea0ce89d5c3719426b92449780512a58aac6a205c1a62 + checksum: f06193d6199eeb8cbde458ad18ea74561b28f5181b255333f4a473eb7d4c32a12822b7ae6331e92407cd410a3f7988df0797dababa4132666354f249b26481d2 languageName: node linkType: hard -"@sentry/core@npm:6.18.1": - version: 6.18.1 - resolution: "@sentry/core@npm:6.18.1" +"@sentry/core@npm:6.19.1": + version: 6.19.1 + resolution: "@sentry/core@npm:6.19.1" dependencies: - "@sentry/hub": 6.18.1 - "@sentry/minimal": 6.18.1 - "@sentry/types": 6.18.1 - "@sentry/utils": 6.18.1 + "@sentry/hub": 6.19.1 + "@sentry/minimal": 6.19.1 + "@sentry/types": 6.19.1 + "@sentry/utils": 6.19.1 tslib: ^1.9.3 - checksum: 03b8b56c094938b177642c7d801fe6d5d7a2a8fffad6fab38e1080b46165b850fe1ef827e115880e484ad871b9660d34aa781cd58360afbd154acbabd82c8c5e + checksum: cf2e58bce79e6b5c6a668a0718cae1f2dc3b3b5009471b56110dc62339152abb2ec422033a810191ddadf749a70f7cd1f2905c3d8d78940af50ce737abef0fcd languageName: node linkType: hard -"@sentry/hub@npm:6.18.1": - version: 6.18.1 - resolution: "@sentry/hub@npm:6.18.1" +"@sentry/hub@npm:6.19.1": + version: 6.19.1 + resolution: "@sentry/hub@npm:6.19.1" dependencies: - "@sentry/types": 6.18.1 - "@sentry/utils": 6.18.1 + "@sentry/types": 6.19.1 + "@sentry/utils": 6.19.1 tslib: ^1.9.3 - checksum: 814a33e7a77e7c327c1bef29ea4ce0dea31502b174f3490b158a53af805ca070e1ccd3a62a54b979cbc478e261913a03f9628fbe3174e358dbe06c8b1cd95e9e + checksum: c47b6dcb3daeedb4c755fea1507e19566bcb50e44ad7233c16cfb1d846d3f6b1c14b9375d88b1d45019c81b76af9f13e812b0c132cb8e2bd75d145f7b41e9a5e languageName: node linkType: hard -"@sentry/minimal@npm:6.18.1": - version: 6.18.1 - resolution: "@sentry/minimal@npm:6.18.1" +"@sentry/minimal@npm:6.19.1": + version: 6.19.1 + resolution: "@sentry/minimal@npm:6.19.1" dependencies: - "@sentry/hub": 6.18.1 - "@sentry/types": 6.18.1 + "@sentry/hub": 6.19.1 + "@sentry/types": 6.19.1 tslib: ^1.9.3 - checksum: ce4db8bae8e0fa46d1650e791499a0c0463d765868460484b09237fc542556e2b331280d2f291d60e0c2ba3dd90793a9be54cd2730a2e037300ff3d0d2ea2f9d + checksum: ac47c43883924a3abbf508148bc350f71bfd26828a3fd886e1075dffd3331f9e455478a54293fce606604cabdc6b32452b98c87e69bb9d71854b493c41510863 languageName: node linkType: hard -"@sentry/types@npm:6.18.1": - version: 6.18.1 - resolution: "@sentry/types@npm:6.18.1" - checksum: dbf4abc28adbd734cd7fb353b547e9686293e734a8fbe4f88fd711c65fcf9905e2affdd35f1e422038168153b7b0b02a972e76dd5fb2edc74a62b1733820a1d0 +"@sentry/types@npm:6.19.1": + version: 6.19.1 + resolution: "@sentry/types@npm:6.19.1" + checksum: 22f74597786358ada6c3128e43e12bdf9850504e907a705f1f72781485546e979c52939d1e49bfccd16981df86b51fac4900b2dbac96f579273942d41ee3e056 languageName: node linkType: hard -"@sentry/utils@npm:6.18.1": - version: 6.18.1 - resolution: "@sentry/utils@npm:6.18.1" +"@sentry/utils@npm:6.19.1": + version: 6.19.1 + resolution: "@sentry/utils@npm:6.19.1" dependencies: - "@sentry/types": 6.18.1 + "@sentry/types": 6.19.1 tslib: ^1.9.3 - checksum: 998e2e565e693e86c2e2bae830fe7df04e9cf588eb13cc98f03df35e2b5de78fff669b1a9dffc893a0d2c81e2c61e1107ad5f876e1203415325514849fb25336 + checksum: 5e76bd73a584f215d06be5554db076dbc3eeab6b2326bc917550f98d6558b40849491748fa037efc489cd20c32fbffac1f1ea2b4f6b7055b3d39093596ecc8c0 languageName: node linkType: hard @@ -20803,9 +20803,9 @@ __metadata: "@react-types/shared": 3.11.1 "@reduxjs/toolkit": 1.7.2 "@rtsao/plugin-proposal-class-properties": 7.0.1-patch.1 - "@sentry/browser": 6.18.1 - "@sentry/types": 6.18.1 - "@sentry/utils": 6.18.1 + "@sentry/browser": 6.19.1 + "@sentry/types": 6.19.1 + "@sentry/utils": 6.19.1 "@swc/core": 1.2.136 "@swc/helpers": 0.3.2 "@testing-library/dom": 8.11.3