なんかメモ

いろいろメモ

New Relicでherokuのアイドリング回避

New RelicのAvailability Monitoring機能でherokuのアイドリングを回避できるみたいなのでやってみた

  1. requirements.txtの編集

    requirements.txtにnewrelicを追加する
    New Relicのpython agentはTornado 4.xにまだ対応してないため、Tornadoを使う場合は3.xに変更しておく

  2. addonの追加

    $heroku addons:add newrelic:stark

  3. 環境変数の追加

    $heroku config:add NEW_RELIC_LICENSE_KEY=license_key
    $heroku config:add NEW_RELIC_APP_NAME='tornado app'
    new relicのアカウントで発行したLicense keyを設定

  4. 確認

    $heroku run newrelic-admin validate-config - stdout
    アカウントがない場合でも既にLicense keyは設定されていて、このコマンドでアカウントを作成してくれる

  5. Procfileの編集(Tornado)

    web: newrelic-admin run-program python main.py のような感じに編集

  6. herokuへデプロイ

    git add .
    git commit -m 'Add New Relic addon'
    git push heroku master

  7. Availability Monitoring機能の設定

    New Relic MonitoringページのSETTINGS->Availability Monitoringにアクセス
    URL to monitorにアプリのURLを設定

参考

FastladderをHerokuで動かしてNewRelicからcrawlerを定期的に起動させる - Qiita

Python agent and Heroku | New Relic Documentation

Python Release Notes | New Relic Documentation