外形監視(Synthetics) がいけいかんし(しんせてぃっくす)
外形監視Synthetic Monitoring死活監視アップタイムエンドツーエンドSLI
外形監視(Synthetics)について教えて
簡単に言うとこんな感じ!
「ロボットが定期的に実際にWebサイトにアクセスして、ちゃんと動いているか確認する」監視のことだよ。インフラ内部のメトリクスを見るのではなく、ユーザー目線で「外から見てどう動いているか」をチェックするんだ。
外形監視(Synthetics)とは
外形監視(Synthetic Monitoring / Synthetics)とは、実際のユーザーの操作を模擬したテストスクリプト(ボット)を定期実行して、サービスの可用性・レスポンスタイム・機能動作を継続的に検証する監視手法です。「外形」という名の通り、システムの外部から見た振る舞いを監視します。
内部からのメトリクス監視(CPU・メモリ・ログなど)が「エンジンの状態を計器で見る」ならば、外形監視は「実際に運転してみて異常がないか確認する」イメージです。インフラは正常でもアプリのバグでユーザーがアクセスできない状態が発生することがありますが、外形監視なら即座に検出できます。
外形監視には大きく2種類あります。①HTTPチェック(Availability Monitoring):URLに定期的にリクエストを送り、ステータスコード・応答時間・コンテンツを確認する。②ブラウザテスト(Browser/Journey Monitoring):Seleniumや Playwrightを使って実際のブラウザ操作(ログイン→商品購入→確認メール受信)を再現する。
外形監視の種類と特徴
| 種類 | 内容 | チェック例 |
|---|---|---|
| HTTPチェック | 指定URLのステータス・レスポンス時間確認 | https://example.com が200を返すか |
| SSL証明書監視 | 証明書の有効期限・失効を確認 | 30日前にアラート |
| DNSチェック | DNS名前解決が正常に行えるか | 解決できないとサービス停止 |
| TCPポートチェック | サーバーのポートが開いているか | DB 5432ポート疎通確認 |
| ブラウザジャーニー | ユーザー操作シナリオを自動実行 | ログイン→カート→決済の一連の流れ |
| APIチェック | APIエンドポイントのレスポンス内容確認 | 期待したJSONが返ってくるか |
監視拠点(PoP: Point of Presence)
外形監視ツールは世界各地のPoP(監視拠点)から定期実行します。「東京は問題ないが、北米のユーザーにはエラーが出ている」といった地域依存の問題も検出できます。
歴史と背景
- 2000年代初頭:Nagios・Pingdomによる基本的な死活監視(Ping/HTTP確認)が普及
- 2010年代:New Relic Synthetics・Datadog Synthetics がブラウザテストを商用化
- 2016年:AWS CloudWatch Synthetics(Canary) がリリース
- 2020年代:Playwright・Cypress によるブラウザ自動化が普及し、外形監視の精度が向上
外形監視の仕組み
主要ツール
| ツール | 特徴 |
|---|---|
| Datadog Synthetics | HTTPテスト・ブラウザテスト・APIテスト全対応 |
| New Relic Synthetics | Scripted Browser(Selenium)対応 |
| Checkly | Playwright/Puppeteer対応、開発者向け |
| Pingdom | シンプルで低コスト、死活監視に特化 |
| AWS CloudWatch Canary | AWS環境に統合、Nodeスクリプトで記述 |
関連用語
- SLI・SLO・エラーバジェット — 外形監視の結果をSLI計測に活用
- アラート設計 — 外形監視の結果でアラートを発報
- ダッシュボード — 外形監視の可用性をダッシュボードで可視化
- DNS切り替え — 切り替え後に外形監視で動作確認