OTA 更新のための CloudWatch Logs のセットアップ - FreeRTOS

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

OTA 更新のための CloudWatch Logs のセットアップ

OTA 更新サービスは、Amazon CloudWatch でのログ記録をサポートしています。AWS IoT コンソールを使用して、OTA 更新の Amazon CloudWatch ログ記録を有効化し、設定することができます。詳細については、Cloudwatch Logs を参照してください。

ログ記録を有効にするには、IAM ロールを作成し、OTA 更新ログを設定する必要があります。

注記

OTA 更新ログ記録を有効にする前に、CloudWatch Logs へのアクセス権限を理解しておく必要があります。CloudWatch Logs に対するアクセス権限のあるユーザーは、デバッグ情報を表示できます。詳細については、「Amazon CloudWatch Logs の認証とアクセスコントロール」を参照してください。

ログ記録ロールの作成およびログ記録の有効化

AWS IoT コンソールを使用して、ログ記録ロールを作成し、ログ記録を有効にします。

  1. ナビゲーションパネルから [Settings (設定)] を選択します。

  2. [Logs (ログ)] の下で、[Edit (編集)] を選択します。

  3. [Level of verbosity (詳細レベル)] の下で、[Debug (デバッグ)] を選択します。

  4. [Set role] (ロールの設定) で、[Create new] (新規作成) を選択し、ログ記録用に IAM ロールを作成します。

  5. [Name (名前)] の下にロールの一意の名前を入力します。必要なすべての権限でロールが作成されます。

  6. [更新] を選択します。

OTA 更新ログ

OTA 更新サービスは、以下のいずれかが発生するとアカウントにログを生成します。

  • OTA 更新が作成される。

  • OTA 更新が完了する。

  • コード署名ジョブが作成される。

  • コード署名ジョブが完了する。

  • AWS IoT ジョブが作成される。

  • AWS IoT ジョブが完了する。

  • ストリームが作成される。

CloudWatch コンソールでログを表示できます。

CloudWatch Logs で OTA 更新を表示するには
  1. ナビゲーションペインで、[Logs (ログ)] を選択します。

  2. [ロググループ] で、[AWSIoTLogsV2] を選択します。

OTA 更新ログには、次のプロパティが含まれます。

accountId

ログが生成された AWS アカウント ID です。

actionType

ログを生成したアクションです。これは、次のいずれかの値に設定できます。

  • CreateOTAUpdate: OTA 更新が作成されました。

  • DeleteOTAUpdate: OTA 更新が削除されました。

  • StartCodeSigning: コード署名ジョブが開始されました。

  • CreateAWSJob: AWS IoT ジョブが作成されました。

  • CreateStream: ストリームが作成されました。

  • GetStream: ストリームのリクエストが、AWS IoT MQTT ベースのファイル配信機能に送信されました。

  • DescribeStream: ストリームに関する情報のリクエストが、AWS IoT MQTT ベースのファイル配信機能に送信されました。

awsJobId

ログを生成した AWS IoT ジョブ ID。

clientId

ログを生成するリクエストを行った MQTT クライアント ID。

clientToken

ログを生成するリクエストに関連付けられたクライアントのトークン。

詳細

ログを生成したオペレーションに関する詳細。

logLevel

ログのログ記録レベル。OTA 更新ログの場合、これは常に DEBUG に設定されます。

otaUpdateId

ログを生成した OTA 更新の ID。

protocol

ログを生成するリクエストを行うために使用されたプロトコル。

ステータス

ログを生成したオペレーションのステータス。有効な 値は次のとおりです。

  • 成功

  • 失敗

streamId

ログを生成した AWS IoT ストリーム ID。

timestamp

ログが生成された時刻。

topicName

ログを生成するリクエストを行うために使用された MQTT トピック。

ログの例

コード署名ジョブの開始時に生成されるログの例を次に示します。

{ "timestamp": "2018-07-23 22:59:44.955", "logLevel": "DEBUG", "accountId": "123456789012", "status": "Success", "actionType": "StartCodeSigning", "otaUpdateId": "08957b03-eea3-448a-87fe-743e6891ca3a", "details": "Start code signing job. The request status is SUCCESS." }

AWS IoT ジョブの作成時に生成されるログの例を次に示します。

{ "timestamp": "2018-07-23 22:59:45.363", "logLevel": "DEBUG", "accountId": "123456789012", "status": "Success", "actionType": "CreateAWSJob", "otaUpdateId": "08957b03-eea3-448a-87fe-743e6891ca3a", "awsJobId": "08957b03-eea3-448a-87fe-743e6891ca3a", "details": "Create AWS Job The request status is SUCCESS." }

OTA 更新の作成時に生成されるログの例を次に示します。

{ "timestamp": "2018-07-23 22:59:45.413", "logLevel": "DEBUG", "accountId": "123456789012", "status": "Success", "actionType": "CreateOTAUpdate", "otaUpdateId": "08957b03-eea3-448a-87fe-743e6891ca3a", "details": "OTAUpdate creation complete. The request status is SUCCESS." }

ストリームの作成時に生成されるログの例を次に示します。

{ "timestamp": "2018-07-23 23:00:26.391", "logLevel": "DEBUG", "accountId": "123456789012", "status": "Success", "actionType": "CreateStream", "otaUpdateId": "3d3dc5f7-3d6d-47ac-9252-45821ac7cfb0", "streamId": "6be2303d-3637-48f0-ace9-0b87b1b9a824", "details": "Create stream. The request status is SUCCESS." }

OTA 更新の削除時に生成されるログの例を次に示します。

{ "timestamp": "2018-07-23 23:03:09.505", "logLevel": "DEBUG", "accountId": "123456789012", "status": "Success", "actionType": "DeleteOTAUpdate", "otaUpdateId": "9bdd78fb-f113-4001-9675-1b595982292f", "details": "Delete OTA Update. The request status is SUCCESS." }

デバイスが MQTT ベースのファイル配信機能からストリームをリクエストしたときに生成されるログの例を次に示します。

{ "timestamp": "2018-07-25 22:09:02.678", "logLevel": "DEBUG", "accountId": "123456789012", "status": "Success", "actionType": "GetStream", "protocol": "MQTT", "clientId": "b9d2e49c-94fe-4ed1-9b07-286afed7e4c8", "topicName": "$aws/things/b9d2e49c-94fe-4ed1-9b07-286afed7e4c8/streams/1e51e9a8-9a4c-4c50-b005-d38452a956af/get/json", "streamId": "1e51e9a8-9a4c-4c50-b005-d38452a956af", "details": "The request status is SUCCESS." }

デバイスが DescribeStream API を呼び出すときに生成されるログの例を次に示します。

{ "timestamp": "2018-07-25 22:10:12.690", "logLevel": "DEBUG", "accountId": "123456789012", "status": "Success", "actionType": "DescribeStream", "protocol": "MQTT", "clientId": "581075e0-4639-48ee-8b94-2cf304168e43", "topicName": "$aws/things/581075e0-4639-48ee-8b94-2cf304168e43/streams/71c101a8-bcc5-4929-9fe2-af563af0c139/describe/json", "streamId": "71c101a8-bcc5-4929-9fe2-af563af0c139", "clientToken": "clientToken", "details": "The request status is SUCCESS." }