多くの人は、最初に「サイトは動いているか?」と考えます。それは正しい最初のチェックですが、サイトは「動いて」いても、壊れていたり、期限が切れていたり、遅かったり、感染していたりすることがあります。ここでは、実用的なチェックの組み合わせと、その実行頻度を紹介します。
1. 可用性
基本のチェックは、ページにリクエストを送り、応答することを確認します。次の2点を押さえると、はるかに役立つものになります。
- ステータスだけでなく、内容を確認する。 ページが「200 OK」を返しながら、エラーメッセージや空のテンプレートを表示していることがあります。ページに期待する単語が表示されるかを確認すれば、これを検知できます。
- 通知の前に障害を確認する。 1回のリクエストの失敗は、ネットワークの瞬断かもしれません。数秒後にもう一度確認し、2回続けて失敗したときだけ通知すれば、誤報の大半はなくなります。
企業のサイトなら、1分ごとが適切な間隔です。個人サイトなら、通常は5分ごとで十分です。
2. 応答時間
応答に8秒かかるサイトは、多くの訪問者にとって事実上ダウンしています。応答時間を記録して傾向を見てください。平均がじわじわと増えている場合、データベースやホスティングの問題が、障害になる何日も前に警告されていることがよくあります。
3. トップページだけでなく、最も重要なページ
トップページはキャッシュされていて動き続けるのに、ログイン、決済、問い合わせフォームが壊れていることがあります。収益に直結するページや、お客様が頼りにするページにもチェックを追加してください。
4. SSL証明書
証明書の期限が切れると、訪問者には警告ページが表示されます。有効期限、証明書がホスト名と一致していること、チェーンが完全であることを確認します。チェックは1日1回で十分で、期限の数週間前から警告を始めます。
5. ドメイン登録
ドメインが失効すると、サイト、メール、ときには名前そのものまで、すべてを失います。有効期限とレジストリ上のステータスを監視してください。このチェックは安価で、必要になることはめったにありませんが、役立つ一度の機会に、すべてを救ってくれます。
6. セキュリティ
改ざんは、最初は静かに進行します。有用なチェックは次のようなものを探します。
- 既知のマルウェアやフィッシングのリストへの登録。
- 埋め込まれたコンテンツ:不明なスクリプト、隠しリンク、スパムキーワード。
- 訪問者と検索エンジンに異なるページを見せるクローキング。
- WordPressの場合:古い本体、テーマ、プラグイン、既知の脆弱なプラグイン、公開されているファイル。
これらを毎日実行するのが、良い出発点です。機密データを扱うサイトでは、さらに頻繁に実行したいかもしれません。
7. 確実に届くアラート
誰にも見られないチェックは役に立ちません。アラートは少なくとも2つのチャネル、たとえばメールとTelegramまたはSlackに送ります。眠れるように通知を控える時間帯を設定しつつ、重大な問題は通すようにし、長い障害の間にアラートが殺到しないようにしましょう。
おすすめの初期設定
| チェック | 頻度 |
|---|---|
| キーワード付きのトップページの可用性 | 1〜5分ごと |
| ログインまたは決済ページ | 5分ごと |
| SSL証明書 | 毎日 |
| ドメインの有効期限 | 毎日 |
| マルウェアとコンテンツのスキャン | 毎日 |
ServerMonitorは、サイトを追加すると、稼働状況、SSL、ドメイン、ブロックリスト、コンテンツの整合性など、これらのほとんどを自動で設定します。WordPressが検出された場合は、WordPress向けのチェックも追加されます。通知先はご自身で選べ、無料プランでは3サイトまで利用できます。