4.3. メタデータの参照

MongoDBに格納・更新されたエッジサーバ上で動作するデバイスやエッジのメタデータを参照する Backend API(REST API)を提供しています。

4.3.1. エッジのメタデータ取得

下記のAPIを実行することで、エッジのメタデータを取得することができます。

GET /edge
GET /edge/{edge_id}

特定のエッジID(edge_id)を指定してメタデータ取得する場合、後者のAPIを使用します。

APIを実行した結果、MongoDBに格納されているメタデータが下記のようなフォーマットで取得できます。

{
    "results": [
        {データ1件目},
        {データ2件目},
        {データ3件目},
        …
        {データn件目}
    ],
     "count": n
}

クエリパラメータ無指定の状態でAPI実行すると、MongoDBに格納されているメタデータ全てを一度のリクエストで取得しようとします。limitパラメータを使用して、一度に取得するメタデータ数の上限を設定することができます。offsetパラメータを併用して、指定件数のデータを読み飛ばすこともできます。

例) 100件読み飛ばして100件のデータを取得する場合

GET /edge?offset=100&limit=100

APIの詳細については、APIリファレンスを参照してください。

4.3.2. デバイスのメタデータ取得

下記のAPIを実行することで、デバイスのメタデータを取得することができます。

GET /edge/{edge_id}/device
GET /edge/{edge_id}/device/{object_id}

特定のオブジェクトID(object_id)を指定してメタデータ取得する場合、後者のAPIを使用します。

APIを実行した結果、MongoDBに格納されているメタデータが下記のようなフォーマットで取得できます。

{
    "results": [
        {データ1件目},
        {データ2件目},
        {データ3件目},
        …
        {データn件目}
    ],
     "count": n
}

edge_idに”0”を指定することで、エッジをまたいだ検索が可能になります。

例) 全てのデバイスのメタデータを取得する場合

GET /edge/0/device

クエリパラメータ無指定の状態でAPI実行すると、MongoDBに格納されているメタデータ全てを一度のリクエストで取得しようとします。limitパラメータを使用して、一度に取得するメタデータ数の上限を設定することができます。offsetパラメータを併用して、指定件数のデータを読み飛ばすこともできます。

例) 100件読み飛ばして100件のデータを取得する場合

GET /edge/0/device?offset=100&limit=100

APIの詳細については、APIリファレンスを参照してください。

4.3.3. その他メタデータ取得

エッジアプリケーションなど、デバイス以外のオブジェクトについても、同様の手段でメタデータ取得することができます。

GET /edge/{edge_id}/{object_type}
GET /edge/{edge_id}/{object_type}/{object_id}

特定のオブジェクトID(object_id)を指定してメタデータ取得する場合、後者のAPIを使用します。

例) エッジアプリケーションのメタデータを全て取得する場合

GET /edge/0/edge_application

APIの詳細については、APIリファレンスを参照してください。