は(Apple Inc.Google Inc. を含む)70万以上のユーザーが利用する、スウェーデンの Web サイト死活監視サービス(停止していないことをチェックする仕組み)です。

このサービスを利用すると、あなたの管理する Web サイトが停止した時にメールや SMS などで知らせてくれるようになります。

また、レポート機能や表示速度の分析などの付帯する各種機能も豊富に取り揃えられており、使い方も簡単です。費用が心配ですか?・・・大丈夫。もちろん無料のプランも用意されていますよ!(ただし、基本的に死活監視以外の機能は有料プランでのみの提供となります)

Contents

概要

Pingdom を使えば、死活監視を簡単に取り入れることが出来ます。監視対象ページはシステムに与える負荷を考慮し、なるべく「監視専用のページ」を用意して行いましょう。

また、Web ページの読み込み速度を計測したい場合は、死活監視でそれをカバーしようとするのではなく、リアルユーザーモニタリング(RUM)や Page Speed(表示速度)チェックのように高度な分析が可能なサービスを別途利用した方が良いでしょう。

※本記事では最初にトップページを対象とした監視をスタートし、基本的な動作や設定を学習した上で、最終的に「備考」欄で「監視専用ページ」を用意したり、ページの読み込み速度に関する考察を加えておりますので、是非最後までお読みください。



ユーザー登録

Pingdom のフリープランは通常のトップページからは申し込めないようになっています。まずは Website Monitoring ページを表示し、ユーザー登録を行いましょう。

Pingdom free monitoring top page
あなたのメールアドレスとパスワードを入力し [START MONITORING] (モニタリングを開始) ボタンをクリックしてください。

初期設定

モニタリングの初期設定を行うセットアップ・ウィザードが始まります。画面の指示に従って、各項目を埋めていきましょう。

looks_one 死活監視するサイトの URL を入力
Pingdom で死活監視する Web サイトの URL 設定
死活監視する Web サイトのトップページの URL を入力し *1 右下の緑色の [Monitor website]Web サイトをモニター)ボタンをクリックしてください。
  • 実際の監視対象ページの URL は、後ほど別途指定いたします。
looks_two アカウントの詳細を入力
Pingdom アカウントの詳細設定
あなたの名前 *1、国、タイムゾーン *2 を入力し、右下の緑色の [Continue](次に進む)ボタンをクリックください。
  • 名前は日本語でも登録できるかもしれませんが(未確認)、ラベルが英語表記なので、それに順じてローマ字で設定した方が無難でしょう。
  • 日本であれば「(GMT +9:00) Tokyo, Seoul, Osaka」を選択ください。
looks_3 監視対象ページの URL 設定
最後に、先ほど指定したページで読み込まれているファイルなどが、監視対象の候補として一覧表示されますので、実際に監視するページの URL を選択ください。
Pingdom で死活監視するページの URL 設定
とりあえず、このままの設定(トップページの URL が選択されている状態 *1)で右下の緑色の [Add monitoring](モニタリングを追加)ボタンをクリックして先に進めましょう *2
  • この画面は監視するサイトの URL として https://techlogue.com/ を入力した場合の表示例です。
  • 最終的には、システムに与える負荷を軽減するために、モニタリング専用ページを作ることをお奨めします。詳細は「監視専用ページの作成」をご参照ください。
looks_4 初期設定終了
セットアップ・ウィザードが終了すると、Pingdom にログオンし、死活監視がスタートします。
Pingdom への最初のログオン
なお、画面上部に青いラベルで「Twitter® でツイートすることで監視対象を追加できる」旨のキャンペーンが表示されている場合は、「無料プランで URL 追加ボーナスを入手する方法」の手順を実施いただくことで、もう一つの監視対象を無料で追加いただけます。

詳細設定

looks_one [Edit Check] 画面を起動
この段階で既にモニタリングは開始されておりますが、引き続き「監視間隔」などの詳細を調整していきます。
Pingdom の Edit Check 画面を起動
メニューから [Monitoring][Uptime] を選択し *1 監視対象のサイト名をクリックします。
  • 一連の作業を続けて実施している場合は(メニューを選択せずとも)既にこの画面が表示されていることでしょう。
