diff --git a/.changeset/tidy-rockets-learn.md b/.changeset/tidy-rockets-learn.md new file mode 100644 index 00000000..6d28ba0f --- /dev/null +++ b/.changeset/tidy-rockets-learn.md @@ -0,0 +1,5 @@ +--- +'@spotlightjs/sidecar': patch +--- + +Accept all envelopes diff --git a/packages/sidecar/src/main.ts b/packages/sidecar/src/main.ts index 9fa9e1e8..468b8882 100644 --- a/packages/sidecar/src/main.ts +++ b/packages/sidecar/src/main.ts @@ -152,14 +152,7 @@ function handleStreamRequest(req: IncomingMessage, res: ServerResponse, buffer: if (chunk !== null) body += chunk; }); req.on('end', () => { - if (req.headers['content-type'] == 'application/x-sentry-envelope') { - if (containsKnownEnvelopeType(body)) { - buffer.put([`${req.headers['content-type']}`, body]); - } - } else { - // It's not an Sentry envelope, so we just put it in the buffer - buffer.put([`${req.headers['content-type']}`, body]); - } + buffer.put([`${req.headers['content-type']}`, body]); res.writeHead(204, { 'Cache-Control': 'no-cache', ...getCorsHeader(), @@ -181,30 +174,6 @@ function handleStreamRequest(req: IncomingMessage, res: ServerResponse, buffer: } } -function containsKnownEnvelopeType(body: string): boolean { - const [...rawEntries] = body.split(/\n/gm); - - const items = []; - for (let i = 0; i < rawEntries.length; i++) { - if (!rawEntries[i]) { - continue; - } - // not ideal we json parse envelope entries here but it's the easiest way to get the type - items.push(JSON.parse(rawEntries[i])); - } - - const allowedTypes = ['event', 'transaction']; - const types = items.map(item => item.type); - - for (let i = 0; i < types.length; i++) { - if (allowedTypes.includes(types[i])) { - return true; - } - } - - return false; -} - function startServer(buffer: MessageBuffer, port: number): Server { const server = createServer((req, res) => { handleStreamRequest(req, res, buffer);