パフォーマンス分析情報: ウェブサイトのパフォーマンスに関する実用的な分析情報を取得できます

[パフォーマンス分析情報] パネルを使用すると、ウェブサイトのパフォーマンスに関する実用的な分析情報とユースケース主導の分析情報を取得できます。

概要

[パフォーマンス分析情報] パネルでは、次のことができます。

新しいパネルが必要な理由

新しい [パフォーマンス分析情報] パネルは、既存の [パフォーマンス] パネルを使用する際にデベロッパーが抱える次の 3 つの課題に対処するための試験運用です。

  • 情報が多すぎる。再設計された UI では、[パフォーマンス分析情報] パネルでデータが効率化され、関連性の高い情報のみが表示されます。
  • ユースケースを区別するのが難しい。[パフォーマンス分析情報] パネルは、ユースケース主導の分析をサポートしています。現時点ではページの読み込みのユースケースのみがサポートされていますが、今後、フィードバックに基づいて、インタラクティビティなど、さまざまなユースケースが追加される予定です。
  • 効果的に使用するには、ブラウザの仕組みに関する深い専門知識が必要です。[パフォーマンスに関する分析情報] パネルには、[分析情報] ペインの重要な分析情報がハイライト表示され、問題の解決方法に関する行動につながるフィードバックが表示されます。

はじめに

このチュートリアルでは、[パフォーマンス分析情報] パネルを使用してページの読み込みパフォーマンスを測定し、理解する方法について説明します。このチュートリアルの続きを読むか、上の動画をご覧ください。

[パフォーマンス分析情報] パネルを開く

  1. DevTools を開きます
  2. その他アイコン > [その他のツール] > [パフォーマンス分析情報] をクリックします。

    メニューのパフォーマンス分析情報。

    または、コマンド メニューを使用して、[パフォーマンスの分析情報] パネルを開きます。

    コマンド メニューにパフォーマンス分析情報コマンドを表示します。

パフォーマンスを記録する

[パフォーマンス分析情報] パネルでは、一般的なパフォーマンスとユースケース主導のパフォーマンス(ページの読み込みなど)を記録できます。

  1. 新しいタブでこのデモページを開き、ページでパフォーマンス分析情報パネルを開きます
  2. 録画中にネットワークと CPU をスロットリングできます。このチュートリアルでは、[キャッシュを無効にする] をオンにし、プルダウン メニューで [CPU] を [4 倍の減速] に設定します。

    スロットリング。

  3. [ページ読み込みを測定] をクリックします。DevTools は、ページの再読み込み中にパフォーマンス指標を記録し、ページの読み込みが完了してから数秒後に自動的に記録を停止します。

    開始オプション。

パフォーマンス録画を再生する

下部のコントロールを使用して、録画の再生を操作します。

リプレイ コントロール。

以下に例を示します。

  • [再生] をクリックして録画を再生します。
  • [一時停止] をクリックして、リプレイを一時停止します。
  • プルダウンで再生速度を調整します。
  • [ビジュアル プレビューの切り替え] をクリックして、ビジュアル プレビューを表示または非表示にします。

DevTools は、録画のタイムライン全体を表示するために自動的にズームアウトします。録音をズームしたり、タイムラインを移動したりして、録音を操作できます。

タイムラインをズームしたり左右に移動したりするには、対応するナビゲーション ボタンを使用します。

  • [タイムライン] をクリックして再生ヘッドを移動し、特定のフレームを表示します。
  • 下部の [拡大] コントロールと [縮小] コントロールをクリックして、ズームします。この場合、再生ヘッドに基づいてズームします。
  • 下部の横スクロールバーをドラッグして、タイムラインを左右に移動します。

キーボード ショートカットを使用することもできます。 ボタンをクリックして、ショートカットを表示します。 キーボード ショートカット] をクリックします。

ショートカットを使用すると、マウスカーソルに基づいてズームされます。

パフォーマンス分析情報を表示する

[分析情報] ペインでパフォーマンス分析情報のリストを取得します。潜在的なパフォーマンスの問題を特定して修正します。

[Insights] ペイン。

各分析情報にカーソルを合わせると、メイン トラックでハイライト表示されます。

分析情報(レンダリングをブロックするリクエストなど)をクリックして、[詳細] ペインで開きます。問題をさらに理解するには、[ファイル]、[問題]、[修正方法] などのセクションを確認します。

分析情報の詳細。

Core Web Vitals のパフォーマンス指標を表示する

ウェブに関する主な指標は、ウェブで優れたユーザー エクスペリエンスを実現する際に重要となる品質シグナルについて、統一的な目安を提供するための Google の取り組みです。

これらの指標は、[タイムライン] ペインと [分析情報] ペインで確認できます。

Core Web Vitals のパフォーマンス指標を表示します。

[タイムライン] の分析情報にカーソルを合わせると、指標の詳細が表示されます。

Largest Contentful Paint の遅延を検出する

Largest Contentful Paint(LCP)は、Core Web Vitals 指標の 1 つです。ビューポート内に表示される最も大きな画像またはテキスト ブロックのレンダリング時間を、最初にページの読み込みが始まったタイミングと比較する形で確認できます。

LCP のしきい値。

良好な LCP スコアは 2.5 秒以下です。

ページの Largest Contentful Paint のレンダリングに時間がかかっている場合は、タイムラインに LCP バッジと黄色の四角形または赤い三角形が表示されます。

LCP バッジ。

