Query Monitor を使用して WordPress のパフォーマンスの問題をデバッグする方法

公開: 2019-09-05
ワードプレスクエリモニター
@Cloudwaysをフォローしてください

多くのプラグインを含む WordPress サイトで作業している場合、パフォーマンスの問題が発生する可能性があります。 それらを特定するのは難しい場合があります。 開発者は通常、問題を引き起こしている可能性のあるコードの部分を除外するか、プラグインを 1 つずつオフにすることによって、WordPress のエラーを解決します。

このプロセスには時間がかかる場合があります。 ただし、Query Monitor プラグインという、より高速な解決策があります。 これは、パフォーマンスの問題を特定し、WordPress サイトの仕組みを理解するためのより効率的な方法を提供します。

このガイドでは、Query Monitor についてすべて説明します。 これは、その目的と機能を特定するだけでなく、それを効果的に使用して WordPress サイトの問題をデバッグし、パフォーマンスを向上させる方法についても重要です。

  • Query Monitor プラグインの概要
  • Query Monitor が開発者にとってなぜ役立つのでしょうか?
  • WordPress クエリモニターの機能
  • クエリモニターのシステム要件
  • WordPress クエリモニターの使用方法?

Query Monitor プラグインの概要

クエリ監視プラグイン

– 出典: WordPress.org

Query Monitor は、WordPress サイトのパフォーマンスと開発の問題のトラブルシューティングを支援するように設計された完全に無料のプラグインとして際立っています。 データベースのクエリ、スクリプト、タイミングなどに関する洞察を提供します。

クエリ モニターをインストールすると、上部のメニュー バーに便利なエントリが追加され、現在のページで実行されているクエリの数を示すドロップダウン リストが表示されます。

これには、読み込み時間、クエリの種類、コンポーネント、その他の詳細が含まれます。 このデータにより、開発者は Web サイトのエラーをより深く理解し、対処できるようになります。

これは John Blackbourn によって開発され、公式 WordPress プラグイン リポジトリと GitHub の両方で入手できます。

Query Monitor は定期的に更新され、開発チームは報告されたすべてのバグに対して迅速なサポートと修正を提供します。

クエリモニターは何をするのですか?

Query Monitor プラグインでできることは次のとおりです。

  • PHP エラーを特定します。
  • メモリ使用量を監視します。
  • 特定のプラグインからのクエリを含むデータベース クエリを分析します。
  • WordPress サイトでの HTTP API 呼び出しを追跡します。
  • キューに入れられたスクリプトとスタイル、およびそれらの依存関係を調べます。
  • サイトの動作に影響を与えるフックとアクションを理解します。
  • 使用中のテーマ テンプレート ファイルを調べます。
  • サイト内の言語と翻訳を確認してください。
  • サイトの URL に影響を与える書き換えルールを確認します。
  • WordPress ブロックエディターに存在するブロックを分析します。
  • サイトに関する一般的な環境情報にアクセスします。
  • WordPress 管理画面のパフォーマンスに関する洞察を得ることができます。

プラグインのインストールは非常に簡単で、通常は追加の手順は必要ありません (同様のプラグインのインストール プロセスと比較して)。また、インストール後に追加の構成も必要ありません。

すぐに管理ツールバーにドロップダウン リストが表示されます。

クエリモニターの機能

ドロップダウン リストのエントリをクリックすると、データベース、CSS、アクティブなフック、および HTTP API 呼び出しに対して行われたクエリの詳細にアクセスできます。

ドロップダウン リストのエントリをクリックして、クエリの詳細、CSS、アクティブなフック、および HTTP API 呼び出しにアクセスします。

New Relic を使用すると、Cloudways ダッシュボードから直接、WordPress サイトのパフォーマンスをさらに簡単に監視できるようになります。 ただし、これについては、ブログの後半で説明します。

クエリモニターのシステム要件

Query Monitor を使用するには、システムに WordPress (3 年前までのバージョンがサポートされています) と PHP バージョン 7.4 以降が必要です。 詳細については、Query Monitor の Web サイトをご覧ください。

Cloudways で WordPress エクスペリエンスを最適化

シームレスなプラグイン統合、自動更新、WordPress のパフォーマンスと監視を簡単に強化できるように調整されたユーザーフレンドリーなプラットフォームを活用します。

