unhurried

コンピュータ関連ネタがほとんど、ときどき趣味も…

Heroku Free DynoのSleepを防止する

Herokuでは月に1000時間の稼働稼働枠がもらえますが、無料プランでは30分アプリにアクセスがないとアプリがSleep状態になってしまいます。New Relicアドオンを使って定期的にリクエストを送信することでアプリがSleep状態になることを防げますので、設定手順をご紹介します。

New Relicアドオンのセットアップ

# Herokuにログインする
$ heroku login
# New Relicアドオンを追加する(wayneは無料プランの名称)
$ heroku addons:add newrelic:wayne -a {app name}
# New Relic設定画面をブラウザで開く
$ heroku addons:open newrelic -a {app name}

New Relicの設定

最初に表示されるプロダクト選択画面で「SYNTHETICS」を選択する。

モニターの作成画面で以下を入力する。

(1) Choose your monitor type:Ping

(2) Enter the details

  • First, name your monitor:(適当な名前を付ける)
  • Enter a URL:(HerokuアプリのURLを入力する。アプリにリクエストが送信されればエラーが返却されても問題ないので https://{app name}.herokuapp.com/ などでよい。)

(3) Select monitoring locations

  • どのロケーションを選択しても大差はないと思うので適当に選択すればよい。

(4) Set the schedule:15min

  • 30分より短く設定する必要があるため。