를 사용한 Device Advisor 예제 AWS CLI - AWS Command Line Interface

이 설명서는 의 버전 1 AWS CLI 전용입니다. 의 버전 2와 관련된 설명서는 버전 2 사용 설명서 를 AWS CLI참조하세요.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

를 사용한 Device Advisor 예제 AWS CLI

다음 코드 예제에서는 Device Advisor AWS Command Line Interface 와 함께 를 사용하여 작업을 수행하고 일반적인 시나리오를 구현하는 방법을 보여줍니다.

작업은 대규모 프로그램에서 발췌한 코드이며 컨텍스트에 맞춰 실행해야 합니다. 작업은 개별 서비스 함수를 직접적으로 호출하는 방법을 보여주며 관련 시나리오의 컨텍스트에 맞는 작업을 볼 수 있습니다.

각 예제에는 컨텍스트에서 코드를 설정하고 실행하는 방법에 대한 지침을 찾을 수 있는 전체 소스 코드에 대한 링크가 포함되어 있습니다.

주제

작업

다음 코드 예시에서는 create-suite-definition을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: IoT Device Advisor 테스트 제품군 생성

다음 create-suite-definition 예제에서는 지정된 제품군 정의 구성을 사용하여 AWS IoT에 디바이스 어드바이저 테스트 제품군을 생성합니다.

aws iotdeviceadvisor create-suite-definition \ --suite-definition-configuration '{ \ "suiteDefinitionName": "TestSuiteName", \ "devices": [{"thingArn":"arn:aws:iot:us-east-1:123456789012:thing/MyIotThing"}], \ "intendedForQualification": false, \ "rootGroup": "{\"configuration\":{},\"tests\":[{\"name\":\"MQTT Connect\",\"configuration\":{\"EXECUTION_TIMEOUT\":120},\"tests\":[{\"name\":\"MQTT_Connect\",\"configuration\":{},\"test\":{\"id\":\"MQTT_Connect\",\"testCase\":null,\"version\":\"0.0.0\"}}]}]}", \ "devicePermissionRoleArn": "arn:aws:iam::123456789012:role/Myrole"}'

출력:

{ "suiteDefinitionId": "0jtsgio7yenu", "suiteDefinitionArn": "arn:aws:iotdeviceadvisor:us-east-1:123456789012:suitedefinition/0jtsgio7yenu", "suiteDefinitionName": "TestSuiteName", "createdAt": "2022-12-02T11:38:13.263000-05:00" }

자세한 내용은 AWS IoT Core 개발자 안내서테스트 제품군 정의 생성을 참조하세요.

예제 2: IoT Device Advisor 최신 자격 테스트 제품군 생성

다음 create-suite-definition 예제에서는 지정된 제품군 정의 구성으로 AWS IoT의 최신 버전을 사용하여 디바이스 어드바이저 자격 테스트 제품군을 생성합니다.

aws iotdeviceadvisor create-suite-definition \ --suite-definition-configuration '{ \ "suiteDefinitionName": "TestSuiteName", \ "devices": [{"thingArn":"arn:aws:iot:us-east-1:123456789012:thing/MyIotThing"}], \ "intendedForQualification": true, \ "rootGroup": "", \ "devicePermissionRoleArn": "arn:aws:iam::123456789012:role/Myrole"}'

출력:

{ "suiteDefinitionId": "txgsuolk2myj", "suiteDefinitionArn": "arn:aws:iotdeviceadvisor:us-east-1:123456789012:suitedefinition/txgsuolk2myj", "suiteDefinitionName": "TestSuiteName", "createdAt": "2022-12-02T11:38:13.263000-05:00" }

자세한 내용은 AWS IoT Core 개발자 안내서테스트 제품군 정의 생성을 참조하세요.

다음 코드 예시에서는 delete-suite-definition을 사용하는 방법을 보여 줍니다.

AWS CLI

IoT Device Advisor 테스트 제품군을 삭제하려면