今すぐやってみて下さい

Query Monitor が開発者にとってなぜ役立つのでしょうか?

Query Monitor プラグインは、開発者が改善すべき領域を特定し、リソースの問題や競合の原因となっているプラ​​グインやアセットを明らかにするのに役立ちます。

ボトルネックに効率的に対処し、コードの拡張や問題のある要素の置き換えが可能になります。 これは、パフォーマンスの最適化を目指す Web サイトの所有者や開発者にとって有益です。

クエリ モニターを使用する利点をよりよく理解するために、通常はコードの活用が必要となる単純な開発タスク、つまりページの読み込み時間とページ上のアクティブなクエリの数を調べるタスクを考えてみましょう。

WordPress には、 get_num_queries() と timer_stop() という2 つの単純な関数が用意されています。 これらのコードはパフォーマンスのボトルネックを特定するのに役立ちますが、効果的に解釈するには一定レベルの技術的知識が必要です。

クエリ モニターは、コードに関数を追加して結果を確認するプロセスを自動化し、手動で行う必要をなくします。 データベース クエリの数が表示され、サイトのパフォーマンスと機能のさまざまな側面についての洞察が得られます。

WordPress クエリモニターの機能

ここでは、Query Monitor の優れた機能の包括的な概要を示します。

1. データベースクエリ

  • 遅いクエリ、重複したクエリ、または誤ったクエリに関する通知。
  • クエリ タイプ、担当コンポーネント (プラグイン、テーマ、WordPress コア)、および呼び出し関数によるオプションのフィルター処理。
  • 各クエリ タイプのビューを集計し、詳細な内訳を提供します。

2. テンプレート情報

テンプレート ファイル名、完全なテンプレート階層、ロードまたはアンロードされたテンプレート パーツ (ブロック テーマおよびクラシック テーマの場合) の表示。

3. PHP エラー

  • 責任のあるコンポーネント、コールスタック、および管理ツールバーに表示される警告の詳細を含む PHP エラーの表示。
  • コード内の非推奨または「間違った」機能の使用法を特定します。

4. ブロックとフルサイト編集 (FSE)

投稿コンテンツと FSE 内のブロックと関連プロパティについての洞察。

5. ルールとクエリ文字列を書き換える

一致した書き換えルール、関連するクエリ文字列、およびクエリ変数の表示。

6. エンキューされたスクリプトとスタイルシート

依存関係や壊れた依存関係のアラートなど、キューに入れられたスクリプトとスタイルシートに関する情報。

7. 言語設定

各テキストドメインの言語設定と読み込まれた翻訳ファイル (MO ファイルおよび JSON ファイル) の詳細。

8. HTTP API リクエスト

応答コード、責任のあるコンポーネント、所要時間を含む HTTP API リクエストの記録と、失敗したリクエストまたはエラーのあるリクエストのアラート。

9. ユーザーの能力チェック

ユーザー機能チェックのレポート (機能チェックに渡された結果とパラメータを含む)。

10. 環境情報

PHP、データベース、WordPress、Web サーバーに関する詳細情報。

11. 条件付き関数

is_single()、is_home() などのすべての WordPress 条件関数の値。

12. トランジェントとマルチサイト機能

更新された一時的なものの識別と、マルチサイト インストールでの switch_to_blog() および Restore_current_blog() の使用法。

13. リダイレクト

リダイレクトが発生するたびに、コールスタックを含む HTTP ヘッダーが自動的に追加されます。

14. AJAX 呼び出し

動的 WordPress サイトは、完全な Web ページをロードせずに、リアルタイムでデータの送信と取得を行うために多くの Ajax 呼び出しを行います。 クエリ モニターには、これらのリクエストが他の有用なデバッグ情報とともに表示されます。 この情報は、開発者がエラーを強調するのに役立ちます。

15. REST API

クエリ モニターを監視する権限がある場合は、認証された WordPress REST API リクエストのヘッダー内の情報をデバッグできます。

16. 認証

デフォルトでは、単一サイト インストールの管理者と WordPress マルチサイトのスーパー管理者のみがクエリ モニター内のログを表示できます。 ただし、ユーザーとしてログインしている場合でもログを表示するように認証 Cookie を構成できます。

17. プライバシーに関する声明

