WordPressサイトのトラブルシューティングを実施するのに十分なデータがないと、イライラしますね。ありがたいことに、再設計されたMyKinstaの分析機能を使用すると、ダッシュボードを使ってトラブルを調査できるようになりました。今日はMyKinstaの分析機能の各セクションについて詳しく説明し、新しいレポートを活用してWordPressサイトを改善したり修正したりする例(実績)について説明します。さて、サイトの調査を頑張りましょう!
MyKinstaの分析機能の概要
MyKinstaのメインダッシュボードには、リソースの使用状況やデータ転送や訪問回数に関する簡単なデータが表示されます。より詳細なレポートについては、サイドバーの「分析」をクリックします。

MyKinstaの分析機能にアクセスする
上部では、データをフィルタリングしたり、すべてのデータを表示したりできます。過去24時間、7日、または30日でデータをフィルタリングできます。

分析データのフィルタリング
MyKinstaの分析機能は7つのセクションに分割されており、そのセクションについては後程さらに詳しく説明します。
1. リソース
リソース使用状況の画面では、訪問者の合計数、帯域幅の使用状況、リクエストのバイト別のトップリストと、リクエストの訪問別のトップリストを表示できます。
訪問回数
訪問回数のレポートでは、WordPressサイトを訪問したユーザーの総数が確認できます。グラフで特定の時点を強調表示すると、訪問者の総数が前日よりも多いなど、比較データが表示されます。これは、ウェブサーバーへの訪問者数の正確なデータです。Google Analyticsのフィルターやルールなどはここでは機能しないことに注意してください。サイトの人間の訪問者の数を知りたい場合、すべてのサービスは、関係のないやボットによるトラフィックと見なすものはぞれぞれ異なるため、独自のルールに基づいて異なる数を表示します。

リソース:訪問回数
Kinstaのホスティングプランは、サイトへの月当たりの合計訪問回数に基づいています。当社の訪問回数のカウント方法の詳細をご参照ください。注:リソース画面の合計訪問回数は、MyKinstaダッシュボードのメイン画面に表示される合計とは異なる場合があります。これは、MyKinstaダッシュボードのメイン画面には現在の請求期間内の訪問回数が表示されるためです。
帯域幅使用状況
帯域幅使用状況レポートには、サイトが使用してきたデータの合計数が表示されます。Kinstaは、サイトへの訪問回数に基づいてプランの利用料金を請求しますが、帯域幅の使用状況はパフォーマンス課題のトラブルシューティングに役立ちます。グラフで特定の時点を強調表示すると、合計が期間平均よりも低いなど、比較データが表示されます。

リソース:帯域幅の使用状況
すべてのお客様にCDNのご利用を強くお勧めします。CDNを使用すると、スピードが改善するだけでなく、サイトの帯域幅やリソースの使用量も減ります。CDN帯域幅は非常に安いか、無料です。WordPress CDNの利点と、それを使用する理由については、こちらの詳細な記事をご覧ください。WordPressサイトでKinsta CDNを有効にする手順についてはまた、こちらをご覧ください。
リクエストのバイト別のトップリスト
バイトは、データ伝送システムのシリアル化されたデータストリーム内のバイナリビットのシーケンスです。WordPressサイトの場合、MB、GB、およびTBで測定されます。サイトで転送されるバイトの合計量は帯域幅です。リクエストのバイト別のトップリストレポートでは、サイト上の帯域幅を最も使用しているリクエストを正確に特定できます。

リソース:リクエストのバイト別のトップリスト
リクエストのカウント別のトップリスト
リクエストのカウント別のトップリストレポートには、サーバー上のサイトの最もリクエストされたリソースが表示されます。このレポートと上記のレポートを組み合わせて使用すると、帯域幅の使用箇所を把握するのに役立ちます。多くの場合、パターンを簡単に見つけることができます。

リソース:リクエストのカウント別のトップリスト
2. CDN使用状況
CDN使用状況画面では、CDN帯域幅、リファイルのリクエスト別のトップリスト、ファイルのバイト別のトップリスト、ファイル拡張子のバイト別のトップリスト、およびHTTP応答コードが表示を表示できます。サイトのあるメディアファイルがすべての帯域幅を消費している場合、数秒で分かります。

分析画面のCDN使用状況
CDN使用状況画面の下部に、ファイル拡張子のバイト別のトップリストが表示されます。これにより、サイトのどのタイプのメディアが帯域幅使用の大部分を占めているかを簡単に確認できます。
また、応答コードの内訳もあります。「200」という「OK」の意味のステータスコードは好ましいでしょう。「300」、「400」、「500」のステータスコードの詳細については、こちらのHTTPステータスコードに関する記事をご覧ください。

