From da50912c43a748ea938a6a8a5c448a46cf52e058 Mon Sep 17 00:00:00 2001 From: JonasBa Date: Mon, 20 Mar 2023 11:35:44 -0400 Subject: [PATCH 1/2] ref(core): move beforeEnvelope to client --- packages/core/src/baseclient.ts | 2 ++ packages/core/src/transports/base.ts | 6 ------ 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/packages/core/src/baseclient.ts b/packages/core/src/baseclient.ts index 1b9141b14fe0..9662f2b99291 100644 --- a/packages/core/src/baseclient.ts +++ b/packages/core/src/baseclient.ts @@ -646,6 +646,8 @@ export abstract class BaseClient implements Client { * @inheritdoc */ protected _sendEnvelope(envelope: Envelope): PromiseLike | void { + this.emit('beforeEnvelope', envelope); + if (this._transport && this._dsn) { return this._transport.send(envelope).then(null, reason => { __DEBUG_BUILD__ && logger.error('Error while sending event:', reason); diff --git a/packages/core/src/transports/base.ts b/packages/core/src/transports/base.ts index 5b11db7e9c17..3111f5f15fca 100644 --- a/packages/core/src/transports/base.ts +++ b/packages/core/src/transports/base.ts @@ -24,8 +24,6 @@ import { updateRateLimits, } from '@sentry/utils'; -import { getCurrentHub } from '../hub'; - export const DEFAULT_TRANSPORT_BUFFER_SIZE = 30; /** @@ -43,13 +41,9 @@ export function createTransport( ): Transport { let rateLimits: RateLimits = {}; const flush = (timeout?: number): PromiseLike => buffer.drain(timeout); - const client = getCurrentHub().getClient(); function send(envelope: Envelope): PromiseLike { const filteredEnvelopeItems: EnvelopeItem[] = []; - if (client && client.emit) { - client.emit('beforeEnvelope', envelope); - } // Drop rate limited items from envelope forEachEnvelopeItem(envelope, (item, type) => { From 06016a9fc4437ee9ce3874889da2b908cbc989ab Mon Sep 17 00:00:00 2001 From: JonasBa Date: Mon, 20 Mar 2023 11:43:57 -0400 Subject: [PATCH 2/2] ref(core): move emit inside send condition --- packages/core/src/baseclient.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/core/src/baseclient.ts b/packages/core/src/baseclient.ts index 9662f2b99291..a6db2788aa52 100644 --- a/packages/core/src/baseclient.ts +++ b/packages/core/src/baseclient.ts @@ -646,9 +646,9 @@ export abstract class BaseClient implements Client { * @inheritdoc */ protected _sendEnvelope(envelope: Envelope): PromiseLike | void { - this.emit('beforeEnvelope', envelope); - if (this._transport && this._dsn) { + this.emit('beforeEnvelope', envelope); + return this._transport.send(envelope).then(null, reason => { __DEBUG_BUILD__ && logger.error('Error while sending event:', reason); });