WordPress Query Monitor はユーザーのプライバシーを重視して運営されています。 データを収集したり、第三者に送信したりすることはありません。 このツールを使用するとき、あなたの情報は安全かつ機密に保たれます。

Cloudways マネージド WordPress ホスティングで最適化されたパフォーマンスを体験

高度なキャッシュ、自動スケーリング、およびお客様の言語に対応したテクニカル サポートを活用してください。 面倒な作業は Cloudways にお任せください!

今すぐやってみて下さい

WordPress クエリモニターの使用方法?

WordPress ダッシュボードから Query Monitor をインストールしてアクティブ化したら、以下の手順に従う必要があります。

  • プラグインに移動します。
  • [インストールされたプラグイン][クエリ モニター]をクリックします。
  • [設定]をクリックします。
  • 認証Cookieを設定する」ボタンをクリックします。

次に、Query Monitor プラグインの各セクションを詳しく見てみましょう。

概要

最初のタブには、Web サイトの概要が表示されます。 ページ生成時間、ピーク時のメモリ使用量、データベース クエリ時間、データベース クエリが表示されます。

ページの生成時間、ピーク時のメモリ使用量、データベースのクエリ時間、表示されるクエリを含む Web サイトの概要

データベースクエリ

ユーザーが情報を要求するか送信しようとするたびに、データベース クエリがトリガーされます。

クエリ モニターはこのクエリを追跡し、ログ内に表示するため、ユーザーはどのクエリが正常に実行され、どのクエリが実行されなかったかを確認できます。 また、クエリのタイプとコンポーネントでフィルタリングすることもできます。

Query Monitor はクエリを追跡およびログに記録するため、ユーザーはクエリの実行の成功と失敗を簡単に識別できます。

オブジェクトキャッシュ

Query Monitor の [概要] パネルには、オブジェクト キャッシュなどのサイトに関する情報が表示されます。 永続オブジェクト キャッシュ プラグインがない場合、クエリ モニターにメッセージが表示されます。

永続オブジェクト キャッシュ プラグインは、データベース クエリなどの操作の結果をキャッシュすることでパフォーマンスを向上させます。

「外部オブジェクト キャッシュが使用されていません」と表示された場合は、永続的なキャッシュのために Redis や Memcached などのキャッシュ プラグインをインストールします。 これにより、サイトのパフォーマンスが大幅に向上します。 サポートが必要な場合は、ホスティング プロバイダーにお問い合わせください。

Query Monitor サイトの詳細パネルの概要パネル (オブジェクト キャッシュ ステータスなど)。永続オブジェクト キャッシュ プラグインが見つからない場合に表示されるメッセージ

タイミング

クエリ モニターの [タイミング] パネルには、指定された関数名の qm/start および qm/stop アクション中にかかった時間とおおよそのメモリ使用量が記録され、表示されます。

[タイミング] パネルに表示される時間とメモリ使用量はおおよそのものであり、そのように扱う必要があることに注意することが重要です。

Query Monitor の「タイミング」パネル

ログ

クエリ モニターの [ログ] タブは、メッセージと変数をログに記録できる高度な機能で、技術的な問題のトラブルシューティングや潜在的な問題のサイトの監視に役立ちます。

Query Monitor の最初のインストール時には、ログ変数が設定されていないため、タブは空になります。

クエリモニターの「ログ」タブ

リクエスト

リクエスト機能は、現在のユーザーのクエリ変数を表示し、カスタム クエリを強調表示します。 また、リクエスト内に存在する関連するクエリ文字列も表示されます。

リクエスト機能は、現在のユーザーのクエリ変数を表示し、カスタム クエリを強調表示します。

管理画面

管理画面セクションには、WordPress 管理パネルで行われるアクティビティが表示されます。 管理パネルからアクセスされるコンポーネントが一覧表示され、PHP ファイルが利用できないことによるエラーが表示されます。

管理画面セクションには、WordPress 管理パネルで行われているアクティビティが表示されます。

スクリプト

クエリ モニター内の [スクリプト] タブにアクセスすると、リクエスト内に含まれるキュー内のすべてのスクリプトとスタイルがリストされます。 また、外部依存関係が原因で壊れたスクリプトや応答しないスクリプトも強調表示されます。

クエリモニター内の「スクリプト」タブ

スタイル

