Uptime Robotを使って、サイトが落ちていないか監視して、SlackとDiscordに通知する。

概要

Uptime Robotを使ってみる。

Slackの場合

デフォルトで用意してあるので、設定は非常に簡単、

  1. サインアップすると、確認のemailがくる
  2. URLをクリックする
  3. ログインする
  4. 設定画面があるので、必要なことを記録して保存
  5. slackの設定が必要なら My Settings から、通知先を追加
  6. さっき作った設定に、slackを追加する

普通のwebhookも使えるようだ

Discordの場合

Discordの場合は、Webhookを使う

Webhookを作るのは非常に簡単で、チャンネルのところにある、

  1. 設定のボタンを押す
  2. Webhook とかいてあるところを押す
  3. Webhook 作成 をクリック
  4. でてきた、Webhook URL を設定に追加。
  5. パラメータについては、、、

パラメータの詳細については以下のページ。日本語のページはないようなので、ヘルプからくるときは、 エラーページで、言語を English にすると、表示されてくる。 日本語がないと、英語にいくということはないので、注意する

https://support.discordapp.com/hc/en-us/articles/228383668

Uptime Robot will add the below querystring to the end of the requests sent:

monitorID=*monitorID*&monitorURL=*monitorURL*&monitorFriendlyName=*monitorFriendlyName*&alertType=*alertType*&alertTypeFriendlyName=*alertTypeFriendlyName*&alertDetails=*alertDetails*&monitorAlertContacts=*monitorAlertContacts*
So, make sure that the URL added ends with

? (if it doesn't have a querystring) or
& (if it already has a querystring)
to make it a valid request.

Or, you can create a totally custom web-hook URL by using the variables.

とりあえずメッセージが届く確認をしたときの設定はこんな感じ。 以下の3つを設定した。

Friendly Name には、わかりやすい名前を入れて

URL to Notify には、URLは、DiscordのWebhook URLをいれて、最後に、? をつける。

POST Value (JSON Format) には、以下のような感じ

{"content": "@channel *monitorFriendlyName*  *monitorURL* is *alertTypeFriendlyName* . *alertDetail* .." }

参考

Written on November 18, 2017