다음 delete-suite-definition 예제에서는 지정된 제품군 정의 ID가 있는 디바이스 어드바이저 테스트 제품군을 삭제합니다.

aws iotdeviceadvisor delete-suite-definition \ --suite-definition-id 0jtsgio7yenu

이 명령은 출력을 생성하지 않습니다.

자세한 내용은 IoT 참조DeleteSuiteDefinition의 섹션을 참조하세요. AWS IoT API

다음 코드 예시에서는 get-endpoint을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: IoT Device Advisor 계정 수준 엔드포인트에 대한 정보를 가져오려면

다음 get-endpoint 예제에서는 디바이스 어드바이저 계정 수준 테스트 엔드포인트에 대한 정보를 가져옵니다.

aws iotdeviceadvisor get-endpoint

출력:

{ "endpoint": "t6y4c143x9sfo.deviceadvisor.iot.us-east-1.amazonaws.com" }

예제 2: IoT Device Advisor Device-level 엔드포인트에 대한 정보를 가져오려면

다음 get-endpoint 예제에서는 지정된 사물 배열 또는 인증서 배열을 사용하는 디바이스 어드바이저 디바이스 수준 테스트 엔드포인트에 대한 정보를 가져옵니다.

aws iotdeviceadvisor get-endpoint \ --thing-arn arn:aws:iot:us-east-1:123456789012:thing/MyIotThing

출력:

{ "endpoint": "tdb7719be5t6y4c143x9sfo.deviceadvisor.iot.us-east-1.amazonaws.com" }

자세한 내용은 AWS IoT Core 개발자 안내서테스트 엔드포인트 가져오기를 참조하세요.

  • 자세한 API 내용은 명령 참조GetEndpoint의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 get-suite-definition을 사용하는 방법을 보여 줍니다.

AWS CLI

IoT Device Advisor 테스트 제품군에 대한 정보를 가져오려면

다음 get-suite-definition 예제에서는 지정된 제품군 정의 ID가 있는 Aevice Advisor 테스트 제품군에 대한 정보를 가져옵니다.

aws iotdeviceadvisor get-suite-definition \ --suite-definition-id qqcsmtyyjabl

출력:

{ "suiteDefinitionId": "qqcsmtyyjabl", "suiteDefinitionArn": "arn:aws:iotdeviceadvisor:us-east-1:123456789012:suitedefinition/qqcsmtyyjabl", "suiteDefinitionVersion": "v1", "latestVersion": "v1", "suiteDefinitionConfiguration": { "suiteDefinitionName": "MQTT connection", "devices": [], "intendedForQualification": false, "isLongDurationTest": false, "rootGroup": "{\"configuration\":{},\"tests\":[{\"id\":\"uta5d9j1kvwc\",\"name\":\"Test group 1\",\"configuration\":{},\"tests\":[{\"id\":\"awr8pq5vc9yp\",\"name\":\"MQTT Connect\",\"configuration\":{},\"test\":{\"id\":\"MQTT_Connect\",\"testCase\":null,\"version\":\"0.0.0\"}}]}]}", "devicePermissionRoleArn": "arn:aws:iam::123456789012:role/Myrole", "protocol": "MqttV3_1_1" }, "createdAt": "2022-11-11T22:28:52.389000-05:00", "lastModifiedAt": "2022-11-11T22:28:52.389000-05:00", "tags": {} }

자세한 내용은 AWS IoT Core 개발자 안내서테스트 제품군 정의 가져오기를 참조하세요.

  • 자세한 API 내용은 명령 참조GetSuiteDefinition의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 get-suite-run-report을 사용하는 방법을 보여 줍니다.

AWS CLI

IoT Device Advisor 적격 테스트 제품군 실행 보고서에 대한 정보를 가져오려면

