heroku

2016年度版Heroku複数アカウント使い分け

以前はddollar/heroku-accountsで管理する方法だったのですが、最近ではherokuのpluginを利用する方法に変更になりました。 herokuのリポジトリで管理されているheroku-accountsを利用します。 GitHub - heroku/heroku-accounts: Helps use multiple account…

Cedar-14への移行方法

2015/11/4をもってHerokuのCedar-10 stackが終了したので、Cedar-14に移行しましょう。 現段階でCedar-10を利用している人は、push時に移行して下さいというメッセージが出てdeploy出来ない状態となっています。1. 以下のコマンドで簡単にCedar-14 stackを利…

Herokuでdeploy時のdowntimeをゼロにする

preboot機能を有効にします。 heroku features:enable preboot無効にするにはdisable heroku features:disable preboot注意事項として、Documentに If you make database schema changes that require downtime, we recommend disabling the preboot feature…

RailsでTreasure Dataにデータを送る

Gemfile gem 'td'config/treasure_data.yml # # This file configures the Treasure Data, Hadoop-based cloud data warehouse. # For more information, visit http://www.treasure-data.com/. # production: # Treasure Data API Key # TREASURE_DATA_API_…

Heroku Dyno SizeとUnicorn worker数の目安

Rubyアプリでのunicorn worker数の目安は次の通り。Dynoサイズ -> Unicorn worker数 1X -> 2-3 2X -> 4-6 PX -> 20-30New Relic等で1 worker当たりの仕様メモリ量を割り出しておき、環境変数WEB_CONCURRENCYを変更すればR14エラーが頻発しないようになります…

Rubyでメモリ管理

Oinkを利用します。config/application.rb config.logger = Hodel3000CompliantLogger.new(STDOUT)config/initializers/oink.rb Rails.application.middleware.use(Oink::Middleware, logger: Hodel3000CompliantLogger.new(STDOUT))herokuの場合ログにprepe…

HerokuでCPUやMemoryなどのメトリクスを取得する

簡単2コマンド。 heroku labs:enable log-runtime-metrics heroku restartあとは、 heroku logsでログを確認すると source=web.1 dyno=heroku.2808254.d97d0ea7-cf3d-411b-b453-d2943a50b456 sample#load_avg_1m=2.46 sample#load_avg_5m=1.06 sample#load_a…

Herokuでのlogの表示方法

すべてのログを出力する heroku logsリアルタイムで表示する heroku logs --tail特定のDynoのみ表示する heroku logs --ps router heroku logs --ps web heroku logs --ps web.1特定のソースのみ表示する heroku logs --source app heroku logs --source her…

HerokuでNew Relicを利用する

1. addonの追加と環境変数の追加 $ heroku addons:add newrelic:stark $ heroku config:set NEW_RELIC_APP_NAME="アプリ名"2. Gemの追加 gem 'newrelic_rpm'追加後、bundle installします。3. 設定ファイルの追加 テンプレートが用意されているので、それを…

herokuでrailsアプリをdeployするまで

rails project作成。 rails new myapp --database=postgresqldirectoryを移動。 cd myappwelcome controllerを生成。 rails generate controller welcomeapp/views/welcome/index.html.erb を編集。 <h2>Hello World</h2> <p> The time is now: <%= Time.now %> </p>config/r…

herokuでRedisGreenを利用する

RailsでRedisGreenを利用する方法。1. heroku addonを追加します。 $ heroku addons:add redisgreen2. Gemfileとconfig/initializers/redis.rbを編集します。Gemfile gem 'redis' gem 'hiredis'config/initializers/redis.rb if Rails.env.test? || Rails.en…

travisci privateでheroku deployまで

今回はrailsプロジェクトでテスト実行からdeployまでやってみましょう。1. まずテストが上手く動くか確認。postgreを利用するので以下のようにdatabase.yml.travisと.travis.ymlを用意します。.travis.yml language: ruby rvm: - 2.1.3 before_script: - psq…

久々にherokuにpushしようとしたら詰まった

heroku create後にpushすると以下のエラー。 $ git push heroku master Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. 結果 結論から言…