💻

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を見直し、必要なときだけ有効化するなどの方法を取ることで、開発体験が大きく向上します。

株式会社primeNumber

Discussion