다음 get-suite-run-report 예제에서는 지정된 제품군 정의 ID 및 제품군 실행 ID로 성공적인 디바이스 어드바이저 자격 테스트 제품군 실행에 대한 보고서 다운로드 링크를 가져옵니다.

aws iotdeviceadvisor get-suite-run-report \ --suite-definition-id ztvb5aek4w4x \ --suite-run-id p6awv83nre6v

출력:

{ "qualificationReportDownloadUrl": "https://senate-apn-reports-us-east-1-prod.s3.amazonaws.com/report.downloadlink" }

자세한 내용은 AWS IoT Core 개발자 안내서성공적인 자격 테스트 제품군 실행을 위한 자격 보고서 가져오기를 참조하세요.

  • 자세한 API 내용은 명령 참조GetSuiteRunReport의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 get-suite-run을 사용하는 방법을 보여 줍니다.

AWS CLI

IoT Device Advisor 테스트 제품군 실행 상태에 대한 정보를 가져오려면

다음 get-suite-run 예제에서는 지정된 제품군 정의 ID 및 제품군 실행 ID를 사용하여 디바이스 어드바이저 테스트 제품군 실행 상태에 대한 정보를 가져옵니다.

aws iotdeviceadvisor get-suite-run \ --suite-definition-id qqcsmtyyjabl \ --suite-run-id nzlfyhaa18oa

출력:

{ "suiteDefinitionId": "qqcsmtyyjabl", "suiteDefinitionVersion": "v1", "suiteRunId": "nzlfyhaa18oa", "suiteRunArn": "arn:aws:iotdeviceadvisor:us-east-1:123456789012:suiterun/qqcsmtyyjabl/nzlfyhaa18oa", "suiteRunConfiguration": { "primaryDevice": { "thingArn": "arn:aws:iot:us-east-1:123456789012:thing/MyIotThing", "certificateArn": "arn:aws:iot:us-east-1:123456789012:cert/certFile" }, "parallelRun": false }, "testResult": { "groups": [ { "groupId": "uta5d9j1kvwc", "groupName": "Test group 1", "tests": [ { "testCaseRunId": "2ve2twrqyr0s", "testCaseDefinitionId": "awr8pq5vc9yp", "testCaseDefinitionName": "MQTT Connect", "status": "PASS", "startTime": "2022-11-12T00:01:53.693000-05:00", "endTime": "2022-11-12T00:02:15.443000-05:00", "logUrl": "https://console.aws.amazon.com/cloudwatch/home?region=us-east-1#logEventViewer:group=/aws/iot/deviceadvisor/qqcsmtyyjabl;stream=nzlfyhaa18oa_2ve2twrqyr0s", "warnings": "null", "failure": "null" } ] } ] }, "startTime": "2022-11-12T00:01:52.673000-05:00", "endTime": "2022-11-12T00:02:16.496000-05:00", "status": "PASS", "tags": {} }

자세한 내용은 AWS IoT Core 개발자 안내서테스트 제품군 실행 가져오기를 참조하세요.

  • 자세한 API 내용은 명령 참조GetSuiteRun의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 list-suite-definitions을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: 생성한 IoT Device Advisor 테스트 제품군을 나열하려면

다음 list-suite-definitions 예제에서는 AWS IoT 에서 생성한 최대 25개의 디바이스 어드바이저 테스트 제품군을 나열합니다. 테스트 제품군이 25개 이상인 경우 출력에 “nextToken”가 표시됩니다. 이 “nextToken”를 사용하여 생성한 나머지 테스트 제품군을 표시할 수 있습니다.

aws iotdeviceadvisor list-suite-definitions

출력:

{ "suiteDefinitionInformationList": [ { "suiteDefinitionId": "3hsn88h4p2g5", "suiteDefinitionName": "TestSuite1", "defaultDevices": [ { "thingArn": "arn:aws:iot:us-east-1:123456789012:thing/MyIotThing" } ], "intendedForQualification": false, "isLongDurationTest": false, "protocol": "MqttV3_1_1", "createdAt": "2022-11-17T14:15:56.830000-05:00" }, { ...... } ], "nextToken": "nextTokenValue" }

