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リファレンスを参照してください。