用途
add-cdn-bundle 用于为浏览器包(browser package)创建一个新的 CDN bundle。该 bundle 会包含由用户指定的功能组合,从而生成面向浏览器、功能裁剪明确的 CDN 打包产物。
输入方式
用户使用点号(dot notation)表示功能组合。资料中给出的示例包括:
- logs.metrics —— 包含 logs 与 metrics 的 bundle
- replay.logs.metrics —— 包含 replay、logs、metrics 的 bundle
- tracing.replay.logs —— 包含 tracing、replay、logs 的 bundle
- tracing.replay.feedback.logs.metrics —— 全功能 bundle
bundle 名称中的功能顺序固定为:tracing → replay → feedback → logs → metrics。
命名约定
根据给定的功能组合,需派生出以下变体(以 replay.logs.metrics 为例):
- {FEATURE_COMBO}:replay.logs.metrics
- {feature_combo}:replay_logs_metrics
- {featureCombo}:replayLogsMetrics
- {Human Readable Features}:Replay, Logs, Metrics
- {Human Readable Feature List}:Replay, Logs, and Metrics
需要创建或修改的文件
该技能涉及以下文件的创建与修改:
- 创建 packages/browser/src/index.bundle.{FEATURE_COMBO}.ts
- 创建 packages/browser/test/index.bundle.{FEATURE_COMBO}.test.ts
- 修改 packages/browser/rollup.bundle.config.mjs
- 修改 .size-limit.js
- 修改 dev-packages/browser-integration-tests/package.json
- 修改 dev-packages/browser-integration-tests/utils/generatePlugin.ts
- 修改 .github/workflows/build.yml
具体操作应遵循详细指南 docs/adding-cdn-bundle.md 来创建 bundle。
验证步骤
完成上述更改后,执行以下命令进行验证:
yarn lint cd packages/browser && yarn build:dev cd packages/browser && yarn test
适用场景
适用于在 getsentry/sentry-javascript 的浏览器包中新增一个按需功能组合打包的 CDN bundle,并同步更新构建配置、体积限制、集成测试与 CI 工作流。
限制
资料的 official_text 为空,除上述内容外,暂无关于收费、价格、支持平台、具体效果或额外使用步骤的信息。