예제 2: 지정된 설정으로 생성한 IoT Device Advisor 테스트 제품군을 나열하려면

다음 list-suite-definitions 예제에서는 AWS IoT에서 생성한 디바이스 어드바이저 테스트 제품군을 지정된 최대 결과 번호와 함께 나열합니다. 최대 수보다 많은 테스트 제품군이 있는 경우 출력에 “nextToken”가 표시됩니다. “nextToken”가 있는 경우 “nextToken”를 사용하여 이전에 표시되지 않은 생성한 테스트 제품군을 표시할 수 있습니다.

aws iotdeviceadvisor list-suite-definitions \ --max-result 1 \ --next-token "nextTokenValue"

출력:

{ "suiteDefinitionInformationList": [ { "suiteDefinitionId": "ztvb5aew4w4x", "suiteDefinitionName": "TestSuite2", "defaultDevices": [], "intendedForQualification": true, "isLongDurationTest": false, "protocol": "MqttV3_1_1", "createdAt": "2022-11-17T14:15:56.830000-05:00" } ], "nextToken": "nextTokenValue" }

자세한 내용은 IoT 참조ListSuiteDefinitions의 섹션을 참조하세요. AWS IoT API

다음 코드 예시에서는 list-suite-runs을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: 지정된 IoT Device Advisor 테스트 제품군 실행 상태에 대한 모든 정보를 나열하려면

다음 list-suite-runs 예제에서는 디바이스 어드바이저 테스트 제품군 실행 상태에 대한 모든 정보를 지정된 제품군 정의 ID와 함께 나열합니다. 25개 이상의 테스트 제품군이 실행되는 경우 출력에 “nextToken”가 표시됩니다. 이 “nextToken”를 사용하여 나머지 테스트 제품군 실행을 표시할 수 있습니다.

aws iotdeviceadvisor list-suite-runs \ --suite-definition-id ztvb5aew4w4x

출력:

{ "suiteRunsList": [ { "suiteDefinitionId": "ztvb5aew4w4x", "suiteDefinitionVersion": "v1", "suiteDefinitionName": "TestSuite", "suiteRunId": "p6awv89nre6v", "createdAt": "2022-12-01T16:33:14.212000-05:00", "startedAt": "2022-12-01T16:33:15.710000-05:00", "endAt": "2022-12-01T16:42:03.323000-05:00", "status": "PASS", "passed": 6, "failed": 0 } ] }

예제 2: 지정된 IoT Device Advisor 테스트 제품군 실행 상태에 대한 정보를 지정된 설정으로 나열하려면

다음 list-suite-runs 예제에서는 지정된 제품군 정의 ID와 지정된 최대 결과 번호로 디바이스 어드바이저 테스트 제품군 실행 상태에 대한 정보를 나열합니다. 최댓값보다 더 많은 테스트 제품군 실행이 있는 경우 출력에 'nextToken'가 표시됩니다. “nextToken”가 있는 경우 “nextToken”를 사용하여 이전에 표시되지 않은 테스트 제품군 실행을 표시할 수 있습니다.

aws iotdeviceadvisor list-suite-runs \ --suite-definition-id qqcsmtyyjaml \ --max-result 1 \ --next-token "nextTokenValue"

출력:

{ "suiteRunsList": [ { "suiteDefinitionId": "qqcsmtyyjaml", "suiteDefinitionVersion": "v1", "suiteDefinitionName": "MQTT connection", "suiteRunId": "gz9vm2s6d2jy", "createdAt": "2022-12-01T20:10:27.079000-05:00", "startedAt": "2022-12-01T20:10:28.003000-05:00", "endAt": "2022-12-01T20:10:45.084000-05:00", "status": "STOPPED", "passed": 0, "failed": 0 } ], "nextToken": "nextTokenValue" }

