[パフォーマンス分析情報] パネルを使用すると、ウェブサイトのパフォーマンスに関する、ユースケースに基づいた実用的な分析情報を取得できます。
新しいパネルを使用する理由
新しい [パフォーマンス分析情報] パネルは、既存の [パフォーマンス] パネルを使用する際にデベロッパーにとっての以下の 3 つの問題を解消するためのテストです。
- 情報が多すぎる。UI が一新され、[パフォーマンス分析情報] パネルではデータが合理化され、関連情報のみが表示されます。
- ユースケースの区別が難しい。[パフォーマンス分析情報] パネルは、ユースケース主導の分析をサポートしています。現時点ではページ読み込みのユースケースにのみ対応していますが、フィードバックに基づいて今後さらに機能が拡充されます(インタラクティビティなど)。
- ブラウザを効果的に使用するには、深い専門知識が必要です。[パフォーマンス分析情報] パネルの [分析情報] ペインには、重要な分析情報がハイライト表示され、問題の修正方法に関する実用的なフィードバックも表示されます。
はじめに
このチュートリアルでは、[パフォーマンス分析情報] パネルを使用してページ読み込みのパフォーマンスを測定し、把握する方法について説明します。続きを読むか、上のこのチュートリアルの動画をご覧ください。
[パフォーマンス分析情報] パネルを開く
- DevTools を開きます。
その他のオプション アイコン(
)> [その他のツール] > [パフォーマンス分析情報] をクリックします。または、コマンド メニューを使用して [パフォーマンス分析情報] パネルを開きます。
パフォーマンスを記録
[パフォーマンス分析情報] パネルでは、一般的なパフォーマンスとユースケースに基づく(ページ読み込みなど)パフォーマンスを記録できます。
- 新しいタブでこのデモページを開き、そのページで[パフォーマンス分析情報] パネルを開きます。
録画中にネットワークと CPU をスロットリングできます。このチュートリアルでは、[キャッシュを無効にする] をオンにして、プルダウン メニューで [CPU] を [4 倍の速度] に設定します。
[
ページ読み込みを測定する] をクリックします。DevTools はページの再読み込み中にパフォーマンス指標を記録し、ページの読み込みが終了してから数秒後に記録を自動的に停止します。
録音のパフォーマンスを再生する
下部のコントロールを使用して、録音の再生をコントロールできます。
以下はその方法の例です。
- [Play] をクリックして録音を再生します。
- [一時停止] をクリックしてリプレイを一時停止します。
- プルダウンで再生速度を調整します。
- [ビジュアル プレビューを切り替える] をクリックして、ビジュアル プレビューの表示と非表示を切り替えます。
演奏の録画を操作する
DevTools は自動的にズームアウトし、完全な記録タイムラインが表示されます。ズームを使った録画の移動やタイムラインの移動が可能です。
タイムラインをズームしたり左右に動かしたりするには、対応するナビゲーション ボタンを使用します。
- [タイムライン] をクリックしてプレイヘッドを移動し、特定のフレームを表示します。
- 拡大するには、下部にある [ズームイン] コントロールと [ズームアウト] コントロールをクリックします。この場合は、プレイヘッドに基づいてズームします。
- 下部の水平スクロールバーをドラッグすると、タイムラインを左右に動かすことができます。
キーボード ショートカットも使用できます。
ボタンをクリックすると、ショートカットが表示されます。ショートカットを使用する場合は、マウスのカーソルでズームします。
パフォーマンス分析情報を表示する
[分析情報] ペインでパフォーマンス分析情報のリストを取得します。潜在的なパフォーマンスの問題を特定して修正する。
各分析情報にカーソルを合わせると、メインのトラックでハイライト表示されます。
分析情報(レンダリング ブロック リクエストなど)をクリックして、[詳細] ペインに開きます。問題を詳しく把握するには、[ファイル]、[問題]、[修正方法] などの項目を確認します。
Web Vitals のパフォーマンス指標を表示する
Web Vitals は、ウェブで優れたユーザー エクスペリエンスを提供するために不可欠な品質シグナルについての統一されたガイダンスを提供する Google の取り組みです。
これらの指標は、[タイムライン] ペインと [分析情報] ペインで確認できます。
タイムラインの分析情報にカーソルを合わせると、指標の詳細が表示されます。
Large Contentful Paint の遅延を検出する
Largest Contentful Paint(LCP)は、Core Web Vitals の指標の一つです。ページの読み込みが最初に開始された時点を基準として、ビューポート内に表示される最も大きな画像またはテキスト ブロックのレンダリング時間をレポートします。
LCP スコアが良好は 2.5 秒以下です。
ページ上の最大の Contentful Paint のレンダリングに時間がかかる場合は、LCP バッジが黄色の正方形または赤色の三角形とともにタイムラインに表示されます。
[詳細] ペインを開くには、タイムラインまたは右側の [分析情報] ペインで LCP バッジをクリックします。このペインでは、遅延の考えられる原因と修正方法の提案を確認できます。
この例では、リクエストによってレンダリングがブロックされているため、重要なスタイルをインラインで適用して修正できます。詳しくは、レンダリングをブロックするリソースを排除するをご覧ください。
LCP レンダリング時間の各構成要素を確認するには、[詳細] > [タイミングの内訳] セクションまでスクロールします。
LCP のレンダリング時間は、次の要素で構成されます。
LCP サブパート | 説明 |
---|---|
Time to First Byte(TTFB) | ユーザーがページの読み込みを開始してから、ブラウザが HTML ドキュメントのレスポンスの最初のバイトを受信するまでの時間。 |
リソース読み込みの遅延 | TTFB からブラウザが LCP リソースの読み込みを開始した時点までの差分。 |
リソースの読み込み時間 | LCP リソース自体の読み込みにかかる時間。 |
要素のレンダリングの遅延 | LCP リソースの読み込みが完了してから、LCP 要素が完全にレンダリングされるまでの差分。 |
LCP 要素のレンダリングにリソースの読み込みが必要ない場合は、リソースの読み込みの遅延と時間は省略されます。たとえば、要素がシステム フォントでレンダリングされたテキストノードである場合などです。
レイアウト シフトのアクティビティを表示する
Layout Shift トラックでレイアウト シフトのアクティビティを表示します。
レイアウト シフトはセッション ウィンドウ内にグループ化されます。この例では、2 つのセッション ウィンドウがあります。セッション ウィンドウ間にギャップがあります。
Cumulative Layout Shifts(CLS)は、ウェブに関する主な指標の指標の一つです。Layout Shifts トラックを使用すると、レイアウト シフトの潜在的な問題と原因を特定できます。
CLS 指標を改善する場合は、常に最も大きいセッション ウィンドウから始めます。この例では、セッション ウィンドウ 1 が、背景色とレベルに基づいて最大のウィンドウになります。
スクリーンショットをクリックすると、レイアウト シフトの詳細が表示され、考えられる根本原因と影響を受ける要素を特定できます。
この例では、サイズが調整されていないメディアが根本原因である可能性があります。修正方法については、Cumulative Layout Shift を最適化するをご覧ください。
レイアウト シフトのスコアについて
スコアの計算方法を理解するには、[詳細] ペインの [ウィンドウ] セクションを使用します。[Window] には、現在のレイアウト シフトが属するセッション ウィンドウが表示されます。
ページ全体が移動した場合、各レイアウト シフトの最大スコアは 1
です。この例では、最初のレイアウト シフトのスコアは 0.15
でした。2 番目のレイアウト シフトのスコアは 0.041
でした。
このセッション ウィンドウの合計スコアは 0.19
です。CLS のしきい値に基づくと、改善が必要です。セッション ウィンドウの背景色も同じものになります。
セッション ウィンドウの背景グラフは時間とともに増加します。レイアウト シフトの累積スコアには、その時点での増加が反映されます。
ネットワーク アクティビティを表示する
[ネットワーク] トラックでネットワーク アクティビティを確認します。ネットワーク トラックを展開すると、すべてのネットワーク アクティビティが表示されます。各項目をクリックすると、詳細が表示されます。
レンダラのアクティビティを表示する
[Renderer] トラックでレンダリング アクティビティを表示します。各レンダラを開いてアクティビティを表示し、各アイテムをクリックすると詳細が表示されます。
GPU アクティビティを表示する
[GPU] トラックで GPU のアクティビティを表示します。GPU トラックはデフォルトで非表示になっています。GPU を有効にするには、[設定] で [GPU] をオンにします。
カスタム速度を表示
カスタムのパフォーマンス メジャーを取得するには、カスタム速度を使用し、[タイミング] トラックでタイミングを可視化します。詳しくは、カスタム速度 API をご覧ください。
テキスト読み込みの経過時間を計算するこちらのデモページをご確認ください。
カスタム速度を表示するには:
performance.mark()
を使用して、アプリケーション内の場所にマークを付けます。- マーク間の経過時間は
performance.measure()
で測定します。 - パフォーマンスの記録。
- [Timings] トラックで測定値を確認します。トラックが表示されない場合は、[設定] で [カスタム速度] を確認してください。
- 詳細を表示するには、トラックのタイミングをクリックします。
UI をカスタマイズする
[タイムライン] と [トラック] をカスタマイズするには、パネルの
[設定] アイコンをクリックして、使用するオプションをオンにします。録音をエクスポートする
録音を保存するには、[Export]
をクリックします。録音をインポートする
録音を読み込むには、[Import]
を選択します。録音を削除する
録音を削除するには:
- [ 削除] をクリックします。確認ダイアログが開きます。
- ダイアログで [削除] をクリックして削除を確定します。