翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
フリートインデックス作成の準備
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
のデバイスシャドウの例に基づいたクエリの例を示しています。詳細については、「モノのクエリの例」を参照してください。
リクエストされた情報 |
Query |
結果 |
---|---|---|
特定のパッケージバージョンがインストールされているモノ |
|
|
特定のパッケージバージョンがインストールされていないモノ |
|
|
パッケージ ID が 1500 を超えるパッケージバージョンを使用するすべてのデバイス |
|
|
特定のパッケージがインストールされていて、複数のパッケージがインストールされているモノ |
|
|
getBucketsAggregation
によるパッケージバージョン配布の収集
AWS IoT コンソール内の Discovery パネルに加えて、 GetBucketsAggregation
APIオペレーションを使用してパッケージバージョンのディストリビューション情報を取得することもできます。パッケージバージョンの配布情報を取得するには、以下を実行する必要があります。
各ソフトウェアパッケージのフリートインデックス作成内のカスタムフィールドを定義します。注: カスタムフィールドの作成は、AWS IoT フリートインデックス作成のサービスクォータにカウントされます。
カスタムフィールドを次のようにフォーマットします。
shadow.name.$package.reported.
<packageName>
.version
詳細については、フリー AWS IoT トインデックス作成のカスタムフィールドセクションを参照してください。