[詳細] ペインを開くには、タイムラインまたは右側の [分析情報] ペインにある LCP バッジをクリックします。このペインでは、遅延の考えられる原因と、その修正方法に関する提案を確認できます。

詳細ペイン。

この例では、リクエストによってレンダリングがブロックされています。これを修正するには、クリティカル スタイルをインラインで適用します。詳しくは、レンダリング ブロック リソースを削除するをご覧ください。

LCP レンダリング時間のサブパートを表示するには、[詳細] > [タイミングの内訳] セクションまで下にスクロールします。

タイミングの内訳。

LCP レンダリング時間は、次のサブパートで構成されます。

LCP サブパート 説明
Time to First Byte(TTFB) ユーザーがページの読み込みを開始してから、ブラウザが HTML ドキュメント レスポンスの最初のバイトを受信するまでの時間。
リソース読み込みの遅延 TTFB とブラウザが LCP リソースの読み込みを開始した時点との差分。
リソースの読み込み時間 LCP リソース自体の読み込みにかかる時間。
要素のレンダリングの遅延 LCP リソースの読み込みが完了してから LCP 要素が完全にレンダリングされるまでの差分。

LCP 要素のレンダリングにリソースの読み込みが必要ない場合、リソースの読み込みの遅延と時間は省略されます。たとえば、要素がシステム フォントでレンダリングされたテキストノードである場合などです。

レイアウト シフト アクティビティを表示する

[レイアウト シフト] トラックでレイアウト シフト アクティビティを確認します。

レイアウト シフト トラック。

レイアウト シフトはセッション ウィンドウにグループ化されます。この例では、2 つのセッション ウィンドウがあります。セッション ウィンドウの間にはギャップがあります。

セッション ウィンドウとギャップ。

Cumulative Layout Shift(CLS)は、ウェブに関する主な指標の 1 つです。[レイアウト シフト] トラックを使用して、レイアウト シフトの潜在的な問題と原因を特定します。

CLS 指標を改善する場合は、常に最も大きなセッション ウィンドウから始めます。この例では、セッション ウィンドウ 1 が背景色とレベルに基づいて最大のウィンドウになっています。

CLS。

スクリーンショットをクリックすると、レイアウト シフトの詳細が表示され、考えられる根本原因と影響を受ける要素を特定できます。

レイアウト シフトの詳細を表示します。

この例では、考えられる根本原因は unsized media です。修正方法については、Cumulative Layout Shift を最適化するをご覧ください。

考えられる根本原因を特定します。

レイアウト シフトのスコアについて

スコアの計算方法を確認するには、[詳細] ペインの [ウィンドウ] セクションを使用します。[Window] には、現在のレイアウト シフトが属するセッション ウィンドウが表示されます。

ページ全体がシフトした場合、各レイアウト シフトの最大スコアは 1 です。この例では、最初のレイアウト シフトのスコアは 0.15 です。2 回目のレイアウト シフトのスコアは 0.041 です。

レイアウト シフトのスコアについて理解します。

このセッション ウィンドウの合計スコアは 0.19 です。CLS のしきい値に基づいて、改善が必要です。セッション ウィンドウの背景色も同様に反映されます。

CLS のしきい値。

セッション ウィンドウのバックグラウンド グラフは時間の経過とともに増加します。レイアウト シフトの累積スコアは、その時点での増加を反映しています。

譲渡ウィンドウの背景グラフ。

ネットワーク アクティビティを表示する

[ネットワーク] トラックでネットワーク アクティビティを表示します。ネットワーク トラックを展開してすべてのネットワーク アクティビティを表示し、各アイテムをクリックして詳細を表示できます。

ネットワーク アクティビティを表示する。

レンダラ アクティビティを表示する

[Renderer] トラックでレンダリング アクティビティを表示します。各レンダラを展開してアクティビティを表示し、各項目をクリックして詳細を表示できます。

レンダラの動作状況を表示します。

GPU アクティビティを表示する

[GPU] トラックで GPU アクティビティを表示します。GPU トラックはデフォルトで非表示になっています。有効にするには、[設定] で [GPU] をオンにします。

GPU アクティビティを表示します。

カスタム速度を表示する

カスタム パフォーマンス測定を取得するには、User Timing を使用し、Timing トラックでタイミングを可視化します。詳細については、ユーザー タイミング API をご覧ください。

テキストの読み込みにかかった時間を計算するこちらのデモページをご覧ください。

カスタム速度を表示するには:

  1. アプリケーション内の場所を performance.mark() でマークします。
  2. performance.measure() を使用して、マーク間の経過時間を測定します。
  3. パフォーマンスを記録する
  4. [タイミング] トラックで測定値を表示します。トラックが表示されない場合は、[設定] の [ユーザーのタイミング] を確認してください。
  5. 詳細を表示するには、トラックのタイミングをクリックします。 タイミング トラック。

UI をカスタマイズする

[タイムライン] と [トラック] をカスタマイズするには、パネルの [設定] アイコンをクリックし、必要なオプションをオンにします。

設定] をタップします。

録画をエクスポートする

録音を保存するには、[エクスポート] をクリックします。

録画をエクスポートします。

録音をインポートする

録画を読み込むには、[インポート] を選択します。

録音をインポートします。

録音を削除する

録音を削除するには:

  1. [削除] をクリックします。確認ダイアログが開きます。 録音を削除します。
  2. ダイアログで [削除] をクリックして、削除を確定します。