CDNのファイル拡張子のバイト別のトップリストと応答コード
3. デバイス
デバイス画面では、サイトのトラフィックに関するさまざまなデータを表示できます。
ハンドヘルド対デスクトップ
ハンドヘルド対デスクトップレポートでは、ユーザーがサイトにアクセスしているデバイスを確認できます。以下のこの例では、デスクトップトラフィックが86%以上であることがわかります。

デバイス:ハンドヘルド対デスクトップ
4. パフォーマンスの監視
パフォーマンス監視画面では、PHP+MySQLの平均応答時間、PHPのスループット、AJAXの使用状況、平均アップストリーム時間のトップリストと最大アップストリーム時間のトップリストが確認できます。
PHP+MySQLの平均応答時間
ご自分のWordPressウェブサイトにアクセスする度に、ページのデータをコンパイルしクエリするにはPHPとMySQLが使用されます。このグラフは、キャッシュされていない動的リクエストに対するPHPエンジンとMySQLエンジンの平均応答時間を示しています。この応答時間を理解することにより速度低下の処理ができる場合があります。疑わしい急増が発生している場合は、是非サポートチケットを開いてください。

パフォーマンス:PHP+MySQLの平均応答時間
PHPのスループット
スループットとは、アプリケーションが処理できる1秒あたりのトランザクション数を指します。このレポートでは、WordPressウェブサイトのPHPのスループットが表示されます。つまり、PHPアセットがリクエストされた回数が記載されます。

パフォーマンス:PHPのスループット
PHPワーカーのご利用限度
PHPワーカーのご利用限度のチャートは、PHPエンジンが割り当てられたPHPワーカーの利用限度を超えたとエラーログで記録された回数を示します。Kinstaの各ホスティングプランには、一定数のPHPワーカーが含まれています。本チャートでは、ウェブサイトが継続的に利用限度に近い状態であるか、またPHPエンジンのより新しいバージョンへの切り替えで利用限度が変わるか確認できます。

PHPワーカーのご利用限度
AJAX使用状況
AJAXは、ポストバック及びページ全体の更新を必要とせずに、サーバー及びデータベースとの通信を実施するクライアントサイドのスクリプトです。WordPressなら、スピードテストでよく見かける内容です。AJAX関連のよくある異常は、プラグインのせいでAJAXの使用が急上昇することとバックエンドのCPUの異常です。Admin-AJAXの使用状況の診断については、当社の詳細な記事をご参照ください。

Admin-AJAXの使用状況
MyKinstaの分析機能のAJAX使用状況レポートは、特定の期間中に特定のAJAXの使用の急増が発生しているかどうかを確認できるため、特に便利です。このグラフはadmin-ajaxリクエストの数を示しています。次に上記で述べた投稿の工夫を実施し、発生原因を絞り込むことができます。

パフォーマンス:AJAX使用状況
平均アップストリーム時間のトップリスト
アップストリーム時間とは、NGINX(およびアップストリームサーバー)がリクエストを処理して応答を送信するまでにかかる時間のことです。この時間はミリ秒単位の分解能で秒単位で測定されます。NGINXの測定についてはこちらをご参照ください。このリストには、リクエストのPHP+MySQLの平均応答時間のトップリスト(合計)が表示されます。

パフォーマンス:平均アップストリーム時間のトップリスト
最大アップストリーム時間のトップリスト
このリストは、PHPとMySQLの最大の応答時間のトップリストを示しています。これらの数値は1回限りのピークである可能性がある為、このリストを「平均アップストリーム時間のトップリスト」と比較することをお勧めします。

パフォーマンス:最大アップストリーム時間のトップリスト
5. 応答
「応答」画面では、応答コードの内訳、応答の分析データ、500エラーの内訳、400エラーの内訳、リダイレクトの内訳、404エラーのトップリストなどを確認できます。
応答コードの内訳
レスポンスコードの内訳レポートには、リクエストされたリソースに配信されたHTTPステータスコードの一覧が表示されます。応答コードはHTTPステータスコードとも呼ばれ、悪いものとは限りません。たとえば、HTTPステータスコード「200」は、「OK」という意味です。これは、ウェブページやリソースが期待どおりに動作するときに返されるコードです。以下でさらに詳しく説明します。

応答:応答コードの内訳
応答の分析データ
応答の分析データレポートには、発生したリダイレクトの総数、エラー、成功率、およびエラー率が表示されます。どのWordPressウェブサイトにも、低くてもエラー率があります。これは完全に正常です。