자세한 내용은 IoT 참조ListSuiteRuns의 섹션을 참조하세요. AWS IoT API

  • 자세한 API 내용은 명령 참조ListSuiteRuns의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 list-tags-for-resource을 사용하는 방법을 보여 줍니다.

AWS CLI

IoT Device Advisor 리소스에 연결된 태그를 나열하려면

다음 list-tags-for-resource 예제에서는 디바이스 어드바이저 리소스에 연결된 태그를 나열합니다. 디바이스 어드바이저 리소스는 Suitedefinition-Arn 또는 Suiterun-Arn일 수 있습니다.

aws iotdeviceadvisor list-tags-for-resource \ --resource-arn arn:aws:iotdeviceadvisor:us-east-1:123456789012:suitedefinition/ba0uyjpg38ny

출력:

{ "tags": { "TestTagKey": "TestTagValue" } }

자세한 내용은 서비스 승인 참조ListTagsForResource의 IoT Core Device Advisor에서 정의한 AWS IoT 참조 및 리소스 유형의 섹션을 참조하세요. AWS IoT API

  • 자세한 API 내용은 명령 참조ListTagsForResource의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 start-suite-run을 사용하는 방법을 보여 줍니다.

AWS CLI

IoT Device Advisor 테스트 제품군 실행을 시작하려면

다음 start-suite-run 예제에서는 AWS 계정에서 사용 가능한 위젯을 나열합니다.

aws iotdeviceadvisor start-suite-run \ --suite-definition-id qqcsmtyyjabl \ --suite-definition-version v1 \ --suite-run-configuration '{"primaryDevice":{"thingArn": "arn:aws:iot:us-east-1:123456789012:thing/MyIotThing","certificateArn":"arn:aws:iot:us-east-1:123456789012:cert/certFile"}}'

출력:

{ "suiteRunId": "pwmucgw7lt9s", "suiteRunArn": "arn:aws:iotdeviceadvisor:us-east-1:123456789012:suiterun/qqcsmtyyjabl/pwmucgw7lk9s", "createdAt": "2022-12-02T15:43:05.581000-05:00" }

자세한 내용은 AWS IoT Core 개발자 안내서테스트 제품군 실행 시작을 참조하세요.

  • 자세한 API 내용은 명령 참조StartSuiteRun의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 stop-suite-run을 사용하는 방법을 보여 줍니다.

AWS CLI

현재 실행 중인 IoT Device Advisor 테스트 제품군을 중지하려면

다음 stop-suite-run 예제에서는 지정된 제품군 정의 ID 및 제품군 실행 ID로 현재 실행 중인 Device Advisor 테스트 제품군을 중지합니다.

aws iotdeviceadvisor stop-suite-run \ --suite-definition-id qqcsmtyyjabl \ --suite-run-id nzlfyhaa18oa

이 명령은 출력을 생성하지 않습니다.

자세한 내용은 AWS IoT Core 개발자 안내서테스트 제품군 실행 중지를 참조하세요.

  • 자세한 API 내용은 명령 참조StopSuiteRun의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 tag-resource을 사용하는 방법을 보여 줍니다.

AWS CLI

IoT Device Advisor 리소스의 기존 태그를 에 추가하고 수정하려면

다음 tag-resource 예제에서는 지정된 리소스 arn 및 태그를 사용하여 디바이스 어드바이저 리소스의 기존 태그를 에 추가하고 수정합니다. 디바이스 어드바이저 리소스는 Suitedefinition-Arn 또는 Suiterun-Arn일 수 있습니다.

aws iotdeviceadvisor tag-resource \ --resource-arn arn:aws:iotdeviceadvisor:us-east-1:123456789012:suitedefinition/ba0uyjpg38ny \ --tags '{"TagKey": "TagValue"}'

이 명령은 출력을 생성하지 않습니다.