クエリ モニターの [スタイル] タブは [スクリプト] タブと同様に機能しますが、JavaScript を表示する代わりに、キューに入れられた CSS に重点を置いています。 このタブは、サイトのパフォーマンスをデバッグするのに役立ちます。

スクリプトなどの複数のスタイルシートを読み込むと、サイトの読み込み時間が遅くなります。 このタブを使用すると、スタイルシートの数が減り、ファイルが小さくなり、HTTP リクエストが減り、Web サイトを最適化できます。

Query Monitorの「スタイル」タブ

フックとアクション

フックとアクションは、WordPress が提供する事前定義されたコントロールを使用してカスタム機能を作成できるため、WordPress サイトでは不可欠です。 ただし、これを行うと Web サイトが破損する場合があり、エラーのトラブルシューティングが面倒になる可能性があります。

Query Monitor にはフックやアクションによって引き起こされるエラーを特定するツールが組み込まれているため、コア、テーマ、またはプラグインごとにアクションとフックをフィルタリングできます。 また、完全な名前と参照も提供され、デバッグ目的でコード内で簡単に見つけることができます。

フックとアクション

言語

多言語 Web サイトの場合、「言語」タブは壊れたファイルまたは使用できないファイルを特定し、言語設定を表示します。

「言語」タブ

HTTP API 呼び出し

このタブには、すべてのサーバー側クエリと応答コード、タイムアウト ログ、および失敗したリクエストが表示されます。 これは、応答をリアルタイムで確認でき、サーバー側のコードを効率的にデバッグできるため、便利な機能です。

HTTP API 呼び出しには、すべてのサーバー側クエリと応答コード、タイムアウト ログ、および失敗したリクエストが表示されます。

一時的な更新

一部の API では一度に一定数のリクエストが許可されるため、WordPress は API レスポンスをデータベースにキャッシュできます。 Transient Updates は、これらのトランジェントを表示し、サイズとコンポーネントも表示します。

一時的な更新

能力チェック

デフォルトでは、これは非アクティブですが、wp-config.php ファイル内にコードを配置することでアクティブにできます。 機能チェックは、ページ上の各ユーザーの機能チェックを実行し、パラメータと結果を表示します。

能力チェック

環境

これは、PHP、データベース、WordPress セクションを含む完全な WordPress 環境の概要です。 各セクションには、MySQL バージョン、PHP メモリ制限、WordPress バージョンなど、環境に役立つ情報が表示されます。

環境

条件文

Query Monitor の条件機能は、現在のリクエストに関連するすべての WordPress 条件を表示し、各条件が「True」または「False」と評価されるかどうかを示します。 これにより、ページの読み込み中に適用される条件付きロジックについての洞察が得られます。

条件文

まとめ

WordPress Query Monitor プラグインは、デバッグ用の強力なプラグインであり、わかりやすい形式で詳細情報を提供します。 これは、Web サイトのパフォーマンスに対するプラグイン、テーマ、または機能の影響を迅速に特定する場合に特に有益であることが証明されています。

Query Monitor プラグインがメニューを管理ツールバーにシームレスに統合し、現在のページのスナップショットを提供し、メニュー項目の選択時にパネルに包括的なデータを提供するという事実は、注目すべき機能です。

サイトを健全に保つためによく使用するコンポーネントは次のうちどれですか? このプラグインを試して、以下のコメントセクションでお知らせください。

Q1. Query Monitor は WordPress のどこにありますか?

A. Query Monitor には、WordPress 管理バーからアクセスできます。 概要をクリックすると、完全なクエリ モニター インターフェイスが開き、現在のフロント ページまたはバックエンド ページにウィンドウ オーバーレイとして表示されます。

Q2. WordPress クエリを最適化するにはどうすればよいですか?

A. WordPress データベースの最適化には、SQL コマンドによるテーブルの最適化、不要なデータのクリーンアップ、投稿リビジョンの削除、スパム コメントの削除、未使用のタグの削除、ピンバックとトラックバックの排除、未使用のプラグインとテーマのアンインストールが含まれます。

Q3. WordPress のエラー ログはどこにありますか?

A. WordPress のエラー ログにアクセスするには、ファイル マネージャーを使用して /wp-content/ フォルダーに移動します。 このフォルダー内で debug.log ファイルを探します。このファイルには、ログに記録されたすべての WordPress エラー、警告、通知の包括的な記録が含まれています。