looks_two 監視間隔と通知タイミングを変更
ポップアップ表示された [Edit Check](監視設定の編集)画面にて、「監視間隔」と「通知タイミング」を変更します。
Pingdom の Edit Check Required 画面
  1. [Check Interval](監視間隔)をデフォルトの「1分間隔」から「5分間隔(5 minutes)」に変更します。*1 *3
  2. [When down, alert after](停止検出時の通知タイミング)を「即時(Instantly)」に変更し、画面右下の [Modify check] ボタンをクリックして変更を確定してください。*2 *3
  • 監視間隔は1分, 5分, 15分, 30分, 60分の中から選択可能です。ここでは5分に変更しましたが、もちろんその他の間隔にしていただいても構いません。監視間隔を広く取るとそれだけ死活監視の意味は薄れますが、サーバーへの負荷を低減することが可能です。バランスを考慮して設定ください。
  • 停止検出時の通知タイミングは、サイト停止を検出した後、即時に通知を送るか、何回か続けて停止を検出するまで遅らせるかを指定する設定項目です。「回数」ではなく「分」で指定するためわかりづらいのですが、監視間隔の値に応じて設定可能な値(分の間隔)は自動的に制限されます。
  • いずれにしても、最終的にはモニタリング専用ページを作ることをお奨めします。そのため、ここでは「勉強・理解のため」と(軽い気持ちで)適当な値に設定いただいて構いません。詳細は「監視専用ページの作成」をご参照ください。

監視レポート

しばらくしてある程度の監視データが集まってきたら、監視レポート(グラフ)を見てみましょう。

looks_one 監視レポートを表示
Pingdom 監視レポートを表示
監視対象の [UPTIME](グラフ部分)をクリックください。
looks_two 監視レポートの内容を確認
[Uptime Reports](システムの稼働状況に関するレポート)の内容をご確認ください。
Pingdom Uptime Reports
  1. このアイコンをクリックするとレポート部の横幅が広くなります。
  2. レポートの期間を設定可能です。
  3. このフィルターを使用して、特定の環境(国)からの監視結果のみを表示することも可能です。
  4. 現在設定されている期間をもとに、その前後の期間(例えば前週や翌週など)を表示するためのボタンです。
  5. PDF 形式のレポートファイルをダウンロード可能です。
  6. 監視設定を変更するためのボタンです。
  7. レスポンスタイムのグラフです。フォーカスすると、ミリ秒単位でレスポンスにかかった時間が表示されます。*1
  8. 当該期間のダウンタイムとアップタイムの割合が表示されます。
  9. 上部のタブを切り替えることで、[Uptime changes](稼働状況の遷移をまとめた表)[Response time log](平均レスポンスタイムをまとめた表)[Test result log](各レポートの元となる監視データのリスト)をそれぞれご確認いただけます。
  • もしあなたが日本でサイトにアクセスしているなら、このレスポンスタイムは実際と比較して「かなり遅い」と感じるでしょう。無料プランではテストサーバーの場所を選べないため、国内でアクセスした場合と比較し、どうしても遅くなってしまうのです。詳細は「死活監視のレスポンスタイム」をご参照ください。

監視と通知の実例

ここでは死活監視がどのように行われているか、Web サーバーのアクセスログを確認してみます。また、実際にサーバーをダウンさせてみて、どのような通知が届くかもチェックしましょう。

looks_one Web サーバーのアクセスログから見る死活監視
以下のログは監視間隔を1分にした状態で Web サイトをメンテナンスモードに切り替えた際のものです。サイトの停止を検出すると(監視間隔の設定に因らず)数秒毎に監視が行われる「特殊なモード」に突入することがわかります。
looks_two サイト停止時に届くメール
Web サイトの停止時に以下の内容のメールが届きます(件名や本文は当ブログの場合の例です)。
[件名] DOWN alert: Techlogue (techlogue.com) is DOWN
[差出人] alert@pingdom.com
[本文]
PingdomAlert DOWN:
Techlogue (techlogue.com) is down since 06/01/2017 08:44:04AM.
looks_3 サイト復旧時に届くメール
[Edit Check] の設定で [Alert when back up] にチェックが入っていると(デフォルト)、サイトの復旧時に以下の内容のメールが届きます(件名や本文は当ブログの場合の例です)。
[件名] UP alert: Techlogue (techlogue.com) is UP
[差出人] alert@pingdom.com
[本文]
PingdomAlert UP:
Techlogue (techlogue.com) is UP again at 06/01/2017 08:46:04AM, after 2m of downtime.
looks_4 通知設定
通知はメールと SMS で受け取ることが出来ます。適宜、各ユーザーの設定ページにて通知先を変更ください。
Pingdom ユーザーごとの通知先設定
通知先を追加する場合は [Users and teams] ユーザーとチーム[Users] ユーザー から対象ユーザーを選択し、[+ Add another contact method] (コンタクト方法を追加) リンクをクリックください。通知はメールと SMS で受け取ることが出来ます。*1 *2
  • 以前は TwitterDM 経由で通知を受け取る機能が提供されていましたが、既に廃止されております。
  • なお、通知先の削除は下向きの [▼] ボタンから行えます。

