こんにちは、okutani(@okutani_t)です。本記事では、パフォーマンス監視をおこなうことができる「New Relic」の登録方法と、Ruby on Railsへの導入方法までを解説しています。
New Relicを使うことで、かんたんにWeb上から、システムのパフォーマンス監視をリッチにおこなうことができます。
Ruby on Railsであれば、New Relic用のgemを導入するだけで使えるし、無料プランもあるので、とてもお手軽にはじめることができますね。
今回、動作検証したRubyのバージョンは2.3.0、Ruby on Railsのバージョンはv5.0.1です。
それでは、New Relicの登録方法から初期設定までをみていきましょう。
スポンサーリンク
New Relicアカウントの登録
まずはNew Relicのアカウント登録からおこないます。
以下の公式サイトへアクセスし、「Sign Up for New Relic」を選択。
LINKApplication Performance Management & Monitoring | New Relic
ちなみに、AWSユーザーはデータの保存期間が1週間の「STANDARDプラン」を無料で使えるようです。もしあなたがAWSユーザーなら、以下から登録するのが吉です。なお、今回は一般ユーザーで登録して進めています。
LINKAWS Monitoring with New Relic | AWS Monitoring | New Relic | New Relic Partner
アカウント情報をぽちぽち入れていきます。「パスワードに記号を含めないといけない」「電話番号入力必須」あたり注意してください。
登録が完了しました。
初期設定をおこなう
ずらっとNew Relicのサービスが表示されましたが、アプリのパフォーマンス監視は通常「New Relic APM(Application Performance monitoring)」を使います。
APMをクリックして初期設定を進めましょう。
今回はRuby on Railsから利用するので、左上のRubyアイコンをクリック。
導入手順がずらっと表示されます。
まずはライセンスキーを取得します。「Reveal license key」を選択。
ライセンスキーが表示されるのでメモしておくと良いですね(ちなみに、のちほどダウンロードするnewrelic.ymlにも記載されてます)。
次に、「Download the newrelic.yml file」を選択して、newrelic.ymlをダウンロードします。
上記以外の項目は手順が書いてあるだけなので、一読しておけばOKです。
Ruby on Railsで使ってみる
Ruby on Railsで作成したWebアプリをNew Relicでみられるように設定していきます。
Gemfileに「newrelic_rpm」を追加。
gem 'newrelic_rpm'
bundlerでインストールします。
$ bundle install
次に、先ほどダウンロードしたnewrelic.ymlを「config」ディレクトリに配置し、以下の項目を変更(app_nameは3箇所あります)。
app_name: My Application
↓
app_name: プロジェクト名
表示確認
5分ほど待つと、New Relicにデータが送信され、APMのダッシュボードに以下のように表示されました。
今回はlocalhost上で動作確認をしたので、プロジェクト名(Development)となっていました。クリックしてさらに確認してみます。
データが送信され、New Relicでパフォーマンス監視ができているのが確認できました。
Developer Modeの利用方法
rewrelic.yml内の「developer_mode」がtrueになっていると、アプリ上でNew RelicのDeveloper Modeを利用することができます。
デフォルトではdeveloper_mode: trueになっているので確認してみましょう。
アプリをlocalhostで数ページ遷移後、「localhost:3000/newrelic」へアクセスしてみます。
上図のように、遷移した情報が表示されました。「Detail」「SQL」などをクリックすると、それぞれのパフォーマンス情報をみることができます。
ぜひいろいろと試してみてください。
まとめ
本記事では、New Relicの登録方法から、Ruby on Railsで利用する方法までを紹介しました。
今後は、New Relicで監視するべきデータの種類や、グラフの見方などを学んでいけばOKですね。
Developer Modeを使うと、手軽にどこがボトルネックになっているかをかんたんに確認できて便利です。
ちなみに、Git管理するさいに「config/newrelic.yml」は直でライセンスキーが記述されてるので、そこだけ別ファイルで持つかgitignoreしておくと良いですね。
New Relicをはじめて使う方の参考になれば幸いです。