• ログイン無料アカウント

本書は、お客様のご参考のために原文の英語版を機械翻訳したものです。

英語版と齟齬がある場合、英語版の定めが優先するものとします。より詳しい情報については、本リンクをご参照ください。

問題を作成する

ダッシュボードAPIの移行:Insights APIからNerdGraphへ

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のダッシュボード・プロパティメモ
idguidダッシュボードが対象とするNew RelicエンティティのID
createdAtcreatedAt
updatedAtupdatedAt
タイトルname
編集可能パーミッションeditablevisibilityは同じ概念でマージされました
可視性パーミッションeditablevisibilityは同じ概念でマージされました
説明説明
メタデータ-GraphQL APIのバージョニングは不要
アイコン-New Relic Oneには翻訳されていません。
グリッド列数-New Relic Oneのデフォルトの12列ダッシュボード
フィルター-New Relic Oneにはまだ翻訳されていません。

ウィジェットプロパティマッピングテーブル

新しいダッシュボードのGraphQLスキーマの全フィールドの詳細については、 NerdGraphのGraphiQL explorer をご覧ください。

以下の表は、Insights APIのウィジェットプロパティを新しいdashboards APIにマッピングしたものです。

Insights API ダッシュボードのプロパティNerdGraph APIのダッシュボード・プロパティメモ
idid
account_id-ウィジェット設定が必要な方のために翻訳しました。
ビジュアライゼーションビジュアライゼーション
presentation.titleタイトル
presentation.drilldown_dashboard_idリンクされたエンティティーファセットリンク 機能のダッシュボードにウィジェットをリンクするために使用されます。
プレゼンテーション.ノート-New Relic Oneにはまだ翻訳されていません。
レイアウトレイアウト
データコンフィグレーション+ローコンフィグレーション

ヒント

あらゆる種類のウィジェットの作成方法については、 ダッシュボードウィジェットの作成 を参照してください。

ビジュアライゼーションマッピングテーブル

実際には同じであるが、異なるタイプのクエリを通じて取得されたウィジェットをグループ化することにより、ウィジェットの視覚化を簡素化しました。たとえば、ラインウィジェットは、クエリのタイプに関係なく同じ方法でプロットされます。つまり、Insightsの古いline_chartcomparison_line_chartです。

Insights APIによる可視化NerdGraph APIによる可視化
uniques_listviz.table
シングルイベントviz.table
facet_tableviz.table
イベントテーブルviz.table
faceted_area_chartviz.area
predefined_metric_chart.application_breakdownviz.area
predefined_metric_chart.scape_breakdownviz.area
predefined_metric_chart.browser_breakdownviz.area
predefined_metric_chart.background_breakdownviz.area
事前定義されたメトリックチャート.solr_breakdownviz.area
predefined_metric_chart.gc_runs_breakdownviz.area
facet_bar_chartVIZ.BAR
ビルボードviz.billboard
attribute_sheetviz.billboard
ビルボード・コンパニオンviz.billboard
ゲージviz.bullet
イベント・フィードVIZ.EVENT-FEED
ファンネルVIZ.FUNNEL
ヒートマップVIZ.ヒートマップ
ヒストグラムVIZ.ヒストグラム
インベントリはインフラ.インベントリー
raw_jsonviz.json
LINE_CHARTVIZ.LINE
比較線図VIZ.LINE
faceted_line_chartVIZ.LINE
metric_line_chartVIZ.LINE
マークダウンviz.markdown
facet_pie_chartVIZ.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.

システムの状態を変更する操作は、GraphQLAPIの変更です。 dashboardCreateミューテーションに必要な入力を提供することにより、ダッシュボードを作成できます。 GraphQL APIは自明であることを目的としていますが、Nerdgraphのドキュメントは、ダッシュボードウィジェットの作成方法に関するドキュメントなど、フィールドに関する情報を提供するのに役立ちます。

NerdGraph GraphiQL explorer を使って試してみてください。

更新 (PUT) -> dashboardUpdate 変異点

dashboardUpdateミューテーションを使用すると、既存のダッシュボードGUIDと新しい構成を提供することにより、既存のダッシュボードを更新できます。ダッシュボードを作成するのと同様に、変更は自明であるように試みますが、ダッシュボードウィジェットの作成方法に関するドキュメントを調べることができます。

NerdGraph GraphiQL explorer を使って試してみてください。

削除(DELETE) -> dashboardDelete mutation

dashboardDeleteミューテーションでは、エンティティGUIDを提供することにより、既存のダッシュボードを削除できます。

NerdGraph GraphiQL explorer を使って試してみてください。

Copyright © 2022 New Relic Inc.