Skip to content

カスタム・ダッシュボードの構築

概要とメリット

Instanaには3つのカスタムダッシュボードオプションが用意されています。

  1. Instana UI上に作成するパターン
  2. Grafana上に作成するパターン
  3. その他ツール上に作成するパターン

1. Instana UI上に作成するパターンについては、Instana上で確認できるデータのみを使ってダッシュボードを作成することが可能です。 2. Grafana上に作成するパターンおよび3. その他ツール上に作成するパターンについては、InstanaのデータとInstana以外のツールで収集したデータを組み合わせたダッシュボードを作成することが可能です。

本ページでは主に1. Instana UI上に作成するパターンについて解説します。

カスタムダッシュボードの機能を使うことで得られるメリットは以下となります。

  • 欲しい指標やグラフを組み合わせて見たい情報だけをまとめた画面が作成できます。
  • 作成したダッシュボードを他のメンバーに共有することが可能です。
  • コード(JSON)で管理が可能なため既存の設定を別のカスタムダッシュボードや別環境のInstanaに簡単に流用することが可能です。

公式ドキュメントのリンク

前提条件

カスタム・ダッシュボードを作成や公開するには以下の権限が必要です。(ドキュメント)

ロール 対象者
すべてのユーザーおよび API トークンとのカスタム・ダッシュボードの公開共有 非公開のカスタムダッシュボードを表示したり、ダッシュボードの編集権限を付与できる管理者向けの権限。
すべてのパブリック・カスタム・ダッシュボードの管理 共有されたカスタムダッシュボードを編集・削除可能にする権限。参照のみとする場合は付与しない。

設定例

Instanaのカスタムダッシュボードは、大きく分けて3つ(Instana UI / REST API / Terraform)の方法で作成・管理可能です。 Instana UIで作成するダッシュボードをベースに、APIおよびTerraformでの管理方法を紹介します。

  1. Instana UI

  2. REST API

    1. Instana UIで行った操作をAPIで行う方法について解説します。

    • 事前準備 カスタム・ダッシュボードの管理をAPIで実施する場合、すべてのユーザーおよび API トークンとのカスタム・ダッシュボードの公開共有およびすべてのパブリック・カスタム・ダッシュボードの管理権限を持つAPIトークンが必要です。 ※APIトークンを作成する際は、セキュリティの観点から有効期限は短期間, 最低限の権限だけを付与 とすることをオススメします。

      設定 > セキュリティ&アクセス > APIトークン新規APIトークンをクリックします。

      新規APIトークンの作成画面で、トークンの表示名有効期限を指定して、すべてのユーザーおよび API トークンとのカスタム・ダッシュボードの公開共有すべてのパブリック・カスタム・ダッシュボードの管理の権限をONにして保存をクリックします。 保存するとAPIトークンが表示されるので、コピーしておきます。

    • 作成 利用するエンドポイント : POST /api/custom-dashboard

      サンプルJSONをPCにダウンロードして、以下のcURLコマンドでダッシュボードを作成するリクエストを送信します。

      1
      2
      3
      4
      5
      6
      curl --request POST \
        --url https://{自身の利用するInstanaのドメイン(e.g. unit-tenant.instana.io)}/api/custom-dashboard \
        --header 'accept: application/json' \
        --header 'authorization: apiToken {事前準備で作成したAPIトークンを指定}' \
        --header 'content-type: application/json' \
        --data @./sample.json
      
      リクエストが正常終了するとSampleという名前のダッシュボードがInstana上に作成されます。

    • 編集 利用するエンドポイント : PUT /api/custom-dashboard/{customDashboardId}

      例として、作成で使用したサンプルJSONを編集してダッシュボードの名前を変更します。
      まず、APIで既存のダッシュボードを編集する場合は対象となるダッシュボードのダッシュボードIDを把握する必要があります。 ブラウザで確認する場合は、ダッシュボードを開いた際のアドレスバーから取得が可能です。 具体的にはhttps://hoge-hoge.instana.io/#/customDashboards/view;dashboardId=ci__paQZTxObGkTXlFQl-gと表示されている中のci__paQZTxObGkTXlFQl-gの部分となります。 APIで確認する場合はGET /api/custom-dashboardエンドポイントを利用します。

      1
      2
      3
      4
      curl --request GET \
        --url 'https://{自身の利用するInstanaのドメイン(e.g. unit-tenant.instana.io)}/api/custom-dashboard?query={ダッシュボード名などを指定}` \
        --header 'accept: application/json' \
        --header 'authorization: apiToken {事前準備で作成したAPIトークンを指定}'
      

      JSONの11行目を修正して保存します。

      {
          "rbacTags": [],
          "accessRules": [
              {
              "accessType": "READ_WRITE",
              "relationType": "USER",
              "relatedId": "63d894bbd328ec0001795091"
              }
          ],
          "id": "jm4W12IFRWuNFwN_rNcNGQ",
      -    "title": "Sample",
      +    "title": "Sample Update",
      }
      
    • 削除 利用するエンドポイント : DELETE /api/custom-dashboard/{customDashboardId}

サンプルダッシュボード

GitHubリポジトリに画面イメージとJSONファイルを格納しています。