ちょっと前に立ち上げたHerokuアプリがあったのですが(あじあ姓名うらないではない)、PHPのバージョンが5.4.7でした。PHPは最近では5.6.2が入るようですが、このアプリを立ち上げた時点では5.4.7だったようで、特に何も言わなければPHPのバージョンは維持されるようです。
で、herokuアプリはほうっておくと1時間で止まってしまうので、Avairability Monitorを入れるといいよ、という話を聞いたのでNew Relicで監視するようにしようと思いました。
herokuにはnewrelicのプラグインがあるのでカンチンプイだと思い、
$ heroku addons:add newrelic stark
ってやり、herokuアプリ用のnewrelic.iniファイルをダウンロードしてきてアプリのルートフォルダにコピーし(修正などは不要)、いったん
$ git push heroku master
をしてから、
$ heroku config:set NEW_RELIC_CONFIG_FILE=newrelic.ini
とします。後はアプリを再起動すればOK!
$ heroku restart
herokuにログインするとアプリ画面に「New Relic」というプラグインが出来ているので、これをクリック。
するとNew Relicにつながり、初期設定画面になるので「PHP」を選んでから画面下部のボタンを押すと、接続完了!
のはずなのだけど、全然接続が完了しない。
どうも、New RelicプラグインがPHP 5.5以上じゃないと動かないようです。5.4で動くやつもあるんだと思うけど、今動かしているアプリも別に5.4じゃないと困るわけではないので、PHPのバージョンを5.4.7→5.6.2に上げることにしました。
なので、composer.jsonに
としてから、
$ git push heroku master
としたのですが、ウンともスンとも言ってくれない。
どうも、キャッシュされているバージョンのPHPが優先されている模様。
仕方ないのでいろいろ探してくると、以下のcomposer.jsonを発見しました。
これで
$ git push heroku master
すると、めでたくPHPバージョンが5.6.2にアップしてくれました。
その後、New Relicの接続を試みるとうまくいきました。
なんでうまくいったのかいまだ良くわかっていなかったりしますが、herokuはなかなか遊べますね。