Cloudflare capture crashes / data before we export the default fetch handler #24375
Copy link
Copy link
Open
Description
Problem Statement
Potentially the following Error would never be seen within Sentry:
// file:src/index.ts
import diagnostics_channel from 'diagnostics_channel';
const channel = diagnostics_channel.channel('my-channel');
const app = new Hono();
// never been seen by Sentry
throw new Error();
// never been seen by Sentry
channel.publish({
some: 'data',
});
export default {
fetch: app.fetch,
scheduled: async (batch, env) => {},
}Solution Brainstorm
Since we introduced cachedClients #23151 we could potentially inject an Sentry.init at the top of the workers entrypoint with Vite:
// file:src/index.ts
// following is being injected automatically and uses `Sentry.init`
import ./instrument.js`;
// ... the rest from above ...Theoretically, instrument.js only sets up the client so we receive some data, and later the withSentry wrapped code would wrap everything as usual and reuses the previously created client.
Additional Context
This would only work with the v11's default cacheClient: true and the entrypoint would not be added when cacheClient: false
Priority
React with 👍 to help prioritize this issue. Please use comments to provide useful context, avoiding +1 or me too, to help us triage it.
Reactions are currently unavailable
Activity
linear-code commentedon Sep 14, 2026
JS-3677