자세한 내용은 서비스 승인 참조TagResource의 IoT Core Device Advisor에서 정의한 AWS IoT 참조 및 리소스 유형의 섹션을 참조하세요. AWS IoT API

  • 자세한 API 내용은 명령 참조TagResource의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 untag-resource을 사용하는 방법을 보여 줍니다.

AWS CLI

IoT Device Advisor 리소스에서 기존 태그를 제거하려면

다음 untag-resource 예제에서는 지정된 리소스 arn 및 태그 키를 사용하여 디바이스 어드바이저 리소스에서 기존 태그를 제거합니다. 디바이스 어드바이저 리소스는 Suitedefinition-Arn 또는 Suiterun-Arn일 수 있습니다.

aws iotdeviceadvisor untag-resource \ --resource-arn arn:aws:iotdeviceadvisor:us-east-1:123456789012:suitedefinition/ba0uyjpg38ny \ --tag-keys "TagKey"

이 명령은 출력을 생성하지 않습니다.

자세한 내용은 서비스 승인 참조UntagResource의 IoT Core Device Advisor에서 정의한 AWS IoT 참조 및 리소스 유형에서 섹션을 참조하세요. AWS IoT API

  • 자세한 API 내용은 명령 참조UntagResource의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 update-suite-definition을 사용하는 방법을 보여 줍니다.

AWS CLI

예제 1: IoT Device Advisor 테스트 제품군 업데이트

다음 update-suite-definition 예제에서는 AWS IoT의 디바이스 어드바이저 테스트 제품군을 지정된 제품군 정의 ID 및 제품군 정의 구성으로 업데이트합니다.

aws iotdeviceadvisor update-suite-definition \ --suite-definition-id 3hsn88h4p2g5 \ --suite-definition-configuration '{ \ "suiteDefinitionName": "TestSuiteName", \ "devices": [{"thingArn":"arn:aws:iot:us-east-1:123456789012:thing/MyIotThing"}], \ "intendedForQualification": false, \ "rootGroup": "{\"configuration\":{},\"tests\":[{\"name\":\"MQTT Connect\",\"configuration\":{\"EXECUTION_TIMEOUT\":120},\"tests\":[{\"name\":\"MQTT_Connect\",\"configuration\":{},\"test\":{\"id\":\"MQTT_Connect\",\"testCase\":null,\"version\":\"0.0.0\"}}]}]}", \ "devicePermissionRoleArn": "arn:aws:iam::123456789012:role/Myrole"}'

출력:

{ "suiteDefinitionId": "3hsn88h4p2g5", "suiteDefinitionName": "TestSuiteName", "suiteDefinitionVersion": "v3", "createdAt": "2022-11-17T14:15:56.830000-05:00", "lastUpdatedAt": "2022-12-02T16:02:45.857000-05:00" }

예제 2: IoT Device Advisor 자격 테스트 제품군 업데이트

다음 update-suite-definition 예제에서는 AWS IoT의 디바이스 어드바이저 자격 테스트 제품군을 지정된 제품군 정의 ID 및 제품군 정의 구성으로 업데이트합니다.

aws iotdeviceadvisor update-suite-definition \ --suite-definition-id txgsuolk2myj \ --suite-definition-configuration '{ "suiteDefinitionName": "TestSuiteName", \ "devices": [{"thingArn":"arn:aws:iot:us-east-1:123456789012:thing/MyIotThing"}], \ "intendedForQualification": true, \ "rootGroup": "", \ "devicePermissionRoleArn": "arn:aws:iam::123456789012:role/Myrole"}'

출력:

{ "suiteDefinitionId": "txgsuolk2myj", "suiteDefinitionName": "TestSuiteName", "suiteDefinitionVersion": "v3", "createdAt": "2022-11-17T14:15:56.830000-05:00", "lastUpdatedAt": "2022-12-02T16:02:45.857000-05:00" }

자세한 내용은 IoT 참조UpdateSuiteDefinition의 섹션을 참조하세요. AWS IoT API