mcpField
R
rspack-tracing

rspack-tracing

github.com/rstackjs開発97279 回インストール6 日前に更新
リポジトリ

rspack-tracing について

rspack-tracingは、トレースファイルを取得・調査して、遅い、または失敗するRspackビルドを診断するスキルです。性能ボトルネックの分析や遅いプラグインの特定を開発者に案内します。

主な機能

  1. 01Rspackビルドトレースの取得
  2. 02直近イベントによる失敗箇所の確認
  3. 03トレース性能の分析
  4. 04ボトルネックと対処策の対応付け
  5. 05遅いプラグインフックの特定

活用シーン

  1. 01遅いRspackビルドの診断
  2. 02ビルド失敗段階の特定
  3. 03時間のかかるプラグインやローダーの識別

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/rstackjs/agent-skills --skill rspack-tracing

インストール後、Claude Code で/rspack-tracingを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
bottlenecks.md
tracing-guide.md
scripts/
analyze_trace.mjs

詳細

Rspack のトレースとパフォーマンスプロファイリング

このスキルを使用する場面

次のような場合にこのスキルを使用します。

  1. Rspack のビルドが遅い原因を特定する。
  2. どのプラグインやローダーに最も時間がかかっているかを把握する。
  3. ユーザーから提供された Rspack のトレースファイルを分析する。
  4. パフォーマンスプロファイルの取得方法をユーザーに案内する。

ワークフロー

1. トレースを取得する

まず、トレースを有効にしてビルドを実行するようユーザーに依頼します。

# Set environment variables for logging to a file
RSPACK_PROFILE=TRACE RSPACK_TRACE_LAYER=logger RSPACK_TRACE_OUTPUT=./trace.json pnpm build

これにより、.rspack-profile-{timestamp}-{pid}/trace.json のようなタイムスタンプ付きディレクトリにトレースファイルが生成されます。

設定の詳細については、references/tracing-guide.md を参照してください。

2. クラッシュ/エラーの簡易診断

クラッシュまたはエラーがどの段階で発生したかを特定したい場合は、全体の分析を実行せずに tail を使用して直近のイベントをすばやく確認します。

# Navigate to the generated profile directory
cd .rspack-profile-*/

# View the last 20 events to see where the build failed
tail -n 20 trace.json

直近のイベントには、ビルドが停止した箇所のスパン名と対象が表示されるため、問題のある段階、プラグイン、またはローダーをすばやく特定できます。

3. 詳細なパフォーマンス分析

クラッシュの診断だけでなく、詳細なパフォーマンスプロファイリングを行う場合は、生成されたトレースファイルに対して、同梱されている scripts/analyze_trace.mjs を実行するかどうかユーザーに確認します。同意が得られたら、作業ディレクトリはユーザーのプロジェクトのまま、Skill のルートを基準にスクリプトのパスを解決して、次を実行します。

# Navigate to the generated profile directory
cd .rspack-profile-*/

# Run the analysis script
node "<skill-root>/scripts/analyze_trace.mjs" trace.json
4. 結果を解釈する

スクリプトの出力を使用してボトルネックを特定します。 スパン名と実行可能な改善策の対応については、references/bottlenecks.md を参照してください。

5. 遅いプラグインを特定する

分析スクリプトの「Top Slowest Hooks」に基づいて、次の手順を実行します。

  1. フックを特定する:フック名(例:hook:CompilationOptimizeChunks)を確認します。
  2. 設定を調べる:rspack.config.js または rsbuild.config.ts を読み込みます。
  3. フックとプラグインを対応付ける:その特定のフックに登録されているプラグインとそのソースを探します。
  4. 出力する:疑わしいプラグインのソースコードのパス、行番号、列番号を出力します。

よくあるシナリオと簡単な修正方法

コメント