プランの比較とその他の機能

Pingdom のプランは以下のようになっております(※有料プランの機能詳細は別途記事にまとめる予定です)。

プランの比較 *1
Free Starter Standard Advanced
価格(/月)*2 $13.95 $42.95 $82.95
最大ユーザー数 1 1 1 3
サポート オンライン シルバー*3 シルバー*3 シルバー*3
Uptime checks*4 (死活監視)対象数 1 10 50 80
アドバンス監視対象数*5 1 3 5
Page Speed (表示速度)チェック 30分間隔 30分間隔 30分間隔
Transaction checks*6 (シナリオテスト)間隔 10分間隔 10分間隔 10分間隔
Real User Monitoring*7 (リアルユーザー監視) 1サイト, 月間10万PV 5サイト, 月間50万PV 5サイト, 月間100万PV
サブドメイン監視 check_circle check_circle check_circle
テストロケーション選択 check_circle check_circle check_circle
SMS 通知可能数(/月) 50 250 350
  • その他にも Professional, Enterprise といった上位プランがいくつか用意されています。
  • 価格は年間契約時の割引が適用されたものです。また、現在(2017/06/07 時点)は 20% オフのキャンペーンが開催されているようです(あるいはネットで検索すると同様のクーポンコードも見つかるでしょう)。
  • オンライン(回答はメールで届きます)対応に加えてチャットでもサポートいただけるプランです。より上位のプランにはゴールドサポートとして電話での問い合わせが出来るものも用意されています。なお、いずれにしても「英語」での問い合わせになりますが、サポートの質は「かなり高い」もので、的確な回答を迅速にいただけることと思います。
  • 同一プラン内において、適宜リミットを追加できる Extra Services オプション(月額7.5ドルで5つの死活監視対象を追加可能)も用意されています。
  • Page SpeedTransaction checks を「アドバンス監視」と呼び、両者をあわせてこの制限内で監視可能です。また、同一プラン内において、適宜リミットを追加できる Extra Services オプション(月額35ドルで5つのアドバンス監視対象を追加可能)も用意されています。
  • フォーム入力などの一連のユーザーオペレーションを確認し、正しい結果が返ってくることをテストするものです。
  • リアルユーザーモニタリング(RUM)を使用すると、各ユーザーが実際にページの読み込みにどれだけの時間をかけたかを計測することが出来ます(専用の JavaScript コードをサイトに埋め込む必要があります)。

備考

監視専用ページの作成

Pingdom の死活監視では、JavaScript が実行されないことを除いては、ユーザーが普通にブラウザで閲覧するのと変わらないリクエストが監視都度行われます。そのため、大量の画像が存在するページを監視対象としてしまうと、それなりにサーバーに負荷を与えてしまうことにもつながります。

また、その結果得られたデータは、実際のユーザーアクセス状況に近いものではあるものの、リアルユーザーモニタリング(RUM)や Page Speed(表示速度)チェックのように高度な分析を施せるものではありません(「死活監視のレスポンスタイム」もあわせてご参照ください)。

そこで、サイトへの負荷を低減し、死活監視に最低限必要な「ポーリング」だけをこなせるような、モニタリングの専用ページを作る方法をご紹介いたします。

