VSCodeの処理を遅くするExtensionをログから特定する方法
はじめに
VSCodeでは、多くの便利なExtensionが利用できますが、使いすぎると処理が遅くなることがあります。私の開発環境では、特にファイル保存時のフォーマットが極端に遅くなり、生産性が大きく損なわれる問題が発生していました。
この記事では、実際に遅延の原因となっているExtensionをVSCodeのログから特定し、問題を解消する方法を紹介します。
環境について
私の環境は、VSCodeのRemote SSH機能を利用しており、ExtensionはRemote環境で動作しています。ローカルで開発を行っている方は、「Extension Host(Remote)」を「Extension Host」と読み替えてください。
Extension Hostとは、VSCode内でExtensionが実行される環境のことです。
Extensionの処理速度を特定する手順
1. VSCodeのログレベルを設定
まず、デフォルトではログレベルがInfo
になっているため、詳細な情報が得られるようにTrace
に変更します。
-
cmd + shift + p
を押してコマンドパレットを開く。 -
Developer: Set Log Level
を検索して選択。 - ログレベルを
Trace
に設定する。
2. Extension Host(Remote)のログを確認
- コマンドパレットを開く (Cmd+Shift+P または Ctrl+Shift+P)。
- 「Output: Focus on Output View」を選択。
- ドロップダウンメニューから「Extension Host(Remote)」を選択する。
3. 実際のログを確認
ファイル保存などのアクションを行うと、次のようなログが表示されます。
2025-05-21 09:48:18.848 [trace] [xxx.extension-hoge] provider DONE after 2464ms
2025-05-21 09:48:18.894 [trace] [yyy.extension-fuga] provider DONE after 5026ms
ここで表示されるDONE after
の後にある数値がExtensionの処理にかかった時間です。
[xxx.extension-hoge]
[yyy.extension-fuga]
には実際のExtension名が表示されます。
上記の場合、最初のExtensionで約2.5秒、次のExtensionで約5秒もの時間がかかっていることがわかります。
対策
特定された遅延の原因となるExtensionを無効化すると、即座にファイル保存時のフォーマットのパフォーマンスが改善されます。
実際にこの方法で問題となるExtensionを特定し、無効化した結果、処理時間が大幅に短縮され、生産性が改善しました。
まとめ
VSCodeの処理が遅いと感じた場合は、まずログを確認して遅延の原因となるExtensionを特定してみましょう。Extensionを見直し、必要なときだけ有効化するなどの方法を取ることで、開発体験が大きく向上します。
Discussion