はじめに
New Relicを利用してくれてありがとうございます。New Relicはとても多くの情報をデフォルト機能で確認することができますが、New Relicを使えば使うほど、『あのアプリって、あの時どんな挙動だったんだろ?』『利用者って、どんなページ遷移でこの処理をしたんだろ?』などなど色々なことを調査したくなりますよね。そんな時に、収集したデータを自由に深掘りして解析するために使うのがNRQL(New Relic Query Language)になります。SQLに非常に近い言語で、New Relicのポータル上で用いたり、APIでNRQLを流し込むことで、必要なデータを取得することが可能です。
じゃあ、どうやって学習すればいいんだ?
『なんかNRQL推ししてくるし、便利そうなのはなんかわかった。じゃあ、それどうやって情報をゲットすればいいの?』って、なりますよね?わかります。自分もそうだったから。過去を振り返って、キャッチアップをどうやればスムーズに行くかを簡単にまとめてみました。多分、以下のステップを踏んでもらうと最新の情報をキャッチアップできるはず。
とにかくNRQL Lessonsを試してみたい方は以下をスキップして、こちらにジャンプして下さい。
-
初期学習
そもそも、NRQLってどこからどうやって使うの?という、いわゆるハローワールド的な最初の一歩って一番大変ですよね。ここは是非New Relicが提供している定期セミナー(New Relic University)を受講するのが良いかと思います。
特にお勧めなのは、実践方法を学ぶのセクションから開催を確認できるNRU302です。New Relicポータル上でのNRQLを利用するツールの紹介や具体的なNRQL内容、さらには得たデータの可視化などを体系的に学習することができるので、一気に実用のための方法を学べます。New Relic Universityの日程について
New Relic Univeristyは四半期で1サイクルが実施されています。日程が確定次第、上記のページに日程が表示されますが、もしご都合が合わなかったとしても次の四半期にて受講が可能です。 -
理解
さてさて、NRQLを実行する環境の利用方法や、NRQLの具体的な中身がわかってきたら、もう少しNRQLの中身を詳しく見ていきたいなと思う様になる(なった)のではないでしょうか?NRU302を受講してもらうとイメージがつくかと思うのですが、NRQLがカバーしている機能は想定よりも多く、細かいことまで把握したいけど、ちょっと大変そうという気持ちになりますよね。(あれ?自分だけでしょうか??)
そんな時に使ってもらいたいのが、今回の本題のNRQL Lessonsというツールです。(こちらがその紹介ブログです。)
導入の手順は後ほど触れさせてもらいますが、NRQL Lessonsを導入してもらうと、導入したアカウントで保持しているデータを用いて、具体的なNRQLでクエリをかけた結果どの様な結果を得ることができるかを確認することができるようになっています。NRQLの構文と結果を一度に確認できるので、NRQLで実現したい結果のイメージを持っている場合には、いわゆる逆引き的な利用方法を探すことができるため非常に便利で学びがあるアプローチになります。
-
活用
ここまで到達できているのであれば、あなたはかなりのNRQL上級者です。ここまで来ると、『じゃあ、New Relicのエージェントが提供する機能ではどんなデータが集められているんだろう?詳細を把握して、データ解析で使っていきたい』と考えられているのではないでしょうか?
大丈夫です。そんなご要望に応えるための情報をNew Relicは提供しています。Data Dictionaryというページがあり、具体的な収集データ内容を確認することができます。
ここまでくれば、NRQLの役割やどういったデータをNRQL経由で取得することができるのか、また実際のデータ内容の確認方法など実践的な知識が増えてきている状況です。これらをうまく活用する方法としてこちらのブログを参考にしてもらうと良いかなと思います。
-
更新
ここまできたら、後は新しく出てくる機能や関数を定期的に学習してもらえれば問題なしです。むしろ周りに教えてあげる立場です。New Relicでは毎月新しい機能がリリースされた情報を紹介したり解説する情報を発信しています。例えば、2024年1月分はこちらのブログから確認することができます。この様にどんどん情報を発信していますので、定期的にNew Relicのブログに遊びにきてくれると良いかと思います。
NRQL Lessonsの導入方法を改めて
-
New Relicポータルにログインする
-
左にあるAppsメニューをクリックし、右の表示部分下部にあるGo to Apps and Visualizationsボタンをクリックする
-
次に検索が面が表示されるので、NRQL Lessonsとテキストを入力し、NRQL Lessonsという表示のタイルをクリックする
-
クリック後、NRQL Lessonsを説明するUIがスライドされて表示されるので、Add this appボタンをクリックする
-
ご利用の環境下で利用可能なアカウント一覧が表示されるので、利用したいアカウント一覧から対象アカウントをチェックし、右上のUpdate 1 accountボタンをクリックする
-
上記のステップ2でアクセスしたAppsに再度アクセスすると、新たにNRQL Lessonsタイルが追加されているので、NRQL Lessonsタイルをクリックする
-
NRQL Lessonsの表記が日本語に更新されるので、後はコンテンツを楽しむ!! Enjoy!!
ちょっとだけNRQL Lessonsの中身を紹介
実際のデータをみてもらうことで多くの気づきを得ることができるのですが、その前に簡単にいくつかの画面をご紹介します。
例えば、最初にみんなが目にするであろう初めてのクエリのページでは、みなさんのアプリケーションがどの様なリクエストを受け付けているのかを確認することができます。
(初めてみた時、『なに?アプリのアクセスログを見に行かなくても良いの?あれ?楽ちんじゃない?』と思ったのは自分だけでしょうか?)
次に、じゃあ、実際のアプリケーションの応答時間はどうなっていて、どういうNRQLを実行すればいいのかなんかも一目瞭然。もうログファイルからエンジニアが頑張って解析する必要はないです。(やったコード触る時間が増えた!!)
この他にも、チャートを書く時にどの様なNRQLを実施すればいいのかといった分かりやすい例や特定のデータをひとまとめにして計測する方法などが実データを元に説明が行われています。是非是非試してみて下さい。
こんな章立てになっているので、見ごたえば抜群で、色々な疑問が解決すること間違いなしです。
今回お見せしているデータはサンプルアプリに短期間だけリクエストを集中させた結果なので、あまり派手なデータはないのですが、ステージング環境やテスト環境でも数日データを溜めてみることで、NRQL Lessonsを通せば何かしらの傾向や特徴がわかってくるかもしれませんね。
さいごに
NRQL Lessonsは、どうでしたか?改めて自分が利用している環境のデータを確認してみて、新しい発見があった人もいるのではないでしょうか?
New Relicは元々提供している機能だけでもとてもさまざまな情報を参照したり活用したりすることができます。NRQLを使ってもらうと、さらにさらに自由度が増して、みなさんがやりたい様にデータを活用することができるお手伝いするものです。そのためにはNRQLの基礎を学んでいただく必要はあるのですが、New Relicはさまざまな情報やツールをどんどん提供しているので、それらの情報やツールを活用して、最小限の労力でキャッチアップしてもらえれば幸いです。
ほんとのほんとの最後に..
個人てもNew Relic触ってみたな..という方もいるかもしれないので、下のリンクから無料ユーザを作成してみてください。
New Relic無料サインアップ
無料サインアップの手順説明のブログはこちら
サインアップ後は、こちらの公式ドキュメントをみながら進めてみてください。
New Relic株式会社のQiita Organizationでは、
新機能を含む活用方法を公開していますので、ぜひフォローをお願いします。