応答:応答の分析データ
500エラーの内訳
500エラーの内訳レポートには、サーバーで発生した500エラーの総数が表示されます。 各500エラーの意味は次の通りです。
- 500: 「サーバーにエラーが発生したため、リクエストを完了できませんでした。」 一般的なコードで、単に「サーバ内部エラー」を意味します。サーバ内部にエラーが発生したせいで、リクエストしたリソースが配信されていません。データベースへの接続が切断されたときにWordPressによって生成されるコードです。当社のデータベース接続を確立する際のエラー処理方法についての詳細な記事も是非ご確認ください。
- 502:「不正なゲートウェイ」 このエラーコードは、あるサーバーが別のサーバーから無効な応答を受け取ったときに表示されます。クエリ及びリクエストには時間がかかり過ぎるため、サーバーによりキャンセルされる場合があります。当社の502不正なゲートウェイエラーの発生原因についての記事をご参照ください。
- 503: 「サーバーは現在このリクエストを処理することができません。 」リクエストは現在完了できません。このコードは、サーバーが過負荷で、追加のリクエストが処理できない時に返されます。WordPressの「サーバーは現在このリクエストを処理することができません。 」エラーの処理については、当社のステップバイステップガイドをご覧ください。

応答:500エラーコードの内訳
400エラーの内訳
400エラーの内訳レポートには、サーバーで発生した400エラーの総数が表示されます。各500エラーの意味は次の通りです。
- 401::「認証が必要である」。これは、ターゲットリソースに有効な認証資格情報がない場合にサーバーから返されます。
- 403:「禁止されている」。このコードは、ユーザーがアクセス権限のないものにアクセスしようとすると返されます。たとえば、ログインせずにa href=”https://kinsta.com/blog/password-protect-wordpress-site/”>パスワードで保護されたコンテンツを表示しようとすると、403エラーが発生します。
- 404:「未検出。」最もよく発生するエラーメッセージ。要求されたリソースが存在せず、サーバーがそれが存在したかどうかを判断できません。
- 405: 「許可されていないメソッド。」 これは、ホスティングサーバー(オリジンサーバー)が受信したメソッドをサポートしているが、ターゲットリソースはサポートしていない場合に生成されます。
- 429: 「要求が多すぎる」 。ユーザーが短時間に大量の要求を送信送してきたときにサーバーにより生成されます(レート制限)。このメッセージは、ボットやスクリプトがデフォルトのWordPressログイン画面を総当たり攻撃しようとすること場合に発生することが多いです。この場合には、WordPressのログインURLを変更することをお勧めします。
- 499:「クライアントがリクエストを切断。」これは、NGINXがまだリクエストを処理中にクライアントがそのリクエストを閉じているときに、NGINXによって返されます。

応答:400エラーの内訳
リダイレクトの内訳
300エラーの内訳レポートには、サーバーで発生した300エラーの総数が表示されます。応答コード「200」などのような悪い意味のないエラーもあります。300エラーは、単にコンテンツを別の場所に移動したことを意味します。たとえば、301リダイレクトは、URLやサイトの変更を反映する、非常に重要なSEO対策です。各300エラーの意味は次の通りです。
- 301:「恒久的に移動した。」 このコードは、ウェブページまたはリソースが別のリソースに完全に置き換えられたときに返されます。永続的なURLリダイレクトに使用されます。
- 302: 「発見した。」 このコードは、要求されたリソースが予期された場所ではないが、検出できたときに使用されます。一時的なURLリダイレクトに使用されます。
- 304: 「未更新。」 このコードは、ブラウザキャッシュに保存されているリソースが更新されていないことをブラウザに通知します。以前にダウンロードしたリソースを再利用して、ウェブページの配信を高速化するために使用されます。

応答:リダイレクトの内訳
404エラーのトップリスト
404エラーのトップリストは、訪問者またはボットが最もよくアクセスしようとしている、もう存在しないリソースをトラブルシューティングするのに役立ちます。

404エラーのトップリスト
404エラーが大量に発生している場合は、サイトを調べて、SEOとユーザビリティを考慮して修正することをお勧めします。Google Search Console では、「クロールエラー」として検索すると、同じ内容が出てきます。

404エラーを修正する
6. キャッシュの分析
キャッシュ分析画面では、キャッシュコンポーネントスタック、キャッシュバイパスの合計数、およびキャッシュコンポーネントグラフがあります。
キャッシュコンポーネントスタック
Kinstaのサーバーからファイルまたはリソースがリクエストされると、HTTPレスポンスヘッダー(X-Kinsta-Cache)が送信され、キャッシュの状況が通知されます。

