[New Relic] NRQLを使ってみる


概要

New RelicのNRQLを使ってみたので、メモ

NRQLとは

New Relic上のデータを参照するための、SQL-likeなクエリ言語。

特定のアカウントのEC2インスタンスCPU使用率
SELECT average(host.memoryUsedPercent) FROM Metric WHERE aws.accountId = '443553437457' FACET tags.Name SINCE 1 week AGO TIMESERIES

New Relic上に集約された全てのテレメトリデータ (メトリクスやイベントデータやログなど) はNew Relic Database (NRDB) に格納される。

参考:
https://blog.newrelic.co.jp/translation/nrdb-design-principles/
https://blog.newrelic.co.jp/story/metrics-events-logs-and-traces/

そのNRDBに格納された情報は、New Relic Query Language(NRQL)でクエリすることで参照できる。
かなり汎用的であり、なんでも取ってこれる。NRQLはNew Relicを扱う上ではほぼ必須。

以前まで「Insights」というサービスの機能だったが、New Relic Oneに統合された。ただ、Insights自体はまだ残っており、API keyの発行などで利用する場面がある。

話によると、「ぬるくる」って読むらしい

注意

  • SELECT文のみ
    • 挿入などWrite操作はできない
  • JOIN句は使えない

使い方

画面右上の「Query your data」から実行する。

「Data explorer」からはNRQL文を入力しなくともGUIで選択してクエリが可能。NRQL文も表示される。

https://docs.newrelic.co.jp/docs/query-your-data/explore-query-data/data-explorer/introduction-data-explorer

「Query builder」からは、直接NRQL文を入力してクエリができる。

詳細

詳しくは、以下のドキュメント参照。

https://docs.newrelic.co.jp/docs/query-your-data/nrql-new-relic-query-language/get-started/introduction-nrql-new-relics-query-language