getsentry / getsentry/sentry-javascript

Combined CDN bundle including core SDK, multiplexed transport and module-metadata integration

オープン
#17,309 コメント 6 件 リアクション 0 件 担当者 0 名 GitHub で見る
Browser Dev: Build Feature Package-Meta: CDN
主要言語
TypeScript
スター
8.7k
フォーク
1.8k
平均マージ
1日 17時間
マージ済み PR(30日)
515

説明

### Problem Statement

Currently, we integrate Sentry into our web application solely through CDN scripts (not through NPM installation), loading the _bundle.min.js_ (core SDK).
We want to enable **error routing** for the microfrontend, but there is no bundle to do so, and that forces us to load two additional files:
1. multiplexedtransport.min.js
2. modulemetadata.min.js

This approach works, but introduces:
• Performance concerns: three HTTP requests
• Version-management overhead
• HTML verbosity: extra tags in every page template

### Solution Brainstorm

Publish an additional CDN artifact that internally includes:

- the core bundle.min.js
- transports/multiplexedtransport.js
- integrations/modulemetadataintegration.js

All in one file, exposing Sentry.makeMultiplexedTransport() and Sentry.moduleMetadataIntegration() on the global Sentry object.

Benefits:

- Single download: one small script to fetch in parallel, reducing latency and round-trips.
- Slim footprint: the bundle should include only the core SDK plus the two micro-frontend features, keeping its gzipped size as small as possible so as not to impact page performance.
- Simplified integration: customers can add a single and call Sentry.init({ ..., integrations: [Sentry.moduleMetadataIntegration()], transport: Sentry.makeMultiplexedTransport(...) }) without worrying about additional URLs.
- Cache efficiency: one bundle means better long-term caching and fewer cache invalidations.
- Lower maintenance: teams relying purely on CDN loads (no npm) avoid manual sync of multiple file versions.
- The multiplexed transport and module metadata features could be lazy-loaded, so that they are available in the Sentry Object only once an error occurs.

### Product Area

Performance

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。