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