

サポート終了通知: 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)」を参照してください。

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

# IoT Analytics コネクタ
<a name="iot-analytics-connector"></a>

**警告**  <a name="connectors-extended-life-phase-warning"></a>
このコネクタは延長ライフサイクルフェーズに移行しており、 AWS IoT Greengrass では、機能、既存機能の拡張、セキュリティパッチ、バグ修正を提供するアップデートはリリースされません。詳細については、「[AWS IoT Greengrass Version 1 メンテナンスポリシー](maintenance-policy.md)」を参照してください。

IoT Analytics コネクタは、ローカルデバイスデータを に送信します AWS IoT Analytics。このコネクタを中央ハブとして使用して、Greengrass コアデバイスのセンサーおよび[接続されたクライアントデバイス](what-is-gg.md#greengrass-devices)からデータを収集できます。コネクタは、現在の AWS アカウント およびリージョンの AWS IoT Analytics チャネルにデータを送信します。デフォルトの送信先チャネルおよび動的に指定されたチャネルにデータを送信できます。

**注記**  
AWS IoT Analytics は、IoT データの収集、保存、処理、クエリを可能にするフルマネージドサービスです。では AWS IoT Analytics、データをさらに分析して処理できます。例えば、マシンの健全性をモニタリングするために ML モデルをトレーニングしたり、新しいモデリング戦略をテストしたりするために使用できます。詳細については、「 *AWS IoT Analytics ユーザーガイド*」の[「What is AWS IoT Analytics?](https://docs.aws.amazon.com/iotanalytics/latest/userguide/welcome.html)」を参照してください。

コネクタは、[MQTT トピック](#iot-analytics-connector-data-input)の書式設定されたデータおよび書式設定されていないデータを受け入れます。送信先チャネルがインラインで指定された、2 つの事前定義されたトピックがサポートされます。また、[サブスクリプションで設定](connectors.md#connectors-inputs-outputs)された、お客様定義のトピックでメッセージを受信できます。これは、固定トピックに発行するクライアントデバイスからメッセージをルーティングしたり、リソースに制約のあるデバイスから、構造化されていないデータやスタックに依存したデータを処理したりするために使用できます。

このコネクタは、[https://docs.aws.amazon.com/iotanalytics/latest/userguide/api.html#cli-iotanalytics-batchputmessage](https://docs.aws.amazon.com/iotanalytics/latest/userguide/api.html#cli-iotanalytics-batchputmessage) API を使用して、データ (JSON または base64 エンコードされた文字列) を送信先チャネルに送信します。コネクタは、raw データを API の要件に準拠した形式に処理できます。コネクタは入力メッセージをチャネルごとのキューにバッファし、非同期的にバッチを処理します。また、クエリおよびバッチ動作を制御し、メモリ使用を制限するパラメータを提供します。例えば、最大キューサイズ、バッチ間隔、メモリサイズ、アクティブなチャネルの数を設定できます。

このコネクタには、次のバージョンがあります。


| バージョン | ARN | 
| --- | --- | 
| 4 | `arn:aws:greengrass:region::/connectors/IoTAnalytics/versions/4` | 
| 3 | `arn:aws:greengrass:region::/connectors/IoTAnalytics/versions/3` | 
| 2 | `arn:aws:greengrass:region::/connectors/IoTAnalytics/versions/2` | 
| 1 | `arn:aws:greengrass:region::/connectors/IoTAnalytics/versions/1` | 

バージョンの変更については、「[Changelog](#iot-analytics-connector-changelog)」を参照してください。

## 要件
<a name="iot-analytics-connector-req"></a>

このコネクタには以下の要件があります。

------
#### [ Version 3 - 4 ]
+ <a name="conn-req-ggc-v1.9.3"></a>AWS IoT Greengrass Core ソフトウェア v1.9.3 以降。
+ <a name="conn-req-py-3.7-and-3.8"></a>[Python](https://www.python.org/) バージョン 3.7 または 3.8 が Core デバイスにインストールされ、PATH 環境変数に追加されている。
**注記**  <a name="use-runtime-py3.8"></a>
Python 3.8 を使用するには、次のコマンドを実行して、Python 3.7 のデフォルトのインストールフォルダからインストール済みの Python 3.8 バイナリへのシンボリックリンクを作成します。  

  ```
  sudo ln -s path-to-python-3.8/python3.8 /usr/bin/python3.7
  ```
これにより、 AWS IoT Greengrassの Python 要件を満たすようにデバイスが設定されます。
+ <a name="conn-iot-analytics-req-regions"></a>このコネクタは、[AWS IoT Greengrass](https://docs.aws.amazon.com/general/latest/gr/greengrass.html) および [AWS IoT Analytics](https://docs.aws.amazon.com/general/latest/gr/iot-analytics.html) の両方がサポートされているアマゾン ウェブ サービスリージョンでのみ使用できます。
+ <a name="conn-iot-analytics-req-ita-config"></a>関連するすべての AWS IoT Analytics エンティティとワークフローが作成され、設定されます。エンティティには、チャネル、パイプライン、データストア、およびデータセットが含まれます。詳細については、「AWS IoT Analytics ユーザーガイド」の [AWS CLI](https://docs.aws.amazon.com/iotanalytics/latest/userguide/getting-started.html) または[コンソール](https://docs.aws.amazon.com/iotanalytics/latest/userguide/quickstart.html)の手順を参照してください。
**注記**  
送信先 AWS IoT Analytics チャネルは同じアカウントを使用し、このコネクタ AWS リージョン と同じ に存在する必要があります。
+ <a name="conn-iot-analytics-req-iam-policy"></a>以下の IAM ポリシーの例に示すように、送信先チャネルに対する `iotanalytics:BatchPutMessage` アクションを許可するために [Greengrass グループロール](group-role.md)が設定されている。このチャネルは、現在の AWS アカウント とリージョンに存在する必要があります。

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

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Sid": "Stmt1528133056761",
              "Action": [
                  "iotanalytics:BatchPutMessage"
              ],
              "Effect": "Allow",
              "Resource": [
              "arn:aws:iotanalytics:us-east-1:123456789012:channel/channel_1_name",
      "arn:aws:iotanalytics:us-east-1:123456789012:channel/channel_2_name"
              ]
          }
      ]
  }
  ```

------

  <a name="set-up-group-role"></a>グループロール要件では、必要なアクセス許可を付与するようにロールを設定し、ロールがグループに追加されていることを確認する必要があります。詳細については、[Greengrass グループロールの管理 (コンソール)](group-role.md#manage-group-role-console)または[Greengrass グループロールの管理 (CLI)](group-role.md#manage-group-role-cli)を参照してください。

------
#### [ Versions 1 - 2 ]
+ <a name="conn-req-ggc-v1.7.0"></a>AWS IoT Greengrass Core ソフトウェア v1.7 以降。
+ [Python](https://www.python.org/) バージョン 2.7 が Core デバイスにインストールされ、PATH 環境変数に追加されている。
+ <a name="conn-iot-analytics-req-regions"></a>このコネクタは、[AWS IoT Greengrass](https://docs.aws.amazon.com/general/latest/gr/greengrass.html) および [AWS IoT Analytics](https://docs.aws.amazon.com/general/latest/gr/iot-analytics.html) の両方がサポートされているアマゾン ウェブ サービスリージョンでのみ使用できます。
+ <a name="conn-iot-analytics-req-ita-config"></a>関連するすべての AWS IoT Analytics エンティティとワークフローが作成され、設定されます。エンティティには、チャネル、パイプライン、データストア、およびデータセットが含まれます。詳細については、「AWS IoT Analytics ユーザーガイド」の [AWS CLI](https://docs.aws.amazon.com/iotanalytics/latest/userguide/getting-started.html) または[コンソール](https://docs.aws.amazon.com/iotanalytics/latest/userguide/quickstart.html)の手順を参照してください。
**注記**  
送信先 AWS IoT Analytics チャネルは同じアカウントを使用し、このコネクタ AWS リージョン と同じ に存在する必要があります。
+ <a name="conn-iot-analytics-req-iam-policy"></a>以下の IAM ポリシーの例に示すように、送信先チャネルに対する `iotanalytics:BatchPutMessage` アクションを許可するために [Greengrass グループロール](group-role.md)が設定されている。このチャネルは、現在の AWS アカウント とリージョンに存在する必要があります。

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

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Sid": "Stmt1528133056761",
              "Action": [
                  "iotanalytics:BatchPutMessage"
              ],
              "Effect": "Allow",
              "Resource": [
              "arn:aws:iotanalytics:us-east-1:123456789012:channel/channel_1_name",
      "arn:aws:iotanalytics:us-east-1:123456789012:channel/channel_2_name"
              ]
          }
      ]
  }
  ```

------

  <a name="set-up-group-role"></a>グループロール要件では、必要なアクセス許可を付与するようにロールを設定し、ロールがグループに追加されていることを確認する必要があります。詳細については、[Greengrass グループロールの管理 (コンソール)](group-role.md#manage-group-role-console)または[Greengrass グループロールの管理 (CLI)](group-role.md#manage-group-role-cli)を参照してください。

------

## パラメータ
<a name="iot-analytics-connector-param"></a>

`MemorySize`  
このコネクタに割り当てるメモリ量 (KB 単位)。  
 AWS IoT コンソールの表示名: **メモリサイズ**  
必須: `true`  
型: `string`  
有効なパターン: `^[0-9]+$`

`PublishRegion`  
 AWS IoT Analytics チャネル AWS リージョン が作成される 。コネクタと同じリージョンを使用します。  
これは、[グループロール](#iot-analytics-connector-req)で指定されたチャネルのリージョンに一致する必要があります。
 AWS IoT コンソールの表示名: **Publish region**  
必須: `false`  
型: `string`  
有効なパターン: `^$|([a-z]{2}-[a-z]+-\\d{1})`

`PublishInterval`  
受信したデータのバッチを発行するための間隔 (秒単位) AWS IoT Analytics。  
 AWS IoT コンソールの表示名: **発行間隔**  
必須: `false`  
型: `string`  
デフォルト値: `1`  
有効なパターン: `$|^[0-9]+$`

`IotAnalyticsMaxActiveChannels`  
コネクタがアクティブに監視する AWS IoT Analytics チャネルの最大数。これは 0 より大きい必要があり、少なくとも、コネクタが同時に発行することが予期されるチャネル数と同じである必要があります。  
このパラメータを使用すると、コネクタが同時に管理できるキューの合計数を限定して、メモリ消費量を制限することができます。キューに入れられたすべてのメッセージが送信されると、キューは削除されます。  
 AWS IoT コンソールの表示名: **アクティブなチャネルの最大数**  
必須: `false`  
型: `string`  
デフォルト値: `50`  
有効なパターン: `^$|^[1-9][0-9]*$`

`IotAnalyticsQueueDropBehavior`  
キューがいっぱいであるときに、チャネルキューからメッセージを削除する動作。  
 AWS IoT コンソールでの名前の表示: **キューのドロップ動作**  
必須: `false`  
型: `string`  
有効な値: `DROP_NEWEST` または `DROP_OLDEST`  
デフォルト値: `DROP_NEWEST`  
有効なパターン: `^DROP_NEWEST$|^DROP_OLDEST$`

`IotAnalyticsQueueSizePerChannel`  
メッセージが送信または削除される前に、メモリに保持するされるメッセージの最大数 (1 チャネルあたり)。0 より大きくする必要があります。  
 AWS IoT コンソールの表示名: **チャネルあたりの最大キューサイズ**  
必須: `false`  
型: `string`  
デフォルト値: `2048`  
有効なパターン: `^$|^[1-9][0-9]*$`

`IotAnalyticsBatchSizePerChannel`  
1 つのバッチリクエストで AWS IoT Analytics チャネルに送信するメッセージの最大数。0 より大きくする必要があります。  
 AWS IoT コンソールの表示名: **チャネルごとにバッチ処理するメッセージの最大数**  
必須: `false`  
型: `string`  
デフォルト値: `5`  
有効なパターン: `^$|^[1-9][0-9]*$`

`IotAnalyticsDefaultChannelName`  
このコネクタがカスタマー定義の入力トピックに送信されるメッセージに使用する AWS IoT Analytics チャネルの名前。  
 AWS IoT コンソールの表示名: **デフォルトのチャネル名**  
必須: `false`  
型: `string`  
有効なパターン: `^[a-zA-Z0-9_]$`

`IsolationMode`  <a name="IsolationMode"></a>
このコネクタの[コンテナ化](connectors.md#connector-containerization)モード。デフォルトは です。つまり`GreengrassContainer`、コネクタは AWS IoT Greengrass コンテナ内の分離されたランタイム環境で実行されます。  
グループの既定のコンテナ化設定は、コネクタには適用されません。
 AWS IoT コンソールの表示名: **コンテナ分離モード**  
必須: `false`  
型: `string`  
有効な値: `GreengrassContainer` または `NoContainer`  
有効なパターン: `^NoContainer$|^GreengrassContainer$`

### サンプルコネクタを作成する (AWS CLI)
<a name="iot-analytics-connector-create"></a>

以下の CLI コマンドは、IoT Analytics コネクタを含む初期バージョンで `ConnectorDefinition` を作成します。

```
aws greengrass create-connector-definition --name MyGreengrassConnectors --initial-version '{
    "Connectors": [
        {
            "Id": "MyIoTAnalyticsApplication",
            "ConnectorArn": "arn:aws:greengrass:region::/connectors/IoTAnalytics/versions/3",
            "Parameters": {
                "MemorySize": "65535",
                "PublishRegion": "us-west-1",
                "PublishInterval": "2",
                "IotAnalyticsMaxActiveChannels": "25",
                "IotAnalyticsQueueDropBehavior": "DROP_OLDEST",
                "IotAnalyticsQueueSizePerChannel": "1028",
                "IotAnalyticsBatchSizePerChannel": "5",
                "IotAnalyticsDefaultChannelName": "my_channel"
            }
        }
    ]
}'
```

**注記**  
このコネクタの Lambda 関数には[存続期間の長い](lambda-functions.md#lambda-lifecycle)ライフサイクルがあります。

 AWS IoT Greengrass コンソールでは、グループのコネクタページから**コネクタ**を追加できます。詳細については、「[Greengrass コネクタの開始方法 (コンソール)](connectors-console.md)」を参照してください。

## 入力データ
<a name="iot-analytics-connector-data-input"></a>

このコネクタは、事前定義またはお客様定義の MQTT トピックでデータを受け入れます。発行者は、クライアントデバイス、Lambda 関数、またはその他のコネクタとすることができます。

事前定義されたトピック  
コネクタは、発行者がチャネル名をインラインで定義できる、次の 2 つの構造化された MQTT トピックをサポートします。  
+ `iotanalytics/channels/+/messages/put` トピックの[フォーマットされたメッセージ](#iot-analytics-connector-data-input-json) これらの入力メッセージの IoT データは、JSON または base64 でエンコードされた文字列としてフォーマットされる必要があります。
+ `iotanalytics/channels/+/messages/binary/put` トピックのフォーマットされていないメッセージ このトピックで受信された入力メッセージはバイナリデータとして扱われ、任意のデータ型を含めることができます。

  事前定義されたトピックに発行するには、`+` ワイルドカードをチャンネル名で置き換えます。例:

  ```
  iotanalytics/channels/my_channel/messages/put
  ```

お客様定義のトピック  
コネクタは `#` トピック構文をサポートします。これにより、サブスクリプションで設定する任意の MQTT トピックで入力メッセージを受け入れることができます。サブスクリプションでは、`#` ワイルドカードのみを使用する代わりに、トピックパスを指定することをお勧めします。これらのメッセージは、コネクタに指定したデフォルトのチャネルに送信されます。  
お客様定義のトピックの入力メッセージはバイナリデータとして処理されます。任意のメッセージ形式を使用し、任意のデータ型を含めることができます。お客様定義のトピックを使用すると、固定されたトピックに発行するデバイスからメッセージをルーティングできます。また、それらのトピックを使用して、データを処理できないクライアントデバイスから入力データをフォーマットされたメッセージに受け入れ、コネクタに送信することもできます。  
サブスクリプションと MQTT トピックの詳細については、「[入力と出力](connectors.md#connectors-inputs-outputs)」を参照してください。

グループロールは、すべての送信先チャネルで `iotanalytics:BatchPutMessage` アクションを許可する必要があります。詳細については、「[要件](#iot-analytics-connector-req)」を参照してください。

**トピックのフィルター:** `iotanalytics/channels/+/messages/put`  <a name="iot-analytics-connector-data-input-json"></a>
このトピックを使用して、フォーマットされたメッセージをコネクタに送信し、動的に送信先チャネルを指定します。このトピックでは、応答出力で返される ID を指定することもできます。コネクタは、送信先のアウトバウンド`BatchPutMessage`リクエスト内のメッセージごとに IDs が一意であることを確認します AWS IoT Analytics。ID が重複しているメッセージは削除されます。  
このトピックに送信される入力データは、次のメッセージ形式を使用します。    
**メッセージのプロパティ**    
`request`  
指定されたチャンネルに送信するデータ。  
必須: `true`  
型: 以下のプロパティを含む `object`。    
`message`  
デバイスまたはセンサーデータ (JSON または base64 でエンコードされた文字列)。  
必須: `true`  
型: `string`  
`id`  
リクエストの任意の ID。このプロパティは、入力リクエストを出力レスポンスにマッピングするために使用します。指定すると、レスポンスオブジェクトの `id` プロパティがこの値に設定されます。このプロパティを省略する場合は、コネクタによって ID が生成されます。  
必須: `false`  
型: `string`  
有効なパターン: `.*`  
**入力例**  

```
{
    "request": {
        "message" : "{\"temp\":23.33}"
    },
    "id" : "req123"
}
```

**トピックのフィルター:** `iotanalytics/channels/+/messages/binary/put`  
このトピックを使用して、フォーマットされていないメッセージをコネクタに送信し、動的に送信先チャネルを指定します。  
コネクタのデータにより、このトピックで受信された入力メッセージは解析されません。これは、バイナリデータとして扱われます。メッセージを送信する前に AWS IoT Analytics、コネクタは `BatchPutMessage` API 要件に準拠するようにメッセージをエンコードしてフォーマットします。  
+ コネクタは base64 で raw データをエンコードし、エンコードされたペイロードをアウトバウンド `BatchPutMessage` リクエストに含めます。
+ コネクタは ID を生成し、各入力メッセージに割り当てます。
**注記**  
コネクタのレスポンス出力には、これらの入力メッセージの ID 相関は含まれません。  
**メッセージのプロパティ**  
なし。

**トピックのフィルター:** `#`  
このトピックを使用して、任意のメッセージ形式をデフォルトのチャネルに送信します。これが特に役立つのは、クライアントデバイスが固定されたトピックに発行するときや、コネクタで[サポートされているメッセージ形式](#iot-analytics-connector-data-input-json)にデータを処理できないクライアントデバイスからデフォルトのチャネルにデータを送信する場合です。  
トピック構文は、このコネクタをデータソースに接続するために作成するサブスクリプションで定義します。サブスクリプションでは、`#` ワイルドカードのみを使用する代わりに、トピックパスを指定することをお勧めします。  
コネクタのデータにより、この入力トピックに公開されるメッセージは解析されません。すべての入力メッセージはバイナリデータとして扱われます。メッセージを送信する前に AWS IoT Analytics、コネクタは `BatchPutMessage` API 要件に準拠するようにメッセージをエンコードしてフォーマットします。  
+ コネクタは base64 で raw データをエンコードし、エンコードされたペイロードをアウトバウンド `BatchPutMessage` リクエストに含めます。
+ コネクタは ID を生成し、各入力メッセージに割り当てます。
**注記**  
コネクタのレスポンス出力には、これらの入力メッセージの ID 相関は含まれません。  
**メッセージのプロパティ**  
なし。

## 出力データ
<a name="iot-analytics-connector-data-output"></a>

このコネクタは、MQTT トピックの出力データとしてステータス情報を発行します。この情報には、 が受信して送信する入力メッセージ AWS IoT Analytics ごとに から返されるレスポンスが含まれます AWS IoT Analytics。

<a name="topic-filter"></a>**サブスクリプションのトピックフィルター**  
`iotanalytics/messages/put/status`

**出力例: 成功**  

```
{
    "response" : {
        "status" : "success"
    },
    "id" : "req123"
}
```

**出力例: 失敗**  

```
{
    "response" : {
        "status" : "fail",
        "error" : "ResourceNotFoundException",
        "error_message" : "A resource with the specified name could not be found."
    },
    "id" : "req123"
}
```
コネクタが再試行可能なエラー (接続エラーなど) を検出した場合は、次のバッチ処理で再発行を試します。エクスポネンシャルバックオフは AWS SDK によって処理されます。再試行可能なエラーが発生したリクエストは、チャネルキューに再度追加され、`IotAnalyticsQueueDropBehavior` パラメータに従ってさらに発行できます。

## 使用例
<a name="iot-analytics-connector-usage"></a>

<a name="connectors-setup-intro"></a>コネクタの試用に利用できる Python 3.7 Lambda 関数の例を設定するには、次のステップ (概要) を使用します。

**注記**  <a name="connectors-setup-get-started-topics"></a>
他の Python ランタイムを使用する場合は、Python 3.x から Python 3.7 へのシンボリックリンクを作成します。
「[コネクタの使用を開始する (コンソール)](connectors-console.md)」および「[コネクタの使用を開始する (CLI)](connectors-cli.md)」トピックには、Twilio 通知コネクタの例を設定およびデプロイする方法を示す詳細なステップが含まれています。

1. コネクタの[要件](#iot-analytics-connector-req)を満たしていることを確認します。

   <a name="set-up-group-role"></a>グループロール要件では、必要なアクセス許可を付与するようにロールを設定し、ロールがグループに追加されていることを確認する必要があります。詳細については、[Greengrass グループロールの管理 (コンソール)](group-role.md#manage-group-role-console)または[Greengrass グループロールの管理 (CLI)](group-role.md#manage-group-role-cli)を参照してください。

1. <a name="connectors-setup-function"></a>入力データをコネクタに送信する Lambda 関数を作成して発行します。

   [サンプルコード](#iot-analytics-connector-usage-example)を PY ファイルとして保存します。<a name="connectors-setup-function-sdk"></a>[AWS IoT Greengrass Core SDK for Python](lambda-functions.md#lambda-sdks-core) をダウンロードして解凍します。次に、PY ファイルとルートレベルの `greengrasssdk` フォルダを含む zip パッケージを作成します。この zip パッケージは、 AWS Lambdaにアップロードするデプロイパッケージです。

   <a name="connectors-setup-function-publish"></a>Python 3.7 Lambda 関数を作成したら、関数バージョンを公開し、エイリアスを作成します。

1. Greengrass グループを設定します。

   1. <a name="connectors-setup-gg-function"></a>エイリアスで Lambda 関数を追加します (推奨)。Lambda ライフサイクルを長期間有効に (または CLI で `"Pinned": true` に) 設定します。

   1. コネクタを追加し、その[パラメータ](#iot-analytics-connector-param)を設定します。

   1. コネクタが[入力データ](#iot-analytics-connector-data-input)を受信し、サポートされているトピックフィルターで[出力データ](#iot-analytics-connector-data-output)を送信できるようにするサブスクリプションを追加します。
      + <a name="connectors-setup-subscription-input-data"></a>Lambda 関数をソースに、コネクタをターゲットに設定し、サポートされている入力トピックフィルターを使用します。
      + <a name="connectors-setup-subscription-output-data"></a>コネクタをソースとして、 AWS IoT Core をターゲットとして設定し、サポートされている出力トピックフィルターを使用します。このサブスクリプションを使用して、 AWS IoT コンソールでステータスメッセージを表示します。

1. <a name="connectors-setup-deploy-group"></a>グループをデプロイします。

1. <a name="connectors-setup-test-sub"></a> AWS IoT コンソールの**テスト**ページで、出力データトピックをサブスクライブして、コネクタからのステータスメッセージを表示します。この例の Lambda 関数は長期間有効であり、グループがデプロイされた直後にメッセージの送信を開始します。

   テストが終了したら、Lambda ライフサイクルをオンデマンドに (または CLI で `"Pinned": false` に) 設定して、グループをデプロイできます。これにより、関数がメッセージの送信を停止します。

### 例
<a name="iot-analytics-connector-usage-example"></a>

次の例では、Lambda 関数で入力メッセージをコネクタに送信します。

```
import greengrasssdk
import time
import json
 
iot_client = greengrasssdk.client('iot-data')
send_topic = 'iotanalytics/channels/my_channel/messages/put'
 
def create_request_with_all_fields():
    return  {
        "request": {
            "message" : "{\"temp\":23.33}"
        },
        "id" : "req_123"
    }
 
def publish_basic_message():
    messageToPublish = create_request_with_all_fields()
    print("Message To Publish: ", messageToPublish)
    iot_client.publish(topic=send_topic,
        payload=json.dumps(messageToPublish))
 
publish_basic_message()
 
def lambda_handler(event, context):
    return
```

## 制限
<a name="iot-analytics-connector-limits"></a>

このコネクタには、次の制限が適用されます。
+ [https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iotanalytics.html#IoTAnalytics.Client.batch_put_message](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iotanalytics.html#IoTAnalytics.Client.batch_put_message) アクション AWS SDK for Python (Boto3) に対して によって課される AWS IoT Analytics すべての制限。
+  AWS IoT Analytics [ BatchPutMessage](https://docs.aws.amazon.com/iotanalytics/latest/userguide/api.html#cli-iotanalytics-batchputmessage) API によって課されるすべてのクォータ。詳細については、の「 の [ Service Quotas](https://docs.aws.amazon.com/general/latest/gr/iot-analytics.html#limits_iot_analytics) AWS IoT Analytics 」を参照してください*AWS 全般のリファレンス*。
  + チャネルごとに 1 秒あたり 100,000 件のメッセージ。
  + バッチごとに 100 件のメッセージ。
  + メッセージごとに 128 KB。

  この API では、チャネル名 (チャネル ARN ではありません) を使用するため、クロスリージョンまたはクロスアカウントチャネルへのデータの送信はサポートされません。
+  AWS IoT Greengrass Core によって課されるすべてのクォータ。詳細については、 の AWS IoT Greengrass 「コアの [ Service Quotas](https://docs.aws.amazon.com/general/latest/gr/greengrass.html#limits_greengrass)」を参照してください*AWS 全般のリファレンス*。

  特に、以下のクォータが適用されます。
  + デバイスによって送信されるメッセージの最大サイズは 128 KB です。
  + Greengrass コアルーターのメッセージキューの最大サイズは、2.5 MB です。
  + トピック文字列の最大長は、UTF-8 エンコード文字で 256 バイトです。

## ライセンス
<a name="iot-analytics-connector-license"></a>

IoT Analytics コネクタには、以下のサードパーティーのソフトウェアおよびライセンスが含まれています。<a name="boto-3-licenses"></a>
+ [AWS SDK for Python (Boto3)](https://pypi.org/project/boto3/)/Apache License 2.0
+ [botocore](https://pypi.org/project/botocore/)/Apache License 2.0
+ [dateutil](https://pypi.org/project/python-dateutil/1.4/)/PSF ライセンス
+ [docutils](https://pypi.org/project/docutils/)/BSD ライセンス、GNU 一般パブリックライセンス (GPL)、Python Software Foundation ライセンス、パブリックドメイン
+ [jmespath](https://pypi.org/project/jmespath/)/MIT ライセンス
+ [s3transfer](https://pypi.org/project/s3transfer/)/Apache License 2.0
+ [urllib3](https://pypi.org/project/urllib3/)/MIT ライセンス

このコネクタは、[Greengrass Core ソフトウェアライセンス契約](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf)に従ってリリースされます。

## 変更ログ
<a name="iot-analytics-connector-changelog"></a>

次の表に、コネクタの各バージョンにおける変更点を示します。


| バージョン | 変更 | 
| --- | --- | 
| 4 | コネクタのコンテナ化モードを設定するための `IsolationMode` パラメータが追加されました。 | 
| 3 | <a name="upgrade-runtime-py3.7"></a>Lambda ランタイムを Python 3.7 にアップグレードしたことで、ランタイム要件が変更。 | 
| 2 | 過剰なログ記録を減らすための修正。 | 
| 1 | 初回リリース。  | 

<a name="one-conn-version"></a>Greengrass グループには、一度に 1 つのバージョンのコネクタしか含めることができません。コネクタのバージョンのアップグレードについては、「[コネクタのバージョンのアップグレード](connectors.md#upgrade-connector-versions)」を参照してください。

## 関連情報
<a name="iot-analytics-connector-see-also"></a>
+ [Greengrass コネクタを使用したサービスおよびプロトコルとの統合](connectors.md)
+ [Greengrass コネクタの開始方法 (コンソール)](connectors-console.md)
+ [Greengrass コネクタの開始方法 (CLI)](connectors-cli.md)
+  *AWS IoT Analytics ユーザーガイド*の[「 AWS IoT Analyticsとは](https://docs.aws.amazon.com/iotanalytics/latest/userguide/welcome.html)」