AWSで簡単にURL死活監視を作成する方法

目的

【エンジニア募集中】フルリモート可◎、売上/従業員数9年連続UP、平均残業8時間、有給取得率90%、年休124日以上 etc.  詳細はこちらから>

簡単にURLの死活監視を行う方法として
CloudWatch SyntheticsのCanaryを利用する方法があるので
ここに記載する

前提

・監視対象のURLが存在すること

CloudWatch Synthetics Canaryを作成する

①AWSコンソールで「Synthetics Canary」のページに移動し、「Canaryを作成」をクリックする

②Canaryの作成画面で必要な項目を入力する

設計図を使用する:チェック
ハートビートのモニタリング:チェック

Canary ビルダーは死活監視を行うlambda関数のことで
ここで指定した名前でlambdaが作成される

名前:test-http-check
エンドポイント:http://ec2-xxx-xxx-xxx-xxx.ap-northeast-1.compute.amazonaws.com/

 ⇒エンドポイントは死活監視を行うURLを指定する
  スクリーンショットを撮る:チェックを外す
 ⇒チェックすると対象URLのスクリーンショットを
  S3に保存することができる

死活監視を行うlambda関数の中身を修正できる
今回は特に修正はしない

ランタイムバージョン:syn-nodejs-puppeteer-3.5
⇒nodejsの他にpythonも選択することができる

実行間隔を5分に設定する。
料金については、1回実行するごとに0.0012 USDかかる。1ヶ月(730時間)5分毎に実行した場合、約10USD(1,400円)くらいかかる計算だ。

※この料金はCanaryのみで別途S3、CloudWatchアラームの料金も発生するので注意が必要

継続的に実行:チェック
Canary を実行:間隔 5分
作成後すぐに開始:チェック

データ保存はデフォルトのまま31日とする

死活監視の実行結果の保存先デフォルトまま作成する

新しいロールを作成:チェック

エラーになった場合、通知してほしいのでCloudWatch アラームを設定する

メトリクス:SuccessPercent
しきい値:より低い
しきい値:90%
期間:5分

新しいトピックの作成:チェック
新しいトピックを作成:Synthetics-test-http-check-topic
通知を受け取る E メールエンドポイント:smallit-taro@smallit.co.jp

以降はデフォルトのまま「Canaryを作成」をクリックする

成功すると画面に成功!と表示される

以降は5分毎にチェックし、死活監視でエラーの場合はCloudWatchがSNSトピックに通知してくれる

注意

Canaryを削除しても自動で作成されたS3、lambda関数は自動で削除されないため

個別に削除する必要がある

以上

【エンジニア募集中】フルリモートも◎(リモート率85.7%)、平均残業8時間、年休124日以上、有給取得率90% etc. 詳細はこちらから>

Smallitのサービス