Insights Dashboard API は非推奨ですが、 NerdGraph (当社のGraphQL API)を使用して、ダッシュボードの作成や設定を行うことができます。
古いInsights APIから移行していない場合は、このドキュメントを読み飛ばして、新しい Dashboards API にアクセスしてください。
なぜ新しいDashboards APIなのか?
データを照会したり、チャートやダッシュボードを作成したりするための Insights 製品は非推奨となり、その機能は New Relic One プラットフォームの中核部分に移行されました 。この移行と新機能の詳細については、 Insights to New Relic One migration guide をご覧ください。
Insights Dashboard APIは2021年7月に非推奨となります。それまでの間、Insights Dashboard APIを使用している場合は、NerdGraphの使用に切り替えてみてください。 (InsightsのクエリAPI は廃止されませんが、NerdGraphの方が好ましいです)NerdGraphを使い始める方法や、同等の操作方法については、このままお読みください。
NerdGraphを使い始める
NerdGraph は、New Relic データの NRQL クエリを作成するための推奨 API です。NerdGraph を使用するすべてのユーザーは、独自の ユーザーキー が必要です。
NerdGraphをご利用の際は、当社の ダッシュボード は、監視対象のアプリやホスト、サービスなど、他のエンティティからのデータを報告する エンティティ であることをご理解ください。
NerdGraphやGraphQLに慣れていない方は、まず、 Introduction to NerdGraph や、 Create dashboards with NerdGraph をお読みください。
NerdGraph API エクスプローラーは、 api.newrelic.com/graphiql にあります。
操作対応表
以下の表は、すべてのInsights API操作を新しいdashboards APIにマッピングしたものです。
Insights APIオペレーション | NerdGraph APIのクエリ/ミューテーション | メモ |
---|---|---|
リスト(GET) | エンティティサーチ() | フィルターにマッチしたダッシュボードのページングされたリストを表示します。 |
ショー(GET) | エンティティ() | エンティティ・ガイドを指定して、既存のダッシュボードを表示します。 |
作成 (POST) | dashboardCreate() | 新しいダッシュボードを作成します。 |
更新 (PUT) | ダッシュボードアップデート() | エンティティ・ガイドが与えられた既存のダッシュボードを更新します。 |
削除 (DELETE) | dashboardDelete() | エンティティguidを指定して既存のダッシュボードを削除します。 |
ダッシュボードプロパティのマッピングテーブル
新しいダッシュボードのGraphQLスキーマの全フィールドの詳細については、 NerdGraphのGraphiQL explorer をご覧ください。
以下の表は、Insights APIから新しいdashboards APIへのダッシュボードのプロパティのマッピングです。
Insights API ダッシュボードのプロパティ | NerdGraph APIのダッシュボード・プロパティ | メモ |
---|---|---|
id | guid | ダッシュボードが対象とするNew RelicエンティティのID |
createdAt | createdAt | |
更新日時 | 更新日時 | |
タイトル | name | |
編集可能 | パーミッション | 編集可能 と 視認性 が同じコンセプトで融合したもの |
可視性 | パーミッション | 編集可能 と 視認性 が同じコンセプトで融合したもの |
説明 | 説明 | |
メタデータ | - | GraphQL APIのバージョニングは不要 |
アイコン | - | New Relic Oneには翻訳されていません。 |
グリッド列数 | - | New Relic Oneのデフォルトの12列ダッシュボード |
フィルター | - | New Relic Oneにはまだ翻訳されていません。 |
ウィジェットプロパティマッピングテーブル
新しいダッシュボードのGraphQLスキーマの全フィールドの詳細については、 NerdGraphのGraphiQL explorer をご覧ください。
以下の表は、Insights APIのウィジェットプロパティを新しいdashboards APIにマッピングしたものです。
Insights API ダッシュボードのプロパティ | NerdGraph APIのダッシュボード・プロパティ | メモ |
---|---|---|
id | id | |
account_id | - | ウィジェット設定が必要な方のために翻訳しました。 |
ビジュアライゼーション | ビジュアライゼーション | |
presentation.title | タイトル | |
presentation.drilldown_dashboard_id | リンクされたエンティティー | ファセットリンク 機能のダッシュボードにウィジェットをリンクするために使用されます。 |
プレゼンテーション.ノート | - | New Relic Oneにはまだ翻訳されていません。 |
レイアウト | レイアウト | |
データ | コンフィグレーション+ローコンフィグレーション |
ヒント
あらゆる種類のウィジェットの作成方法については、 ダッシュボードウィジェットの作成 を参照してください。
ビジュアライゼーションマッピングテーブル
異なったタイプのクエリで取得された同じウィジェットをグループ化することで、ウィジェットの表示を簡素化しました。例えば、ラインウィジェットは、クエリの種類に関係なく同じようにプロットされます。Insightsでは、古い line_chart
vs. comparison_line_chart
となっています。
Insights APIによる可視化 | NerdGraph APIによる可視化 |
---|---|
uniques_list | viz.table |
シングルイベント | viz.table |
facet_table | viz.table |
イベントテーブル | viz.table |
faceted_area_chart | viz.area |
predefined_metric_chart.application_breakdown | viz.area |
predefined_metric_chart.scape_breakdown | viz.area |
predefined_metric_chart.browser_breakdown | viz.area |
predefined_metric_chart.background_breakdown | viz.area |
事前定義されたメトリックチャート.solr_breakdown | viz.area |
predefined_metric_chart.gc_runs_breakdown | viz.area |
facet_bar_chart | VIZ.BAR |
ビルボード | viz.billboard |
attribute_sheet | viz.billboard |
ビルボード・コンパニオン | viz.billboard |
ゲージ | viz.bullet |
イベント・フィード | VIZ.EVENT-FEED |
ファンネル | VIZ.FUNNEL |
ヒートマップ | VIZ.ヒートマップ |
ヒストグラム | VIZ.ヒストグラム |
インベントリは | インフラ.インベントリー |
raw_json | viz.json |
LINE_CHART | VIZ.LINE |
比較線図 | VIZ.LINE |
faceted_line_chart | VIZ.LINE |
metric_line_chart | VIZ.LINE |
マークダウン | viz.markdown |
facet_pie_chart | VIZ.PIE |
例:RESTエンドポイントからGraphQLクエリ/ミューテーションまで
NerdGraphがGraphQL形式のAPIであることの主な利点のひとつは、APIのデータを完全かつ理解しやすい形で説明してくれることである。 NerdGraph API explorer を使えば、GraphQL のタイプやフィールドを簡単な説明とともに発見することができる。
Insights API から新しい New Relic One ダッシュボード API への移行を促進したいと考えています。以下に、従来のRESTエンドポイントが新しいGraphQLクエリやミューテーションにどのようにマッピングされるかを示す例をご紹介します。
リスト(GET) -> entitySearch クエリ
New Relic One のダッシュボードは、エンティティの概念を取り入れています。New Relic のエンティティエコシステムにおけるもうひとつのエンティティとなっています。
NerdGraph GraphiQL explorer を使って試してみてください。
Show (GET) -> エンティティクエリ
ダッシュボードに関する情報を得るために必要なのは、そのダッシュボードに固有のエンティティ識別子またはエンティティ・ガイドを提供することだけです。そして、興味のあるダッシュボードのプロパティを GraphQL クエリに追加することで、すべてのダッシュボードのプロパティにアクセスすることができます。
NerdGraph GraphiQL explorer を使って試してみてください。
Create (POST) -> dashboardCreate mutation.
システムの状態を変異させる操作が、GraphQL APIにおけるミューテーションです。 dashboardCreate
のミューテーションに必要な入力を行うことで、ダッシュボードを作成することができます。GraphQL APIは説明不要を目指していますが、Nerdgraphのドキュメントでは、 How to build dashboard widgets についてのドキュメントのように、フィールドに関する情報を提供しています。
NerdGraph GraphiQL explorer を使って試してみてください。
更新 (PUT) -> dashboardUpdate 変異点
dashboardUpdate
mutationでは、既存のダッシュボードのguidと新しい構成を提供することで、既存のダッシュボードを更新することができます。ダッシュボードを作成するのと同様に、このミューテーションはわかりやすくしようとしていますが、 How to build dashboard widgets に関するドキュメントを参照してください。
NerdGraph GraphiQL explorer を使って試してみてください。
削除(DELETE) -> dashboardDelete mutation
dashboardDelete
変異により、既存のダッシュボードをそのエンティティguidを提供して削除することができます。
NerdGraph GraphiQL explorer を使って試してみてください。