ADVERTISEMENT

【Edge】メモリリークが「特定の拡張機能」で発生する時のEdgeログ取得と切り分け手順

【Edge】メモリリークが「特定の拡張機能」で発生する時のEdgeログ取得と切り分け手順
🛡️ 超解決

Edgeを使用していると、ブラウザのメモリ使用量が徐々に増加し、PC全体の動作が重くなることがあります。この現象の原因の多くは、特定の拡張機能によるメモリリークです。本記事では、メモリリークの原因となっている拡張機能を特定するための切り分け手順と、Edgeのログを取得して詳細を分析する方法を解説します。これらの手順を実行することで、問題のある拡張機能を見つけ出し、Edgeを快適に戻すことができます。

【要点】拡張機能によるメモリリークを特定してEdgeログを取得する方法

  • 拡張機能の切り分け: すべての拡張機能を無効にしてから1つずつ有効に戻し、メモリ使用量の変化を確認します。
  • Edgeタスクマネージャーの活用: edge://taskmanagerで各プロセスのメモリ消費をリアルタイムに監視します。
  • Edgeログの取得: edge://tracingを使用してブラウザのパフォーマンストレースを記録し、メモリリークの発生箇所を特定します。

ADVERTISEMENT

拡張機能がメモリリークを引き起こす仕組み

メモリリークとは、プログラムが使用済みのメモリを解放できずに占有し続ける現象です。Edgeの拡張機能はJavaScriptで動作し、バックグラウンドページやコンテンツスクリプトを通じてメモリを消費します。拡張機能のコードにバグがあると、不要になったオブジェクトが解放されず、メモリ使用量が増え続けます。特に、広告ブロッカーやタブ管理拡張機能など常時動作するものはリークを起こしやすいです。また、拡張機能が古いバージョンのままだと、Edgeの更新によるAPI変更に追従できずメモリ管理に問題が生じることがあります。

お探しの解決策が見つからない場合は、こちらの「Microsoft Edgeトラブル完全解決データベース」で他のエラー原因や解決策をチェックしてみてください。

拡張機能の切り分け手順

まず、問題の拡張機能を特定するために、すべての拡張機能を無効にしてから一つずつ有効にする方法を試します。以下の手順で進めてください。

すべての拡張機能を無効にする

  1. Edgeの設定を開く
    Edgeの右上にある三点リーダメニューをクリックし、拡張機能を選択します。またはアドレスバーに「edge://extensions」と入力して開きます。
  2. 拡張機能をすべてオフにする
    各拡張機能のトグルスイッチをクリックして無効にします。または「拡張機能の管理」ページで一括操作が可能な場合は、すべてをオフにします。
  3. Edgeを再起動する
    完全にEdgeを閉じてから再度開きます。メモリ使用量が正常に戻ったことをタスクマネージャーで確認します。

拡張機能を一つずつ有効にして確認する

  1. 最初の拡張機能を有効にする
    拡張機能の管理ページで、1つだけ拡張機能をオンにします。
  2. メモリ使用量を監視する
    Edgeのタスクマネージャー(edge://taskmanager)を開き、その拡張機能のプロセスのメモリ使用量を確認します。通常のブラウジングを数分行い、メモリが増加し続けるか観察します。
  3. 問題がなければ次の拡張機能へ
    メモリ使用量が安定していれば、その拡張機能は原因ではありません。すべての拡張機能を無効に戻し、次の拡張機能を有効にして同様に確認します。
  4. メモリリークを検出したら
    特定の拡張機能を有効にしたときにメモリ使用量が増え続ける場合、その拡張機能が原因です。その拡張機能は無効のままにして、他の拡張機能も有効にして問題が再現しないか確認します。

Edgeログの取得手順

切り分けで原因拡張機能を特定できなかった場合は、詳細なトレースログを取得して分析します。Edgeにはパフォーマンストレース機能が組み込まれています。

edge://tracingを使用したトレース取得

  1. トレースページを開く
    アドレスバーに「edge://tracing」と入力して開きます。
  2. トレース設定を構成する
    「Record」ボタンの横にある設定アイコンをクリックし、カテゴリから「memory」や「blink」などメモリ関連のカテゴリを選択します。拡張機能の動作をキャプチャするため「extensions」カテゴリも含めるとよいでしょう。
  3. トレースの記録を開始する
    「Record」ボタンをクリックして記録を開始します。その後、メモリリークを再現する操作(問題のサイトを開く、拡張機能を使うなど)を数分間行います。
  4. トレースを停止して保存する
    「Stop」ボタンをクリックし、表示されたトレースデータを「Save」ボタンでファイルに保存します。ファイル名は「edge-trace.json」などにします。

取得したトレースログの解析方法

  1. トレースファイルを開く
    取得したJSONファイルをEdgeのトレースページ(edge://tracing)にドラッグ&ドロップするか、「Load」ボタンから開きます。
  2. メモリ関連イベントをフィルタする
    トレースビューアの検索バーに「memory」や「malloc」などのキーワードを入力して、メモリ割り当てイベントを絞り込みます。
  3. 拡張機能のプロセスに注目する
    イベントの「Process」列で拡張機能のプロセスIDを確認します。拡張機能のプロセスは「Extension: 拡張機能名」と表示されます。そのプロセスでメモリが増加しているイベントがないか確認します。

ADVERTISEMENT

注意点とよくある失敗

拡張機能を無効にしてもメモリが解放されない

拡張機能を無効にしても、すでにリークしたメモリは解放されないことがあります。Edgeを完全に再起動してからメモリ使用量を確認してください。再起動後もメモリ使用量が高い場合は、他の原因(悪質なスクリプトやタブの開きすぎなど)も疑ってください。

トレースログが巨大になる場合

トレース記録時間が長すぎるとファイルサイズが大きくなり、ブラウザが重くなることがあります。記録は1〜2分程度にとどめ、問題が再現される最小限の操作に絞ってください。

拡張機能のアップデートで解決するケース

メモリリークが拡張機能のバグが原因の場合、拡張機能のストアページで最新バージョンが配信されていることがあります。拡張機能を最新版に更新してから再度動作を確認してください。

拡張機能の種類とメモリ消費の特徴の比較

拡張機能の種類 メモリ使用量の傾向 CPU使用率への影響 メモリリークのリスク
広告ブロッカー 中〜高(フィルタ数による) 中程度 中(複雑なルールで発生しやすい)
パスワード管理 低〜中 低い
翻訳・辞書 中(ページ読み込み時) 低〜中
タブ管理 高(タブ数に比例) 高い 高(解放漏れが起きやすい)
開発者ツール 低〜中 低い

まとめ

本記事では、Edgeのメモリリークが特定の拡張機能によって発生する場合の切り分け手順と、Edgeログの取得方法を説明しました。拡張機能を一つずつ無効にしてメモリ使用量を監視することで、原因となる拡張機能を特定できます。さらに、edge://tracingを使った詳細なトレースログを取得すれば、より正確な分析が可能です。問題の拡張機能が判明したら、最新版への更新や代替拡張機能への切り替えを検討してください。これらの手順を活用して、Edgeのメモリ消費を適切に管理しましょう。


🧭
Microsoft Edgeトラブル完全解決データベース ページが開かない・パスワードが消えた・動作が重いなど、Edgeの困りごとを設定・仕組みから即解消。逆引きリファレンスとして活用してください。

ADVERTISEMENT

この記事の監修者
✍️

超解決 第一編集部

疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。

ADVERTISEMENT