looks_one 監視用 HTML ファイルをダウンロード
uptime-check.htmlfile_download リンクを [右クリック] → [名前を付けてリンク先を保存](あるいは相当するメニュー)を選択し、以下の内容の HTML ファイルをダウンロードください(※単に最小サイズの HTML ファイルですので、同等の内容で自作いただいても構いません。空のファイルでも構いませんが、ここでは Valid な意味のある HTML 文書としました)。
looks_two 監視用 HTML ファイルをサーバーに格納
ダウンロードしたファイルをサーバーに格納ください。
監視用 HTML ファイルをサーバーにアップロード
ご使用のファイル転送ソフトを使って、監視用 HTML ファイルをサーバーの最上位階層にアップロードください。*1
  • 上画面は Windows® 7 環境の WinSCP の例です。
looks_3 新規監視対象を追加
新規に監視対象を追加します(追加する余裕がない場合は既存の設定を変更ください)。
Pingdom で新規の監視対象を追加する
[Uptime Checks](稼動監視)画面で [Add new](新規追加)を選択ください。
looks_4 新規監視対象の設定
新規監視対象の設定を行います。
Pingdom の新規監視対象の設定画面
  1. 新しい死活監視にふさわしい名称を付与してください。
  2. 今回は1分間隔のチェックとします(システムへの負荷が軽微のため)。
  3. 監視用ページの URL を入力ください。
  4. 今回は停止を検出した後、5分後にまだ稼動していない場合に通知メールを送信する設定としました。適宜お好きな値に変更し、画面右下の [Create check] ボタンをクリックして設定を保存してください。
looks_5 死活監視レポートの比較
新旧の設定で死活監視レポートを比較してみると、平均的なレスポンスタイムが2分程度短縮されたことがわかります。これはそれだけシステムへの負荷が低減されたことを意味します。*1
Pingdom で新旧の稼働状況監視レポートを比較
  1. 新しい監視専用ページの平均レスポンスタイムは 1,278ms *2 です。
  2. トップページの平均レスポンスタイムは 3,432ms *3 であり、2分程度短縮されたことがわかります。*1 *4
  • ここで、この新しい監視ページにはデータベースの処理が含まれていない(単なるWeb サーバーの死活監視である)ことにご注意ください。当ブログは WordPress® を使用していますが、その他のページと同じようにデータベースの処理を踏まえた監視専用ページを作成するには、もう一手間かける必要があります。本件につきましては、別途記事にまとめる予定です。
  • 2017/06/09 の24時間の平均値(1分間隔, ダウンタイムなし)
  • 2017/06/09 の24時間の平均値(5分間隔, ダウンタイムなし)
  • 監視専用ページの効果を確認した上で、従来のトップページの監視設定は削除してしまっても良いでしょう。

死活監視のレスポンスタイム

内容的にほとんど何もない監視専用ページの平均レスポンス時間が 1,278ms とは遅いと感じませんか?これは、Pingdom の無料プランでは「どこから監視を行うか」の設定が出来ず(ランダム)、ヨーロッパなど遠い場所から多くの監視を行ってしまったことによるものです。

有料プランでは監視ロケーションを設定できるため、そこで Asia Pacific に限定することで、より日本のブラウジング環境に近い結果が得られるようになるでしょう。

以下のグラフは有料プラン(Starter Plan)において、監視ロケーションを Asia Pacific *2 に限定した際の、監視専用ページの監視結果です。

Pingdom Asia Pacific からの稼働状況レポート
監視専用ページの平均レスポンスタイムが 712ms まで短縮されました。*1 *2
  • 2017/06/09 の24時間の平均値(1分間隔, ダウンタイムなし)
  • なお、[Monitoring][Probe servers] の監視サーバー一覧を見る限り、PingdomAsia Pacific 環境は、日本, 香港, シンガポール, ソウル, オーストラリアに存在する各サーバーから構成されていると推測されます。そのため、日本単独の測定値(国内において自身のブラウザで閲覧した結果)と比較すると、まだ遅く感じられる結果となっています。ページの表示速度に関してはリアルユーザーモニタリング(RUM)の採用を検討した方が良いでしょう。本件につきましては、別途記事をまとめる予定です。



コメント

※本記事へのご指摘や各種コメントは にお寄せください。その際、ツイートに #ID3099 を含めるか、本記事へのリンクを含めるようお願いいたします(この上の「共有」欄にある TWITTER ボタン」をご利用いただくと自動で入力されます)。