

サポート終了通知: 2026 年 10 月 7 日、 AWS はサポートを終了します AWS IoT Greengrass Version 1。2026 年 10 月 7 日以降、 AWS IoT Greengrass V1 リソースにアクセスできなくなります。詳細については、[「 からの移行 AWS IoT Greengrass Version 1](https://docs.aws.amazon.com/greengrass/v2/developerguide/migrate-from-v1.html)」を参照してください。

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

# AWS IoT Greengrass コアデバイスからのシステムヘルステレメトリデータの収集
<a name="telemetry"></a>

システムヘルステレメトリデータは、Greengrass コアデバイスにおける重要な操作のパフォーマンス監視に役立つ診断データです。Greengrass コアのテレメトリエージェントは、お客様とのやり取りを必要とせずに、ローカルテレメトリデータを収集して、Amazon EventBridge に発行します。コアデバイスは、ベストエフォートベースで EventBridge にテレメトリデータを発行します。例えば、コアデバイスはオフライン中にテレメトリデータの配信に失敗することがあります。

**注記**  
Amazon EventBridge は、アプリケーションを Greengrass Core デバイスや[デプロイ通知](deployment-notifications.md)などのさまざまなソースのデータに接続するために使用できるイベントバスサービスです。詳細については、「*Amazon EventBridge ユーザーガイド*」の「[Amazon EventBridge とは](https://docs.aws.amazon.com/eventbridge/latest/userguide/what-is-amazon-eventbridge.html)」を参照してください。

プロジェクトとアプリケーションを作成して、エッジデバイスからのテレメトリデータを取得、分析、変換、レポートできます。プロセスエンジニアといった特定分野のエキスパートは、これらのアプリケーションを使用して、フリートのヘルスに関する洞察を得られます。

Greengrass エッジコンポーネントが適切に機能するように、 は開発および品質向上の目的でデータ AWS IoT Greengrass を使用します。この機能は、新しく拡張されたエッジ機能を通知するのに役立ちます。 はテレメトリデータを最大 7 日間 AWS IoT Greengrass のみ保持します。

この機能は AWS IoT Greengrass Core ソフトウェア v1.11.0 で使用でき、既存のコアを含むすべての Greengrass コアでデフォルトで有効になっています。 AWS IoT Greengrass Core ソフトウェア v1.11.0 以降にアップグレードするとすぐに、データの受信が自動的に開始されます。

発行されたテレメトリデータへのアクセスやそうしたデータの管理を行う方法については、「[テレメトリデータを受信するためのサブスクライブ](#subscribe-for-telemetry-data)」を参照してください。

テレメトリエージェントは、次のシステムメトリックを収集して発行します。


**テレメトリメトリック**  

| 名前 | 説明 | ソース | 
| --- | --- | --- | 
|  `SystemMemUsage`  |  オペレーティングシステムを含む、Greengrass コアデバイスのすべてのアプリケーションで現在使用されているメモリの量。  |  システム  | 
|  `CpuUsage`  |  オペレーティングシステムを含む Greengrass コアデバイスのすべてのアプリケーションで現在使用されている CPU の量。  |  システム  | 
|  `TotalNumberOfFDs`  |  Greengrass コアデバイスのオペレーティングシステムによって保存されているファイルディスクリプタの数。1 つのファイルディスクリプタは、1 つのオープンファイルを一意に識別します。  |  システム  | 
|  `LambdaOutOfMemory`  |  Lambda 関数がメモリを使い切った実行の回数。  |  システム  | 
|  `DroppedMessageCount`  |   AWS IoT Coreに送信されドロップされたメッセージの数。  |  `GGCloudSpooler` システムコンポーネント  | 
|  `LambdaTimeout`  |  ユーザー定義 Lambda 関数の実行がタイムアウトした回数。  |  ユーザー定義の Lambda 関数 AWS クラウド、およびシステム  | 
|  `LambdaUngracefullyKilled`  |  ユーザー定義 Lambda 関数の実行が完了しなかった回数。  |  ユーザー定義の Lambda 関数 AWS クラウド、およびシステム   | 
|  `LambdaError`  |  ユーザー定義 Lambda 関数の実行によってエラーログが書き込まれた回数。  |  ユーザー定義の Lambda 関数 AWS クラウド、およびシステム  | 
|  `BytesAppended`  |  ストリームマネージャーに追加されたデータのバイト数。  |  `GGStreamManager` システムコンポーネント  | 
|  `BytesUploadedToIoTAnalytics`  |  ストリームマネージャーがチャネルにエクスポートするデータのバイト数 AWS IoT Analytics。  |  `GGStreamManager` システムコンポーネント  | 
|  `BytesUploadedToKinesis`  |  ストリームマネージャーが Amazon Kinesis Data Streams のストリームにエクスポートするデータのバイト数。  |  `GGStreamManager` システムコンポーネント  | 
|  `BytesUploadedToIoTSiteWise`  |  ストリームマネージャーがアセットプロパティにエクスポートするデータのバイト数 AWS IoT SiteWise。  |  `GGStreamManager` システムコンポーネント  | 
|  `BytesUploadedToS3ExportTaskExecutor`  |  ストリームマネージャーが Amazon S3 のオブジェクトにエクスポートするデータのバイト数。  |  `GGStreamManager` システムコンポーネント  | 
|  `BytesUploadedToHTTP`  |  ストリームマネージャーが HTTP にエクスポートするデータのバイト数。  |  `GGStreamManager` システムコンポーネント  | 

## テレメトリ設定の構成
<a name="configure-telemetry-settings"></a>

Greengrass テレメトリでは、次の設定が使用されます。
+ テレメトリエージェントは、1 時間ごとにテレメトリデータを集約します。
+ テレメトリエージェントは 24 時間ごとにテレメトリメッセージを発行します。

**注記**  
こうした設定は変更できません。

Greengrass コアデバイスのテレメトリ機能は、有効または無効にできます。 AWS IoT Greengrass は、[シャドウ](https://docs.aws.amazon.com/iot/latest/developerguide/iot-device-shadows.html)を使用してテレメトリ設定を管理します。変更は、コアが に接続されるとすぐに有効になります AWS IoT Core。

テレメトリエージェントは、サービス品質 (QoS) レベルが 0 の MQTT プロトコルを使用してデータを発行します。つまり、配信の確認や発行の再試行は行いません。テレメトリメッセージは、MQTT 接続を、 AWS IoT Coreを送信先とする他のサブスクリプションメッセージと共有します。

データリンクのコストを除き、コアから へのデータ転送 AWS IoT Core は無料です。これは、エージェントが AWS 予約済みトピックに発行するためです。ただし、ユースケースによっては、データを受信または処理するときにコストが発生する場合もあります。

### 要件
<a name="configure-telemetry-settings-reqs"></a>

テレメトリ設定を構成するときには、次の要件が適用されます。
+  AWS IoT Greengrass Core ソフトウェア v1.11.0 以降を使用する必要があります。
**注記**  
以前のバージョンを実行していて、テレメトリを使用しない場合は、何もする必要はありません。
+ IAM アクセス権限を付与する必要があります。これにより、コア (モノ) シャドウを更新して、テレメトリ設定の更新前に設定 API を呼び出します。

  次の IAM ポリシー例を使用すると、特定のコアのシャドウとランタイム設定を管理できます。

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [        
          {
              "Sid": "AllowManageShadow",
              "Effect": "Allow",
              "Action": [
                  "iot:GetThingShadow",
                  "iot:UpdateThingShadow",
                  "iot:DeleteThingShadow", 
                  "iot:DescribeThing"
              ],
              "Resource": [
                  "arn:aws:iot:us-east-1:123456789012:thing/core-name-*"
              ]
          },
          {            
              "Sid": "AllowManageRuntimeConfig",
              "Effect": "Allow",
              "Action": [
                  "greengrass:GetCoreRuntimeConfiguration",
                  "greengrass:UpdateCoreRuntimeConfiguration"
              ],
              "Resource": [
                  "arn:aws:iot:us-east-1:123456789012:thing/core-name"
              ]
          }
      ]
  }
  ```

------

  <a name="wildcards-grant-granular-conditional-access"></a>リソースにきめ細かいアクセス権限または条件付きアクセス権限を付与できます (例えば、ワイルドカード `*` 命名スキームを使用)。詳細については、「IAM ユーザーガイド」の「[IAM ポリシーの追加と削除](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html)」を参照してください。

### テレメトリ設定の構成 (コンソール)
<a name="configure-telemetry-settings-console"></a>

以下は、 AWS IoT Greengrass コンソールで Greengrass コアのテレメトリ設定を更新する方法を示しています。

1.  AWS IoT コンソールナビゲーションペインの**「管理**」で **Greengrass デバイス**を展開し、**「グループ (V1)**」を選択します。

1. **[Greengrass groups]** (グリーングラスのグループ) で、対象グループを選択します。

1. グループ設定ページの **[Overview]** (概要) セクションで、**[Greengrass core]** (Greengrass コア) を選択します。

1. コアの設定ページで、 **[Telemetry]** (テレメトリ) タブを選択します。

1. **[System health telemetry]** (システム ヘルス テレメトリ) セクションで、**[Configure]** (設定) を選択します。

1. **[Configure telemetry]** (テレメトリの設定) で、[Telemetry] (テレメトリ) を選択して、テレメトリのステータスを有効または無効にします。
**重要**  
デフォルトでは、テレメトリ機能は AWS IoT Greengrass Core ソフトウェア v1.11.0 以降で有効になっています。

変更は実行時に有効になります。グループをデプロイする必要はありません。

### テレメトリ設定の構成 (CLI)
<a name="configure-telemetry-settings-cli"></a>

 AWS IoT Greengrass API では、 `TelemetryConfiguration` オブジェクトは Greengrass コアのテレメトリ設定を表します。このオブジェクトは、コアに関連する `RuntimeConfiguration` オブジェクトの一部です。 AWS IoT Greengrass API、 AWS CLI、または AWS SDK を使用して Greengrass テレメトリを管理できます。このセクションの例では AWS CLIを使用します。

**テレメトリ設定を確認するには**  
次のコマンドでは、Greengrass コアのテレメトリ設定を取得します。  
+ *core-thing-name* をターゲットコアの名前に置き換えます。

  モノの名前を取得するには、[get-core-definition-version](https://docs.aws.amazon.com/cli/latest/reference/greengrass/get-core-definition-version.html) コマンドを使用します。このコマンドは、モノの名前を含むモノの ARN を返します。

```
aws greengrass get-thing-runtime-configuration --thing-name core-thing-name
```
このコマンドでは、`GetCoreRuntimeConfigurationResponse` オブジェクトが JSON 応答で返ります。例:  

```
{
    "RuntimeConfiguration": {
        "TelemetryConfiguration": {
            "ConfigurationSyncStatus": "OutOfSync",
            "Telemetry": "On"
        }
    }
}
```

**テレメトリ設定を構成するには**  
次のコマンドでは、Greengrass コアのテレメトリ設定を更新します。  
+ *core-thing-name* をターゲットコアの名前に置き換えます。

  モノの名前を取得するには、[get-core-definition-version](https://docs.aws.amazon.com/cli/latest/reference/greengrass/get-core-definition-version.html) コマンドを使用します。このコマンドは、モノの名前を含むモノの ARN を返します。

```
aws greengrass update-thing-runtime-configuration --thing-name core-thing-name --telemetry-configuration  '{
    "RuntimeConfiguration": {
        "TelemetryConfiguration": {
            "ConfigurationSyncStatus": "InSync",
            "Telemetry": "Off"
        }
    }
}
```

```
aws greengrass update-thing-runtime-configuration --thing-name core-thing-name --telemetry-configuration "{\"TelemetryConfiguration\":{\"ConfigurationSyncStatus\":\"InSync\",\"Telemetry\":\"Off\"}}"
```
`ConfigurationSyncStatus` が `InSync` の場合、テレメトリ設定の変更が適用されています。変更は実行時に有効になります。グループをデプロイする必要はありません。

#### TelemetryConfiguration オブジェクト
<a name="TelemetryConfiguration-object"></a>

`TelemetryConfiguration` オブジェクトには以下のプロパティがあります。

`ConfigurationSyncStatus`  
テレメトリ設定が同期しているかどうかを確認します。このプロパティは変更できません。  
タイプ: 文字列  
有効な値: `InSync` または `OutOfSync`

`Telemetry`  
テレメトリをオンまたはオフにします。デフォルトは `On` です。  
タイプ: 文字列  
有効な値: `On` または `Off`

## テレメトリデータを受信するためのサブスクライブ
<a name="subscribe-for-telemetry-data"></a>

Amazon EventBridge では、ルールを作成して、Greengrass コアデバイスから発行されたテレメトリデータの処理方法を定義できます。データを受信した EventBridge によって、ルールで定義したターゲットアクションが呼び出されます。例えば、通知の送信、イベント情報の保存、是正措置の実践、他のイベントの呼び出しなどを行うイベントルールを作成できます。

### テレメトリイベント
<a name="events-message-format"></a>

テレメトリデータを含むデプロイ状態変更のイベントでは、次の形式を使用します。

```
{
    "version": "0",
    "id": "f70f943b-9ae2-e7a5-fec4-4c22178a3e6a",
    "detail-type": "Greengrass Telemetry Data",
    "source": "aws.greengrass",
    "account": "123456789012",
    "time": "2020-07-28T20:45:53Z",
    "region": "us-west-1",
    "resources": [],
    "detail": {
        "ThingName": "CoolThing",
        "Schema": "2020-06-30",
        "ADP": [
            {
                "TS": 123231546,
                "NS": "StreamManager",
                "M": [
                    {
                        "N": "BytesAppended|BytesUploadedToKinesis",
                        "Sum": 11,
                        "U": "Bytes"
                    }
                ]
            },
            {
                "TS": 123231546,
                "NS": "StreamManager",
                "M": [
                    {
                        "N": "BytesAppended|BytesUploadedToS3ExportTaskExecutor",
                        "Sum": 11,
                        "U": "Bytes"
                    }
                ]
            },
            {
                "TS": 123231546,
                "NS": "StreamManager",
                "M": [
                    {
                        "N": "BytesAppended|BytesUploadedToHTTP",
                        "Sum": 11,
                        "U": "Bytes"
                    }
                ]
            },
            {
                "TS": 123231546,
                "NS": "StreamManager",
                "M": [
                    {
                        "N": "BytesAppended|BytesUploadedToIoTAnalytics",
                        "Sum": 11,
                        "U": "Bytes"
                    }
                ]
            },
            {
                "TS": 123231546,
                "NS": "StreamManager",
                "M": [
                    {
                        "N": "BytesAppended|BytesUploadedToIoTSiteWise",
                        "Sum": 11,
                        "U": "Bytes"
                    }
                ]
            },
            {
                "TS": 123231546,
                "NS": "arn:aws:lambda:us-west-1:123456789012:function:my-function",
                "M": [
                    {
                        "N": "LambdaTimeout",
                        "Sum": 15,
                        "U": "Count"
                    }
                ]
            },
            {
                "TS": 123231546,
                "NS": "CloudSpooler",
                "M": [
                    {
                        "N": "DroppedMessageCount",
                        "Sum": 15,
                        "U": "Count"
                    }
                ]
            },
            {
                "TS": 1593727692,
                "NS": "SystemMetrics",
                "M": [
                    {
                        "N": "SystemMemUsage",
                        "Sum": 11.23,
                        "U": "Megabytes"
                    },
                    {
                        "N": "CpuUsage",
                        "Sum": 35.63,
                        "U": "Percent"
                    },
                    {
                        "N": "TotalNumberOfFDs",
                        "Sum": 416,
                        "U": "Count"
                    }
                ]
            },
            {
                "TS": 1593727692,
                "NS": "arn:aws:lambda:us-west-1:123456789012:function:my-function",
                "M": [
                    {
                        "N": "LambdaOutOfMemory",
                        "Sum": 12,
                        "U": "Count"
                    },
                    {
                        "N": "LambdaUngracefullyKilled",
                        "Sum": 100,
                        "U": "Count"
                    },
                    {
                        "N": "LambdaError",
                        "Sum": 7,
                        "U": "Count"
                    }
                ]
            }
        ]
    }
}
```

`ADP` 配列には、次のプロパティを持つ集約データポイントのリストが含まれています。

`TS`  
必須。データが集約された時刻のタイムスタンプ。

`NS`  
必須。システムの名前空間。

`M`  
必須。メトリクスのリスト。メトリクスには次のプロパティが含まれています。    
`N`  
[メトリクス](#telemetry-metrics)の名前。  
`Sum`  
集計されたメトリック値。テレメトリエージェントは前の合計に新しい値を加算するため、合計の値は絶えず増加します。タイムスタンプを使用すると、特定の集計値を求められます。例えば、最近集計された値を求めるには、最新のタイムスタンプ付き値から前のタイムスタンプ値を減算します。  
`U`  
メトリクス値の単位。

`ThingName`  
必須。ターゲットとするモノデバイスの名前。

### EventBridge ルールを作成するための前提条件
<a name="create-events-rule-prereqs-telemetry"></a>

の EventBridge ルールを作成する前に AWS IoT Greengrass、以下を実行する必要があります。
+ EventBridge のイベント、ルール、ターゲットに精通しておいてください。
+ EventBridge ルールによって呼び出される [[targets]](https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-targets.html) (ターゲット) を作成して設定します。ルールは、Amazon Kinesis ストリーム、 AWS Lambda 関数、Amazon SNS トピック、Amazon SQS キューなど、さまざまなタイプのターゲットを呼び出すことができます。

  EventBridge ルールと関連ターゲットは、Greengrass リソースを作成した AWS リージョン 内になければなりません。詳細については、「*AWS 全般のリファレンス*」の「[サービスのエンドポイントとクォータ](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html)」を参照してください。

詳細については、「*Amazon EventBridge ユーザーガイド*」の「[Amazon EventBridge とは](https://docs.aws.amazon.com/eventbridge/latest/userguide/what-is-amazon-eventbridge.html)」および「[Amazon EventBridge の開始方法](https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-getting-set-up.html)」を参照してください。

### テレメトリデータを取得するイベントルールを作成する (コンソール)
<a name="create-telemetry-event-rule-console"></a>

次の手順を使用して、Greengrass コアによって発行されたテレメトリデータを受信する EventBridge ルール AWS マネジメントコンソール を作成します。これにより、ウェブサーバー、E メールアドレス、その他のトピック受信者がイベントに応答できるようになります。詳細については、「Amazon [ EventBridge ユーザーガイド」の「Creating a EventBridge rule that triggers on an event from an AWS resource](https://docs.aws.amazon.com/eventbridge/latest/userguide/create-eventbridge-rule.html)」を参照してください。 * EventBridge *

1. [Amazon EventBridge コンソール](https://console.aws.amazon.com/events/)を開き、**[Create rule]** (ルールの作成) を選択します。

1. [**Name and description (名前と説明)**] に、ルールの名前と説明を入力します。

1. **[Event bus]** (イベントバス) を選択し、選択したイベントバスでルールを有効にします。

1. **[Rule type]** (ルールタイプ)、**[Rule with an event pattern]** (イベントパターンを持つルール) の順に選択します。

1. [**次へ**] を選択します。

1. **[イベントソース]** で、**[AWS イベントまたは EventBridge パートナーイベント]** を選択してください。

1. **[サンプルイベント]** では、**[AWS イベント]**、**[Greengrass テレメトリデータ]** の順に選択します。

1. **[Event pattern]** (イベントパターン) では、次のように選択します。

   1. **[イベントソース]** で、**[AWS のサービス]** を選択してください。

   1. ** [AWS Service]** (サービス) では、 **[Greengrass]** を選択します。

   1. **[Event type]** (イベントタイプ) では、**[Greengrass Telemetry Data]** (Greengrass テレメトリデータ) を選択します。

1. [**次へ**] を選択します。

1. **[Target 1]** (ターゲット 1) で、**[AWS services]** (サービス) を選択します。

1. **[Select a target]** (ターゲットの選択) で、**[SQS queue]** (SQS キュー) を選択します。

1. **[Queue]** (キュー) で、関数を選択します。

### テレメトリデータを取得するイベントルールを作成する (CLI)
<a name="create-telemetry-event-rule-cli"></a>

次の手順を使用して、Greengrass コアによって発行されたテレメトリデータを受信する EventBridge ルール AWS CLI を作成します。これにより、ウェブサーバー、E メールアドレス、その他のトピック受信者がイベントに応答できるようになります。

1. ルールを作成します。
   + *thing-name* をコアのモノ名に置き換えます。

     モノの名前を取得するには、[get-core-definition-version](https://docs.aws.amazon.com/cli/latest/reference/greengrass/get-core-definition-version.html) コマンドを使用します。このコマンドは、モノの名前を含むモノの ARN を返します。

   ```
   aws events put-rule \
     --name TestRule \
     --event-pattern "{\"source\": [\"aws.greengrass\"], \"detail\": {\"ThingName\": [\"thing-name\"]}}"
   ```

   パターンで省略されたプロパティは無視されます。

1. トピックをルールターゲットとして追加します。次の例では、Amazon SQS を使用していますが、他のターゲットタイプも設定できます。
   + *queue-arn* を Amazon SQS キューの ARN に置き換えます。

   ```
   aws events put-targets \
     --rule TestRule \
     --targets "Id"="1","Arn"="queue-arn"
   ```
**注記**  
Amazon EventBridge にターゲットキューの呼び出しを許可するには、トピックにリソースベースのポリシーを追加する必要があります。詳細については、「*Amazon EventBridge ユーザーガイド*」の「[Amazon SQS permissions](https://docs.aws.amazon.com/eventbridge/latest/userguide/resource-based-policies-eventbridge.html#sqs-permissions)」を参照してください。

詳細については、「Amazon EventBridge ユーザーガイド」の「[EventBridge のイベントとイベントパターン](https://docs.aws.amazon.com/eventbridge/latest/userguide/eventbridge-and-event-patterns.html)」を参照してください。

## AWS IoT Greengrass テレメトリのトラブルシューティング
<a name="telemetry-troubleshoot"></a>

 AWS IoT Greengrass テレメトリの設定に関する問題のトラブルシューティングには、次の情報を使用します。

### 次のエラーが発生する。The response contains "ConfigurationStatus": "OutOfSync" after you run the get-thing-runtime-configuration command
<a name="telemetry-troubleshoot-ConfigurationStatus-OutOfSync"></a>

**解決方法**
+  AWS IoT Device Shadow サービスは、ランタイム設定の更新を処理し、Greengrass コアデバイスに更新を配信するまでに時間がかかります。しばらく待った後に、テレメトリ設定が同期しているかどうかを確認してください。
+ コアデバイスがオンラインになっていることを確認します。
+ [AWS IoT Coreの Amazon CloudWatch Logs](https://docs.aws.amazon.com/iot/latest/developerguide/cloud-watch-logs.html#viewing-logs) を有効にして、シャドウを監視します。
+ [AWS IoT メトリクス](https://docs.aws.amazon.com/iot/latest/developerguide/monitoring-cloudwatch.html)を使用して、モノを監視します。