HTTP応答ヘッダー
キャッシュ応答ヘッダーには4種類があります。
- HIT:HITは、リソースがKinstaのサーバー上のキャッシュから配信されていることを意味します。何も問題のないときに返される応答ヘッダーです。
- BYPASS:リソースのキャッシュを妨げているルールまたはコンフリクトがある可能性があります。 WordPressサイトのある内容がキャッシュされないようにルールを設定します。たとえば、/wp-login.phpページはそのようなルールです。ダッシュボードにログインするときに適切な機能を確保するためのものです。
- MISS:内容がまだキャッシュになかったが、今回のリクエストで登録されます。そのファイルへの2番目のリクエストは、「HIT」になります。WordPressサイトのキャッシュをクリアするたびに、アクセスしたユーザーがそのキャッシュを再構築することにご注意ください。このため、キャッシュ全体を定期的にクリアしないことをお勧めします。Kinsta MUプラグインは、サイトのある部分のみを自動的にクリアするため、残りの部分はキャッシュされたままになります。キャッシュのKinstaにおける処理についてはこちらをご参照ください。
- EXPIRED:キャッシュされた内容が期限切れになったため、ホスティングサーバーから新しい内容が取得されました。
キャッシュコンポーネントスタックのレポートでは、サイトが生成した応答ヘッダーの総数も確認できます。

キャッシュ:キャッシュコンポーネントスタック
キャッシュコンポーネントグラフ
キャッシュコンポーネントグラフは、キャッシュリクエストの総数を表示するもう一つの手段です。

キャッシュ:キャッシュコンポーネントグラフ
キャッシュバイパスのトップリスト
キャッシュバイパスのトップリストでは、Kinstaのサーバーのキャッシュをバイパスしているリクエスを確認できます。これを見て、本当にキャッシュをバイパスするべきものであることかどうかを確認した方が良いでしょう。以下のこの例では、OneSignalプッシュ通知プラグインに、キャッシュをバイパスするファイルがあることがわかります。プラグインの動作に必要な設定であるため、これはOKです。また、/wp-cron.phpがキャッシュされていないこともわかります。これもキャッシュされるべきではありません。

キャッシュ:キャッシュバイパスのトップリスト
7. 位置情報&IP
「位置情報」画面では、サイトにアクセスした国のトップリスト、地域のトップリスト、市のトップリスト、またはIPアドレスのトップリストを確認できます。
国のトップリスト
国のトップリストは、WordPressサイトを配置する場所を決定するために非常に役立ちます。訪問者のIPアドレスをベースにして、リクエストを国別に分析した内容です。 以下のこの例では、トラフィックの大部分が米国からのものであるため、サイトはおそらく米国のサーバーに配置するべきでしょう。サイトを戦略的に配置することが重要である理由が明らかになる当社のネットワークレイテンシについての詳細記事を是非お読みください。Kinstaでは、世界中に15カ所のGoogle Cloud Platformのロケーションをご利用いただけます。

位置情報&IP:国のトップリスト
市のトップリスト
訪問者のIPアドレスをベースにして、リクエストを市別に分析した内容です。

位置情報&IP:市のトップリスト
クライエントIPのトップリスト
クライエントIPのトップリストは、サイトが突然大量の帯域幅を生成したり、ボットに攻撃されたりした場合に非常に役立ちます。リクエストごとにリストされたIPアドレスのトップリストを示しています。

位置情報&IP:クライエントIPのトップリスト
このデータをどのように使用できるのでしょうか?私たちは最近、小希望なeコマースのWordPressサイトでケーススタディを行いました。サイトへの過去7日間のクライエントIPのトップ10を分析したところ、不審なアクティビティがすぐに見つかりました。かなりの数があったし、その大部分には10,000以上のリクエストがありました。おそらくDDoSまたは総当たり攻撃でした。データは、Googleから取得できます。IPのトップリストの項目のいくつかを検索したところ、IPのほとんどがプロキシアドレスであることが簡単にわかりました。つまり、誰かがトラフィックを隠そうとしていたでしょう。

プロキシIP
その他の注意事項
分析に関する完全なログデータは30日間保持されます。最初にKinstaに移行した後は、ダッシュボードと分析データを30日間よりも頻繁に確認することをお勧めします。原因不明のトラフィックの急増などの疑わしいデータがあれば、当社のチームにお知らせください。ログのさらなる調査や原因特定のお手伝いいたします。
上記のデータを使用して、Kinstaがコンテンツを訪問者に配信している方法について理解を深めることができることを願っています。
このチュートリアルが面白かった方なら、当社のサポートも大好きでしょう。Kinstaのすべてのホスティングプランには、ベテランのWordPress開発者とエンジニアによる24時間365日のサポートが付いています。フォーチュン500のお客様をサポートしているチームとチャットしませんか。当社のプランをご確認ください。