コンテンツにスキップ

トポロジーデータ構造の説明

フィールド説明

パラメータ 必須 説明
column_names list 任意 数値に対応するカラム名の集合。外部関数のデータソースの場合、この値はseriesデータに基づいて自動的に設定されます。
column_names[#] str 任意
series list 必須 データグループ。長さはデータグループの数を示します(トポロジーではデータグループは1つです)。
series[#] dict 任意 1つのデータグループの集合
series[#].tags dict 任意 データに関連する属性(データの関連属性を表示するために使用され、テーブルではこれを列データとして表示し、エイリアスはキー値のマッピングとなります)。
series[#].columns list 必須 データソースフィールドキーのリスト。固定で['time', 'data']となります。
series[#].values list 必須 二次元配列。配列の各項目は1つのデータを表します。ここではデータは1つだけです。
series[#].values[#] list 任意 [タイムスタンプ, データ値]で構成されます。長さはseries[#].columnsと一致する必要があります。
series[#].values[#][0] str 任意 カラム'time'に対応する値。null も可。
series[#].values[#][1] str 任意 カラム'data'に対応する値。その値はシリアル化されたオブジェクトであり、ServiceMapResourceMapタイプをサポートします。

ServiceMap サービス関係図

トポロジーは円形のノード形式で表示されます。ノード名は一意の識別子として機能し、ノード情報とノード間の接続関係を表示するために使用されます。

{
  "services": [
    {
      "data": {
        "__size": 10,
        "__fill": 10,
        "fieldA": "1.0",
        "fieldB": "test"
      },
      "name": "demo_web",
      "type": "web"
    },
    {
      "data": {
        "__size": 10,
        "__fill": 10,
        "fieldA": "1.0",
        "fieldB": "test"
      },
      "name": "demo_framework",
      "type": "framework"
    }
  ],
  "maps": [
    {
      "source": "demo_web",
      "target": "demo_framework"
    }
  ]
}

フィールド説明

パラメータ 必須 説明
services list 必須 ノード詳細のリスト
services[#] dict 任意 ノードの詳細
services[#].name string 必須 ノード名。ノードの下部に表示されます。
services[#].type string 必須 ノードタイプ。ノード中央のアイコン表示に使用されます(サポートされるタイプ:'web', 'custom', 'cache', 'db', 'app', 'front', 'aws_lambda')。範囲外の場合はデフォルトで'custom'になります。
services[#].data dict 任意 ノードの属性
services[#].data.__size number 任意 円のサイズフィールドの値。範囲はなく、設定されたサイズに従って自動的に調整されて表示されます。
services[#].data.__fill number 必須 塗りつぶし色フィールドの値。この値の範囲は、設定されたグラデーションカラースキームの最大値と最小値の間です。
services[#].data.fieldA string/number 必須 ノードのホバー表示コンテンツ。'__size'、'__fill'フィールド以外は、すべてカスタムフィールドとして表示されます。
maps list 必須 ノード接続関係のリスト
maps[#] dict 任意 サービス接続関係(方向:source->target)
maps[#].source string 必須 開始ノード
maps[#].target string 必須 対象ノード

ResourceMap リソース関係図

トポロジーはカードノード形式で表示されます。接続関係は、中央ノードが1つだけ存在する必要があります。serviceResource はカードノード詳細のリストです(service:resource は一意である必要があり、カードノードの一意の識別子として機能します)。maps は中央ノードと他のノード間の接続関係であり、中央ノードが指すノードは中央ノードの右側に、中央ノードを指すノードは中央ノードの左側に配置されます。

{
  "serviceResource": [
    {
      "data": {
        "__fill": 10,
        "avg_per_second_title": "AAA",
        "avg_per_second": 1,
        "p99_title": "AAA",
        "p99": 1,
        "error_rate_title": "AAA",
        "error_rate": 1
      },
      "service": "demo_web",
      "resource": "demo_web_resource",
      "source_type": "web"
    },
    {
      "data": {
        "__fill": 10,
        "avg_per_second_title": "AAA",
        "avg_per_second": 1,
        "p99_title": "AAA",
        "p99": 1,
        "error_rate_title": "AAA",
        "error_rate": 1
      },
      "service": "demo_framework",
      "resource": "demo_framework_resource",
      "source_type": "framework"
    }
  ],
  "maps": [
    {
      "source": "demo_web",
      "source_resource": "demo_web_resource",
      "target": "demo_framework",
      "target_resource": "demo_framework_resource"
    }
  ]
}

フィールド説明

パラメータ 必須 説明
serviceResource list 必須 カードノード詳細のリスト
serviceResource[#] dict 任意 カードの詳細
serviceResource[#].service string 必須 カード下部のテキスト表示内容
serviceResource[#].resource string 必須 カード上部のテキスト表示内容
serviceResource[#].source_type string 必須 リソースタイプ。ノードのアイコン表示に使用されます(サポートされるタイプ:'web', 'custom', 'cache', 'db', 'app', 'front', 'message')。範囲外の場合はデフォルトで'custom'になります。
serviceResource[#].data dict 任意 サービス配下のリソースデータパラメータ
serviceResource[#].data.avg_per_second number 任意 中央左側に表示される値
serviceResource[#].data.avg_per_second_title number 任意 中央左側のホバー表示内容
serviceResource[#].data.error_rate number 任意 中央右側に表示される値
serviceResource[#].data.error_rate_title number 任意 中央右側のホバー表示内容
serviceResource[#].data.p99 number 任意 中央に表示される値
serviceResource[#].data.p99_title number 任意 中央右側のホバー表示内容
maps list 必須 カードノード接続関係のリスト
maps[#] dict 任意 カードノードの接続関係(方向 source_resource->target_resource)
maps[#].source string 必須 serviceResource[#].service と同じ
maps[#].source_resource string 必須 serviceResource[#].resource と同じ
maps[#].target string 必須 serviceResource[#].service と同じ
maps[#].target_resource string 必須 serviceResource[#].resource と同じ

外部関数レスポンス構造の例

@DFF.API('関数名', category='dataPlatform.dataQueryFunc')
def whytest_topology_test():
    now = int(time.time()) * 1000
    # ここでのdataは、上記「ServiceMap サービス関係図、ResourceMap リソース関係図」の完全な構造です。
    data = {}
    return {
    "content": [
      {
        "series": [
          {
            "columns": ["time", "data"],
            "values": [
              now, json.dumps(data)
            ],
            "total_hits": 1
          }
        ]
      }
    ]
  }

フィードバック

このページは役に立ちましたか?