フリートインデックス作成の準備 - AWS IoT Core

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

フリートインデックス作成の準備

AWS IoT フリートインデックス作成では、予約された名前付きシャドウ () を使用してデータを検索および集計できます$package予約済みの名前付きシャドウ および のモノの動的グループ をクエリ AWS IoT することで、モノをグループ化することもできます。 https://docs.aws.amazon.com/iot/latest/developerguide/dynamic-thing-groups.html例えば、特定のパッケージバージョンを使用するもの、特定のパッケージバージョンがインストールされていないもの、またはパッケージバージョンがインストールされていない AWS IoT ものに関する情報を確認できます。属性を組み合わせることで、さらに詳しいインサイトを得ることができます。例えば、特定のバージョンがあり、特定のモノのタイプ (バージョン 1.0.0 や Pump_sensor のモノのタイプなど) であるモノを特定するとします。詳細については、「フリートインデックス作成」を参照してください。

$package シャドウをデータソースとして設定する

Software Package Catalog でフリートインデックス作成を使用するには、フリートインデックス作成を有効にし、名前付きシャドウをデータソースとして設定して、名前付きシャドウフィルターとして $package を定義する必要があります。フリートインデックス作成をまだ有効にしていない場合は、このプロセス内で有効にできます。コンソールの AWS IoT Core から [設定] を開き、[インデックス作成の管理][名前付きシャドウの追加][デバイスソフトウェアパッケージとバージョンの追加][更新] の順に選択します。詳細については、「モノのインデックス作成の管理」を参照してください。

または、最初のパッケージを作成するときにフリートインデックス作成を有効にすることもできます。[パッケージ管理の依存関係を有効にする] ダイアログボックスが表示されたら、デバイスソフトウェアのパッケージとバージョンをデータソースとしてフリートインデックス作成に追加するオプションを選択します。このオプションを選択すると、フリートインデックス作成も有効になります。

注記

Software Package Catalog のフリートインデックス作成を有効にすると、標準のサービスコストが発生します。詳細については、「AWS IoT Device Management, Pricing」(、料金) を参照してください。

コンソールに表示されるメトリクス

標準メトリクスのイメージ

AWS IoT コンソールソフトウェアパッケージの詳細ページに、検出パネルにシャ$packageドウを介して取り込まれた標準メトリクスが表示されます。

  • 現行バージョンのディストリビューションチャートには、このソフトウェアパッケージに関連付けられているすべてのデバイスの AWS IoT モノに関連付けられている最新のパッケージバージョン 10 のデバイス数とパーセンテージが表示されます。注: ソフトウェアパッケージに含まれるパッケージバージョンが、グラフに表示されているバージョンよりも多い場合は、その他にグループ分けして表示できます。

  • 履歴グラフには、指定した期間における選択したパッケージバージョンに関連するデバイスの数が表示されます。最大 5 つのパッケージバージョンを選択し、日付範囲と時間間隔を定義するまで、最初はグラフは空です。グラフのパラメータを選択するには、[設定] を選択します。[履歴グラフ] に表示されるデータは、表示されるパッケージバージョンの数が異なることと、[履歴グラフ] で分析するパッケージバージョンを選択できるため、[現在のバージョン分布] グラフと異なる場合があります。注: 視覚化するパッケージバージョンを選択すると、そのバージョンはフリートメトリクスの最大数制限にカウントされます。クォータと制限の詳細については、「フリートインデックス作成の制限とクォータ」を参照してください。

パッケージバージョン分布を収集する方法についてインサイトを得る別の方法については、「Collecting package version distribution through getBucketsAggregation」(によるパッケージバージョン配布の収集) を参照してください。

クエリパターン

Software Package Catalog によるフリートインデックス作成では、フリートインデックス作成の標準としてサポートされている機能 (用語やフレーズ、検索フィールドなど) のほとんどを使用します。例外は、予約済みの名前付きシャドウ ($package) version キーに対して comparison および range クエリを使用できないことです。ただし、attributes キーにはこれらのクエリを使用できます。詳細については、「クエリ構文」を参照してください。

データの例

注: 予約済みの名前付きシャドウとその構造については、「予約済みの名前付きシャドウ」を参照してください。

この例では、最初のデバイスに AnyThing という名前が付けられ、次のパッケージがインストールされています。

  • ソフトウェアパッケージ: SamplePackage

    パッケージバージョン: 1.0.0

    パッケージ ID: 1111

シャドウは次のようになります。

{ "state": { "reported": { "SamplePackage": { "version": "1.0.0", "attributes": { "s3UrlForSamplePackage": "https://EXAMPIEBUCKET.s3.us-west-2.amazonaws.com/exampleCodeFile1", "packageID": "1111" } } } } }

2 番目のデバイスには AnotherThing という名前が付けられ、次のパッケージがインストールされています。

  • ソフトウェアパッケージ: SamplePackage

    パッケージバージョン: 1.0.0

    パッケージ ID: 1111

  • ソフトウェアパッケージ: OtherPackage

    パッケージバージョン: 1.2.5

    パッケージ ID: 2222

シャドウは次のようになります。

{ "state": { "reported": { "SamplePackage": { "version": "1.0.0", "attributes": { "s3UrlForSamplePackage": "https://EXAMPIEBUCKET.s3.us-west-2.amazonaws.com/exampleCodeFile1", "packageID": "1111" } }, "OtherPackage": { "version": "1.2.5", "attributes": { "s3UrlForOtherPackage": "https://EXAMPIEBUCKET.s3.us-west-2.amazonaws.com/exampleCodeFile2", "packageID": "2222" } }, } } }

サンプルクエリ

次の表は、AnyThing および AnotherThing のデバイスシャドウの例に基づいたクエリの例を示しています。詳細については、「モノのクエリの例」を参照してください。

最新バージョンの AWS IoT Device Tester 無料RTOS

リクエストされた情報

Query

結果

特定のパッケージバージョンがインストールされているモノ

shadow.name.$package.reported.SamplePackage.version:1.0.0

AnyThing, OtherThing

特定のパッケージバージョンがインストールされていないモノ

NOT shadow.name.$package.reported.OtherPackage.version:1.2.5

AnyThing

パッケージ ID が 1500 を超えるパッケージバージョンを使用するすべてのデバイス

shadow.name.$package.reported.*.attributes.packageID>1500"

OtherThing

特定のパッケージがインストールされていて、複数のパッケージがインストールされているモノ

shadow.name.$package.reported.SamplePackage.version:1.0.0 AND shadow.name.$package.reported.totalCount:2

OtherThing

getBucketsAggregation によるパッケージバージョン配布の収集

AWS IoT コンソール内の Discovery パネルに加えて、 GetBucketsAggregationAPIオペレーションを使用してパッケージバージョンのディストリビューション情報を取得することもできます。パッケージバージョンの配布情報を取得するには、以下を実行する必要があります。

  • 各ソフトウェアパッケージのフリートインデックス作成内のカスタムフィールドを定義します。注: カスタムフィールドの作成は、AWS IoT フリートインデックス作成のサービスクォータにカウントされます。

  • カスタムフィールドを次のようにフォーマットします。

    shadow.name.$package.reported.<packageName>.version

詳細については、フリー AWS IoT トインデックス作成のカスタムフィールドセクションを参照してください。