기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
CloudWatch 로그 AWS IoT 로그 항목
의 각 구성 요소는 자체 로그 항목을 AWS IoT 생성합니다. 각 로그 항목에는 로그 항목이 생성되도록 한 작업을 지정하는 eventType
이 있습니다. 이번 단원에서는 다음 AWS IoT
구성 요소에서 작성되는 로그 항목에 대해 설명합니다.
주제
메시지 브로커 로그 항목
AWS IoT 메시지 브로커는 다음 이벤트에 대한 로그 항목을 생성합니다.
주제
Connect 로그 항목
AWS IoT 메시지 브로커는 MQTT 클라이언트가 연결될 eventType
Connect
때 꺼진 상태로 로그 항목을 생성합니다.
Connect 로그 항목 예제
{ "timestamp": "2017-08-10 15:37:23.476", "logLevel": "INFO", "traceId": "20b23f3f-d7f1-feae-169f-82263394fbdb", "accountId": "123456789012", "status": "Success", "eventType": "Connect", "protocol": "MQTT", "clientId": "abf27092886e49a8a5c1922749736453", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "205.251.233.181", "sourcePort": 13490 }
일반 CloudWatch 로그 속성 뿐만 아니라 Connect
로그 항목에는 다음과 같은 속성이 포함됩니다.
- clientId
-
요청하는 클라이언트의 ID입니다.
- principalId
-
요청하는 보안 주체의 ID입니다.
- 프로토콜
-
요청에 사용된 프로토콜. 유효한 값은
MQTT
또는HTTP
입니다. - sourceIp
-
요청이 시작된 IP 주소입니다.
- sourcePort
-
요청이 시작된 포트입니다.
Disconnect 로그 항목
AWS IoT 메시지 브로커는 MQTT 클라이언트 연결이 끊길 Disconnect
때 eventType
꺼진 상태로 로그 항목을 생성합니다.
Disconnect 로그 항목 예제
{ "timestamp": "2017-08-10 15:37:23.476", "logLevel": "INFO", "traceId": "20b23f3f-d7f1-feae-169f-82263394fbdb", "accountId": "123456789012", "status": "Success", "eventType": "Disconnect", "protocol": "MQTT", "clientId": "abf27092886e49a8a5c1922749736453", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "205.251.233.181", "sourcePort": 13490, "reason": "DUPLICATE_CLIENT_ID", "details": "A new connection was established with the same client ID", "disconnectReason": "CLIENT_INITIATED_DISCONNECT" }
일반 CloudWatch 로그 속성 뿐만 아니라 Disconnect
로그 항목에는 다음과 같은 속성이 포함됩니다.
- clientId
-
요청하는 클라이언트의 ID입니다.
- principalId
-
요청하는 보안 주체의 ID입니다.
- 프로토콜
-
요청에 사용된 프로토콜. 유효한 값은
MQTT
또는HTTP
입니다. - sourceIp
-
요청이 시작된 IP 주소입니다.
- sourcePort
-
요청이 시작된 포트입니다.
- reason
-
클라이언트가 연결을 해제하는 이유입니다.
- details
-
오류에 대한 간단한 설명입니다.
- disconnectReason
-
클라이언트가 연결을 해제하는 이유입니다.
GetRetainedMessage 로그 항목
AWS IoT 메시지 브로커는 호출 GetRetainedMessage
시 GetRetainedMessage
값이 있는 로그 항목을 생성합니다. eventType
GetRetainedMessage 로그 입력 예제
{ "timestamp": "2017-08-07 18:47:56.664", "logLevel": "INFO", "traceId": "1a60d02e-15b9-605b-7096-a9f584a6ad3f", "accountId": "123456789012", "status": "Success", "eventType": "GetRetainedMessage", "protocol": "HTTP", "topicName": "a/b/c", "qos": "1", "lastModifiedDate": "2017-08-07 18:47:56.664" }
일반 CloudWatch 로그 속성 뿐만 아니라 GetRetainedMessage
로그 항목에는 다음과 같은 속성이 포함됩니다.
- 마지막 ModifiedDate
-
보존된 메시지를 저장한 Epoch 날짜 및 시간 (밀리초) AWS IoT
- 프로토콜
-
요청에 사용된 프로토콜. 유효한 값:
HTTP
. - qos
-
게시 요청에 사용되는 서비스 품질(QoS) 수준입니다. 유효한 값은
0
또는1
입니다. - topicName
-
구독하는 주제의 이름입니다.
ListRetainedMessage 로그 입력
AWS IoT 메시지 브로커는 호출 ListRetainedMessage
시 ListRetainedMessages
값이 있는 로그 항목을 생성합니다. eventType
ListRetainedMessage 로그 입력 예제
{ "timestamp": "2017-08-07 18:47:56.664", "logLevel": "INFO", "traceId": "1a60d02e-15b9-605b-7096-a9f584a6ad3f", "accountId": "123456789012", "status": "Success", "eventType": "ListRetainedMessage", "protocol": "HTTP" }
일반 CloudWatch 로그 속성 뿐만 아니라 ListRetainedMessage
로그 항목에는 다음과 같은 속성이 포함됩니다.
- 프로토콜
-
요청에 사용된 프로토콜. 유효한 값:
HTTP
.
Publish-In 로그 항목
AWS IoT 메시지 브로커는 MQTT 메시지를 수신하면 o가 포함된 로그 항목을 생성합니다. eventType
Publish-In
Publish-In 로그 항목 예제
{ "timestamp": "2017-08-10 15:39:30.961", "logLevel": "INFO", "traceId": "672ec480-31ce-fd8b-b5fb-22e3ac420699", "accountId": "123456789012", "status": "Success", "eventType": "Publish-In", "protocol": "MQTT", "topicName": "$aws/things/MyThing/shadow/get", "clientId": "abf27092886e49a8a5c1922749736453", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "205.251.233.181", "sourcePort": 13490, "retain": "True" }
일반 CloudWatch 로그 속성 뿐만 아니라 Publish-In
로그 항목에는 다음과 같은 속성이 포함됩니다.
- clientId
-
요청하는 클라이언트의 ID입니다.
- principalId
-
요청하는 보안 주체의 ID입니다.
- 프로토콜
-
요청에 사용된 프로토콜. 유효한 값은
MQTT
또는HTTP
입니다. - retain
-
메시지에 RETAIN 플래그가
True
값으로 설정되어 있을 때 사용되는 속성입니다. 메시지에 RETAIN 플래그가 설정되어 있지 않으면 이 속성은 로그 항목에 나타나지 않습니다. 자세한 정보는 MQTT 보존 메시지을 참조하세요. - sourceIp
-
요청이 시작된 IP 주소입니다.
- sourcePort
-
요청이 시작된 포트입니다.
- topicName
-
구독하는 주제의 이름입니다.
Publish-Out 로그 항목
메시지 브로커는 MQTT 메시지를 게시하면 eventType
이 Publish-Out
인 로그 항목을 생성합니다.
Publish-Out 로그 항목 예제
{ "timestamp": "2017-08-10 15:39:30.961", "logLevel": "INFO", "traceId": "672ec480-31ce-fd8b-b5fb-22e3ac420699", "accountId": "123456789012", "status": "Success", "eventType": "Publish-Out", "protocol": "MQTT", "topicName": "$aws/things/MyThing/shadow/get", "clientId": "abf27092886e49a8a5c1922749736453", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "205.251.233.181", "sourcePort": 13490 }
일반 CloudWatch 로그 속성 뿐만 아니라 Publish-Out
로그 항목에는 다음과 같은 속성이 포함됩니다.
- clientId
-
해당 MQTT 주제에 대한 메시지를 수신하는 구독 클라이언트의 ID입니다.
- principalId
-
요청하는 보안 주체의 ID입니다.
- 프로토콜
-
요청에 사용된 프로토콜. 유효한 값은
MQTT
또는HTTP
입니다. - sourceIp
-
요청이 시작된 IP 주소입니다.
- sourcePort
-
요청이 시작된 포트입니다.
- topicName
-
구독하는 주제의 이름입니다.
대기 중 로그 항목
영구 세션이 있는 장치의 연결이 끊어지면 MQTT 메시지 브로커는 장치의 메시지를 저장하고 EventType이 인 로그 항목을 AWS IoT 생성합니다. Queued
MQTT 영구 세션에 대한 자세한 내용은 MQTT 지속적 세션 섹션을 참조하세요.
대기 중 서버 오류 로그 항목 예시
{ "timestamp": "2022-08-10 15:39:30.961", "logLevel": "ERROR", "traceId": "672ec480-31ce-fd8b-b5fb-22e3ac420699", "accountId": "123456789012", "topicName": "$aws/things/MyThing/get", "clientId": "123123123", "qos": "1", "protocol": "MQTT", "eventType": "Queued", "status": "Failure", "details": "Server Error" }
일반 CloudWatch 로그 속성 외에 Queued
로그 항목에는 다음과 같은 속성이 포함됩니다.
- clientId
-
메시지가 대기할 클라이언트의 ID입니다.
- details
-
Server Error
서버 오류로 인해 메시지가 저장되지 않았습니다.
- 프로토콜
-
요청에 사용된 프로토콜. 값은 항상
MQTT
입니다. - qos
-
요청의 서비스 품질(QoS) 수준입니다. QoS가 0인 메시지는 저장되지 않으므로 값은 항상 1입니다.
- topicName
-
구독하는 주제의 이름입니다.
대기 중 성공 로그 항목 예시
{ "timestamp": "2022-08-10 15:39:30.961", "logLevel": "INFO", "traceId": "672ec480-31ce-fd8b-b5fb-22e3ac420699", "accountId": "123456789012", "topicName": "$aws/things/MyThing/get", "clientId": "123123123", "qos": "1", "protocol": "MQTT", "eventType": "Queued", "status": "Success" }
일반 CloudWatch 로그 속성 외에 Queued
성공 로그 항목에는 다음과 같은 속성이 포함됩니다.
- clientId
-
메시지가 대기할 클라이언트의 ID입니다.
- 프로토콜
-
요청에 사용된 프로토콜. 값은 항상
MQTT
입니다. - qos
-
요청의 서비스 품질(QoS) 수준입니다. QoS가 0인 메시지는 저장되지 않으므로 값은 항상 1입니다.
- topicName
-
구독하는 주제의 이름입니다.
대기 중 제한된 로그 항목 예시
{ "timestamp": "2022-08-10 15:39:30.961", "logLevel": "ERROR", "traceId": "672ec480-31ce-fd8b-b5fb-22e3ac420699", "accountId": "123456789012", "topicName": "$aws/things/MyThing/get", "clientId": "123123123", "qos": "1", "protocol": "MQTT", "eventType": "Queued", "status": "Failure", "details": "Throttled while queueing offline message" }
일반 CloudWatch 로그 속성 외에 Queued
로그 항목에는 다음과 같은 속성이 포함됩니다.
- clientId
-
메시지가 대기할 클라이언트의 ID입니다.
- details
-
Throttled while queueing offline message
클라이언트가
Queued messages per second per account
제한을 초과하여 메시지가 저장되지 않았습니다. - 프로토콜
-
요청에 사용된 프로토콜. 값은 항상
MQTT
입니다. - qos
-
요청의 서비스 품질(QoS) 수준입니다. QoS가 0인 메시지는 저장되지 않으므로 값은 항상 1입니다.
- topicName
-
구독하는 주제의 이름입니다.
Subscribe 로그 항목
AWS IoT 메시지 브로커는 MQTT 클라이언트가 주제를 Subscribe
구독할 때 eventType
OF를 사용하여 로그 항목을 생성합니다.
MQTT 3 구독 로그 항목 예시
{ "timestamp": "2017-08-10 15:39:04.413", "logLevel": "INFO", "traceId": "7aa5c38d-1b49-3753-15dc-513ce4ab9fa6", "accountId": "123456789012", "status": "Success", "eventType": "Subscribe", "protocol": "MQTT", "topicName": "$aws/things/MyThing/shadow/#", "clientId": "abf27092886e49a8a5c1922749736453", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "205.251.233.181", "sourcePort": 13490 }
일반 CloudWatch 로그 속성 뿐만 아니라 Subscribe
로그 항목에는 다음과 같은 속성이 포함됩니다.
- clientId
-
요청하는 클라이언트의 ID입니다.
- principalId
-
요청하는 보안 주체의 ID입니다.
- 프로토콜
-
요청에 사용된 프로토콜. 유효한 값은
MQTT
또는HTTP
입니다. - sourceIp
-
요청이 시작된 IP 주소입니다.
- sourcePort
-
요청이 시작된 포트입니다.
- topicName
-
구독하는 주제의 이름입니다.
MQTT 5 구독 로그 항목 예시
{ "timestamp": "2022-11-30 16:24:15.628", "logLevel": "INFO", "traceId": "7aa5c38d-1b49-3753-15dc-513ce4ab9fa6", "accountId": "123456789012", "status": "Success", "eventType": "Subscribe", "protocol": "MQTT", "topicName": "test/topic1,$invalid/reserved/topic", "subscriptions": [ { "topicName": "test/topic1", "reasonCode": 1 }, { "topicName": "$invalid/reserved/topic", "reasonCode": 143 } ], "clientId": "abf27092886e49a8a5c1922749736453", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "205.251.233.181", "sourcePort": 13490 }
MQTT 5 구독 작업의 경우, 일반 CloudWatch 로그 속성 및 MQTT 3 구독 로그 항목 속성 외에도 MQTT 5 Subscribe
로그 항목에는 다음 속성이 포함됩니다.
- 구독
-
구독 요청의 요청된 주제와 개별 MQTT 5 사유 코드 간의 매핑 목록입니다. 자세한 내용은 MQTT 사유 코드를 참조하세요.
서버 인증서 OCSP 로그 항목
AWS IoT Core 다음 이벤트에 대한 로그 항목을 생성합니다.
OCSP 로그 항목 검색 StapleData
AWS IoT Core 서버가 eventType
OCSP 스테이플 데이터를 검색할 RetrieveOCSPStapleData
때 o를 사용하여 로그 항목을 생성합니다.
StapleData 검색/OCSP 로그 항목 예제
다음은 의 로그 입력 예제입니다. Success
{ "timestamp": "2024-01-30 15:39:30.961", "logLevel": "INFO", "traceId": "180532b7-0cc7-057b-687a-5ca1824838f5", "accountId": "123456789012", "status": "Success", "eventType": "RetrieveOCSPStapleData", "domainConfigName": "test-domain-config-name", "connectionDetails": { "httpStatusCode": "200", "ocspResponderUri": "http://ocsp.example.com", "sourceIp": "205.251.233.181", "targetIp": "250.15.5.3" }, "ocspRequestDetails": { "requesterName": "iot.amazonaws.com", "requestCertId": "30:3A:30:09:06:05:2B:0E:03:02:1A:05:00:04:14:9C:FF:90:A1:97:B0:4D:6C:01:B9:69:96:D8:3E:E7:A2:51:7F:30:C4:04:14:7C:84:78:AE:12:58:71:38:0C:65:FC:17:77:7D:14:DD:69:73:71:46:02:01:01" }, "ocspResponseDetails": { "responseCertId": "30:3A:30:09:06:05:2B:0E:03:02:1A:05:00:04:14:9C:FF:90:A1:97:B0:4D:6C:01:B9:69:96:D8:3E:E7:A2:51:7F:30:C4:04:14:7C:84:78:AE:12:58:71:38:0C:65:FC:17:77:7D:14:DD:69:73:71:46:02:01:01", "ocspResponseStatus": "successful", "certStatus": "good", "signature": "4C:6F:63:61:6C:20:52:65:73:70:6F:6E:64:65:72:20:53:69:67:6E:61:74:75:72:65", "thisUpdateTime": "Jan 31 01:21:02 2024 UTC", "nextUpdateTime": "Feb 02 00:21:02 2024 UTC", "producedAtTime": "Jan 31 01:37:03 2024 UTC", "stapledDataPayloadSize": "XXX" } }
다음은 의 로그 입력 예제입니다Failure
.
{ "timestamp": "2024-01-30 15:39:30.961", "logLevel": "ERROR", "traceId": "180532b7-0cc7-057b-687a-5ca1824838f5", "accountId": "123456789012", "status": "Failure", "reason": "A non 2xx HTTP response was received from the OCSP responder.", "eventType": "RetrieveOCSPStapleData", "domainConfigName": "test-domain-config-name", "connectionDetails": { "httpStatusCode": "444", "ocspResponderUri": "http://ocsp.example.com", "sourceIp": "205.251.233.181", "targetIp": "250.15.5.3" }, "ocspRequestDetails": { "requesterName": "iot.amazonaws.com", "requestCertId": "30:3A:30:09:06:05:2B:0E:03:02:1A:05:00:04:14:9C:FF:90:A1:97:B0:4D:6C:01:B9:69:96:D8:3E:E7:A2:51:7F:30:C4:04:14:7C:84:78:AE:12:58:71:38:0C:65:FC:17:77:7D:14:DD:69:73:71:46:02:01:01" } }
RetrieveOCSPStaple
작업의 경우, 외에도 로그 항목에는 다음과 같은 속성이 포함됩니다. 일반 CloudWatch 로그 속성
- reason
-
작업이 실패하는 이유.
- 도메인 ConfigName
-
도메인 구성의 이름.
- 연결 세부 정보
-
연결 세부 정보에 대한 간략한 설명
-
http StatusCode
서버에 대한 클라이언트의 요청에 대한 응답으로 OCSP 응답자가 반환하는 HTTP 상태 코드입니다.
-
ocsp ResponderUri
서버 인증서에서 AWS IoT Core 가져오는 OCSP 응답자 URI입니다.
-
sourceIp
서버의 소스 IP 주소. AWS IoT Core
-
타겟 IP
OCSP 응답자의 대상 IP 주소입니다.
-
- ocsp RequestDetails
-
OCSP 요청의 세부 정보입니다.
-
요청자 이름
OCSP 응답자에게 요청을 보내는 AWS IoT Core 서버의 식별자입니다.
-
요청 CertId
요청의 인증서 ID. OCSP 응답이 요청되는 인증서의 ID입니다.
-
- ocsp ResponseDetails
-
OCSP 응답에 대한 세부 정보
-
응답 CertId
OCSP 응답의 인증서 ID입니다.
-
OCSP ResponseStatus
OCSP 응답의 상태입니다.
-
인증서 상태
인증서의 상태입니다.
-
서명
신뢰할 수 있는 주체의 응답에 적용하는 서명.
-
이것은 UpdateTime
상태가 표시된 시간이 정확한 것으로 알려져 있습니다.
-
다음 UpdateTime
인증서 상태에 대한 최신 정보를 확인할 수 있는 시점 또는 그 이전 시간입니다.
-
생산되었습니다. AtTime
OCSP 응답자가 이 응답에 서명한 시간.
-
스테이플 크기 DataPayload
스테이플링된 데이터의 페이로드 크기.
-
Device Shadow 로그 항목
AWS IoT Device Shadow 서비스는 다음 이벤트에 대한 로그 항목을 생성합니다.
DeleteThingShadow 로그 입력
디바이스 섀도우 서비스는 디바이스 섀도우 삭제 요청이 수신되면 eventType
이 DeleteThingShadow
인 로그 항목을 작성합니다.
DeleteThingShadow 로그 입력 예제
{ "timestamp": "2017-08-07 18:47:56.664", "logLevel": "INFO", "traceId": "1a60d02e-15b9-605b-7096-a9f584a6ad3f", "accountId": "123456789012", "status": "Success", "eventType": "DeleteThingShadow", "protocol": "MQTT", "deviceShadowName": "Jack", "topicName": "$aws/things/Jack/shadow/delete" }
일반 CloudWatch 로그 속성 뿐만 아니라 DeleteThingShadow
로그 항목에는 다음과 같은 속성이 포함됩니다.
- 디바이스 ShadowName
-
업데이트할 섀도우의 이름입니다.
- 프로토콜
-
요청에 사용된 프로토콜. 유효한 값은
MQTT
또는HTTP
입니다. - topicName
-
요청이 게시된 주제의 이름입니다.
GetThingShadow 로그 입력
디바이스 섀도우 서비스는 섀도우 가져오기 요청이 수신되면 eventType
이 GetThingShadow
인 로그 항목을 작성합니다.
GetThingShadow 로그 입력 예제
{ "timestamp": "2017-08-09 17:56:30.941", "logLevel": "INFO", "traceId": "b575f19a-97a2-cf72-0ed0-c64a783a2504", "accountId": "123456789012", "status": "Success", "eventType": "GetThingShadow", "protocol": "MQTT", "deviceShadowName": "MyThing", "topicName": "$aws/things/MyThing/shadow/get" }
일반 CloudWatch 로그 속성 뿐만 아니라 GetThingShadow
로그 항목에는 다음과 같은 속성이 포함됩니다.
- 디바이스 ShadowName
-
요청한 섀도우의 이름입니다.
- 프로토콜
-
요청에 사용된 프로토콜. 유효한 값은
MQTT
또는HTTP
입니다. - topicName
-
요청이 게시된 주제의 이름입니다.
UpdateThingShadow 로그 입력
디바이스 섀도우 서비스는 디바이스 섀도우 업데이트 요청이 수신되면 eventType
이 UpdateThingShadow
인 로그 항목을 작성합니다.
UpdateThingShadow 로그 입력 예제
{ "timestamp": "2017-08-07 18:43:59.436", "logLevel": "INFO", "traceId": "d0074ba8-0c4b-a400-69df-76326d414c28", "accountId": "123456789012", "status": "Success", "eventType": "UpdateThingShadow", "protocol": "MQTT", "deviceShadowName": "Jack", "topicName": "$aws/things/Jack/shadow/update" }
일반 CloudWatch 로그 속성 뿐만 아니라 UpdateThingShadow
로그 항목에는 다음과 같은 속성이 포함됩니다.
- 디바이스 ShadowName
-
업데이트할 섀도우의 이름입니다.
- 프로토콜
-
요청에 사용된 프로토콜. 유효한 값은
MQTT
또는HTTP
입니다. - topicName
-
요청이 게시된 주제의 이름입니다.
Rules engine 로그 항목
AWS IoT 규칙 엔진은 다음 이벤트에 대한 로그를 생성합니다.
주제
FunctionExecution 로그 입력
규칙 엔진은 규칙의 SQL 쿼리가 외부 함수를 호출할 때 eventType
이 FunctionExecution
인 로그 항목을 작성합니다. 외부 함수는 규칙의 동작이 AWS IoT 또는 다른 웹 서비스에 HTTP 요청을 할 때 호출됩니다 (예: get_thing_shadow
또는 호출machinelearning_predict
).
FunctionExecution 로그 입력 예제
{ "timestamp": "2017-07-13 18:33:51.903", "logLevel": "DEBUG", "traceId": "180532b7-0cc7-057b-687a-5ca1824838f5", "status": "Success", "eventType": "FunctionExecution", "clientId": "N/A", "topicName":"rules/test", "ruleName": "ruleTestPredict", "ruleAction": "MachinelearningPredict", "resources": { "ModelId": "predict-model" }, "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167" }
일반 CloudWatch 로그 속성 뿐만 아니라 FunctionExecution
로그 항목에는 다음과 같은 속성이 포함됩니다.
- clientId
-
FunctionExecution
로그에서는N/A
입니다. - principalId
-
요청하는 보안 주체의 ID입니다.
- resources
-
규칙의 작업에서 사용하는 리소스 모음입니다.
- ruleName
-
일치하는 규칙의 이름입니다.
- topicName
-
구독하는 주제의 이름입니다.
RuleExecution 로그 입력
AWS IoT 규칙 엔진이 규칙 작업을 트리거하면 RuleExecution
로그 항목을 생성합니다.
RuleExecution 로그 입력 예제
{ "timestamp": "2017-08-10 16:32:46.070", "logLevel": "INFO", "traceId": "30aa7ccc-1d23-0b97-aa7b-76196d83537e", "accountId": "123456789012", "status": "Success", "eventType": "RuleExecution", "clientId": "abf27092886e49a8a5c1922749736453", "topicName": "rules/test", "ruleName": "JSONLogsRule", "ruleAction": "RepublishAction", "resources": { "RepublishTopic": "rules/republish" }, "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167" }
일반 CloudWatch 로그 속성 뿐만 아니라 RuleExecution
로그 항목에는 다음과 같은 속성이 포함됩니다.
- clientId
-
요청하는 클라이언트의 ID입니다.
- principalId
-
요청하는 보안 주체의 ID입니다.
- resources
-
규칙의 작업에서 사용하는 리소스 모음입니다.
- ruleAction
-
트리거된 작업의 이름입니다.
- ruleName
-
일치하는 규칙의 이름입니다.
- topicName
-
구독하는 주제의 이름입니다.
RuleMatch 로그 입력
AWS IoT 규칙 엔진은 메시지 브로커가 규칙과 일치하는 메시지를 RuleMatch
수신할 때 o를 사용하여 로그 항목을 생성합니다. eventType
RuleMatch 로그 입력 예제
{ "timestamp": "2017-08-10 16:32:46.002", "logLevel": "INFO", "traceId": "30aa7ccc-1d23-0b97-aa7b-76196d83537e", "accountId": "123456789012", "status": "Success", "eventType": "RuleMatch", "clientId": "abf27092886e49a8a5c1922749736453", "topicName": "rules/test", "ruleName": "JSONLogsRule", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167" }
일반 CloudWatch 로그 속성 뿐만 아니라 RuleMatch
로그 항목에는 다음과 같은 속성이 포함됩니다.
- clientId
-
요청하는 클라이언트의 ID입니다.
- principalId
-
요청하는 보안 주체의 ID입니다.
- ruleName
-
일치하는 규칙의 이름입니다.
- topicName
-
구독하는 주제의 이름입니다.
RuleExecutionThrottled 로그 입력
실행이 제한되면 AWS IoT 규칙 엔진은 o가 있는 로그 항목을 생성합니다. eventType
RuleExecutionThrottled
RuleExecutionThrottled 로그 입력 예제
{ "timestamp": "2017-10-04 19:25:46.070", "logLevel": "ERROR", "traceId": "30aa7ccc-1d23-0b97-aa7b-76196d83537e", "accountId": "123456789012", "status": "Failure", "eventType": "RuleMessageThrottled", "clientId": "abf27092886e49a8a5c1922749736453", "topicName": "$aws/rules/example_rule", "ruleName": "example_rule", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "reason": "RuleExecutionThrottled", "details": "Exection of Rule example_rule throttled" }
일반 CloudWatch 로그 속성 뿐만 아니라 RuleExecutionThrottled
로그 항목에는 다음과 같은 속성이 포함됩니다.
- clientId
-
요청하는 클라이언트의 ID입니다.
- details
-
오류에 대한 간단한 설명입니다.
- principalId
-
요청하는 보안 주체의 ID입니다.
- reason
-
문자열 "RuleExecution스로틀”
- ruleName
-
트리거할 규칙의 이름.
- topicName
-
게시된 주제의 이름입니다.
RuleNotFound 로그 입력
AWS IoT 규칙 엔진이 지정된 이름의 규칙을 찾을 수 없는 경우 o가 포함된 로그 항목을 생성합니다RuleNotFound
. eventType
RuleNotFound 로그 입력 예제
{ "timestamp": "2017-10-04 19:25:46.070", "logLevel": "ERROR", "traceId": "30aa7ccc-1d23-0b97-aa7b-76196d83537e", "accountId": "123456789012", "status": "Failure", "eventType": "RuleNotFound", "clientId": "abf27092886e49a8a5c1922749736453", "topicName": "$aws/rules/example_rule", "ruleName": "example_rule", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "reason": "RuleNotFound", "details": "Rule example_rule not found" }
일반 CloudWatch 로그 속성 뿐만 아니라 RuleNotFound
로그 항목에는 다음과 같은 속성이 포함됩니다.
- clientId
-
요청하는 클라이언트의 ID입니다.
- details
-
오류에 대한 간단한 설명입니다.
- principalId
-
요청하는 보안 주체의 ID입니다.
- reason
-
문자열 "RuleNot찾음”
- ruleName
-
찾을 수 없는 규칙의 이름입니다.
- topicName
-
게시된 주제의 이름입니다.
StartingRuleExecution 로그 항목
AWS IoT 규칙 엔진이 규칙 작업을 트리거하기 시작하면 o가 포함된 로그 항목을 생성합니다StartingRuleExecution
. eventType
StartingRuleExecution 로그 입력 예제
{ "timestamp": "2017-08-10 16:32:46.002", "logLevel": "DEBUG", "traceId": "30aa7ccc-1d23-0b97-aa7b-76196d83537e", "accountId": "123456789012", "status": "Success", "eventType": "StartingRuleExecution", "clientId": "abf27092886e49a8a5c1922749736453", "topicName": "rules/test", "ruleName": "JSONLogsRule", "ruleAction": "RepublishAction", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167" }
일반 CloudWatch 로그 속성 뿐만 아니라 rule-
로그 항목에는 다음과 같은 속성이 포함됩니다.
- clientId
-
요청하는 클라이언트의 ID입니다.
- principalId
-
요청하는 보안 주체의 ID입니다.
- ruleAction
-
트리거된 작업의 이름입니다.
- ruleName
-
일치하는 규칙의 이름입니다.
- topicName
-
구독하는 주제의 이름입니다.
Job 로그 항목
AWS IoT Job 서비스는 다음 이벤트에 대한 로그 항목을 생성합니다. 디바이스로부터 MQTT 또는 HTTP 요청이 수신되면 로그 항목이 생성됩니다.
주제
DescribeJobExecution 로그 항목
AWS IoT Jobs 서비스는 서비스가 작업 실행을 설명해 eventType
달라는 요청을 받으면 로그와 함께 로그 항목을 생성합니다. DescribeJobExecution
DescribeJobExecution 로그 항목 예제
{ "timestamp": "2017-08-10 19:13:22.841", "logLevel": "DEBUG", "accountId": "123456789012", "status": "Success", "eventType": "DescribeJobExecution", "protocol": "MQTT", "clientId": "thingOne", "jobId": "002", "topicName": "$aws/things/thingOne/jobs/002/get", "clientToken": "myToken", "details": "The request status is SUCCESS." }
일반 CloudWatch 로그 속성 뿐만 아니라 GetJobExecution
로그 항목에는 다음과 같은 속성이 포함됩니다.
- clientId
-
요청하는 클라이언트의 ID입니다.
- clientToken
-
요청 멱등성을 보장하는 고유한 대/소문자 구분 식별자입니다. 자세한 내용은 멱등성 보장 방법(How to Ensure Idempotency) 단원을 참조하세요.
- details
-
작업 서비스의 다른 정보입니다.
- jobId
-
작업 실행의 작업 ID입니다.
- 프로토콜
-
요청에 사용된 프로토콜. 유효한 값은
MQTT
또는HTTP
입니다. - topicName
-
요청에 사용된 주제입니다.
GetPendingJobExecution 로그 입력
AWS IoT Jobs 서비스는 서비스가 작업 실행 요청을 받을 GetPendingJobExecution
때 로그와 함께 로그 항목을 생성합니다. eventType
GetPendingJobExecution 로그 항목 예제
{ "timestamp": "2018-06-13 17:45:17.197", "logLevel": "DEBUG", "accountId": "123456789012", "status": "Success", "eventType": "GetPendingJobExecution", "protocol": "MQTT", "clientId": "299966ad-54de-40b4-99d3-4fc8b52da0c5", "topicName": "$aws/things/299966ad-54de-40b4-99d3-4fc8b52da0c5/jobs/get", "clientToken": "24b9a741-15a7-44fc-bd3c-1ff2e34e5e82", "details": "The request status is SUCCESS." }
일반 CloudWatch 로그 속성 뿐만 아니라 GetPendingJobExecution
로그 항목에는 다음과 같은 속성이 포함됩니다.
- clientId
-
요청하는 클라이언트의 ID입니다.
- clientToken
-
요청 멱등성을 보장하는 고유한 대/소문자 구분 식별자입니다. 자세한 내용은 멱등성 보장 방법(How to Ensure Idempotency) 단원을 참조하세요.
- details
-
작업 서비스의 다른 정보입니다.
- 프로토콜
-
요청에 사용된 프로토콜. 유효한 값은
MQTT
또는HTTP
입니다. - topicName
-
구독하는 주제의 이름입니다.
ReportFinalJobExecutionCount 로그 입력
AWS IoT Jobs 서비스는 작업이 완료될 entryType
ReportFinalJobExecutionCount
때 로그와 함께 로그 항목을 생성합니다.
ReportFinalJobExecutionCount 로그 입력 예제
{ "timestamp": "2017-08-10 19:44:16.776", "logLevel": "INFO", "accountId": "123456789012", "status": "Success", "eventType": "ReportFinalJobExecutionCount", "jobId": "002", "details": "Job 002 completed. QUEUED job execution count: 0 IN_PROGRESS job execution count: 0 FAILED job execution count: 0 SUCCEEDED job execution count: 1 CANCELED job execution count: 0 REJECTED job execution count: 0 REMOVED job execution count: 0" }
일반 CloudWatch 로그 속성 뿐만 아니라 ReportFinalJobExecutionCount
로그 항목에는 다음과 같은 속성이 포함됩니다.
- details
-
작업 서비스의 다른 정보입니다.
- jobId
-
작업 실행의 작업 ID입니다.
StartNextPendingJobExecution 로그 입력
보류 중인 다음 작업 실행을 시작하라는 요청을 받으면 AWS IoT 작업 서비스는 o가 포함된 로그 항목을 생성합니다StartNextPendingJobExecution
. eventType
StartNextPendingJobExecution 로그 입력 예제
{ "timestamp": "2018-06-13 17:49:51.036", "logLevel": "DEBUG", "accountId": "123456789012", "status": "Success", "eventType": "StartNextPendingJobExecution", "protocol": "MQTT", "clientId": "95c47808-b1ca-4794-bc68-a588d6d9216c", "topicName": "$aws/things/95c47808-b1ca-4794-bc68-a588d6d9216c/jobs/start-next", "clientToken": "bd7447c4-3a05-49f4-8517-dd89b2c68d94", "details": "The request status is SUCCESS." }
일반 CloudWatch 로그 속성 뿐만 아니라 StartNextPendingJobExecution
로그 항목에는 다음과 같은 속성이 포함됩니다.
- clientId
-
요청하는 클라이언트의 ID입니다.
- clientToken
-
요청 멱등성을 보장하는 고유한 대/소문자 구분 식별자입니다. 자세한 내용은 멱등성 보장 방법(How to Ensure Idempotency) 단원을 참조하세요.
- details
-
작업 서비스의 다른 정보입니다.
- 프로토콜
-
요청에 사용된 프로토콜. 유효한 값은
MQTT
또는HTTP
입니다. - topicName
-
요청에 사용된 주제입니다.
UpdateJobExecution 로그 입력
AWS IoT Jobs 서비스는 서비스가 작업 실행 업데이트 요청을 받을 UpdateJobExecution
때 로그와 함께 로그 항목을 생성합니다. eventType
UpdateJobExecution 로그 항목 예제
{ "timestamp": "2017-08-10 19:25:14.758", "logLevel": "DEBUG", "accountId": "123456789012", "status": "Success", "eventType": "UpdateJobExecution", "protocol": "MQTT", "clientId": "thingOne", "jobId": "002", "topicName": "$aws/things/thingOne/jobs/002/update", "clientToken": "myClientToken", "versionNumber": "1", "details": "The destination status is IN_PROGRESS. The request status is SUCCESS." }
일반 CloudWatch 로그 속성 뿐만 아니라 UpdateJobExecution
로그 항목에는 다음과 같은 속성이 포함됩니다.
- clientId
-
요청하는 클라이언트의 ID입니다.
- clientToken
-
요청 멱등성을 보장하는 고유한 대/소문자 구분 식별자입니다. 자세한 내용은 멱등성 보장 방법(How to Ensure Idempotency) 단원을 참조하세요.
- details
-
작업 서비스의 다른 정보입니다.
- jobId
-
작업 실행의 작업 ID입니다.
- 프로토콜
-
요청에 사용된 프로토콜. 유효한 값은
MQTT
또는HTTP
입니다. - topicName
-
요청에 사용된 주제입니다.
- versionNumber
-
작업 실행 버전입니다.
Device provisioning 로그 항목
AWS IoT 장치 프로비저닝 서비스는 다음 이벤트에 대한 로그를 생성합니다.
GetDeviceCredentials 로그 입력
AWS IoT 디바이스 프로비저닝 서비스는 클라이언트가 GetDeviceCredential
GetDeviceCredential
호출할 때 로그가 꺼진 eventType
상태로 로그 항목을 생성합니다.
GetDevice자격 증명 로그 항목 예제
{ "timestamp" : "2019-02-20 20:31:22.932", "logLevel" : "INFO", "traceId" : "8d9c016f-6cc7-441e-8909-7ee3d5563405", "accountId" : "123456789101", "status" : "Success", "eventType" : "GetDeviceCredentials", "deviceCertificateId" : "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "details" : "Additional details about this log." }
일반 CloudWatch 로그 속성 뿐만 아니라 GetDeviceCredentials
로그 항목에는 다음과 같은 속성이 포함됩니다.
- details
-
오류에 대한 간단한 설명입니다.
- 디바이스 CertificateId
-
디바이스 인증서의 ID입니다.
ProvisionDevice 로그 입력
AWS IoT 디바이스 프로비저닝 서비스는 클라이언트가 ProvisionDevice
ProvisionDevice
호출할 때 로그가 꺼진 eventType
상태로 로그 항목을 생성합니다.
ProvisionDevice 로그 입력 예제
{ "timestamp" : "2019-02-20 20:31:22.932", "logLevel" : "INFO", "traceId" : "8d9c016f-6cc7-441e-8909-7ee3d5563405", "accountId" : "123456789101", "status" : "Success", "eventType" : "ProvisionDevice", "provisioningTemplateName" : "myTemplate", "deviceCertificateId" : "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "details" : "Additional details about this log." }
일반 CloudWatch 로그 속성 뿐만 아니라 ProvisionDevice
로그 항목에는 다음과 같은 속성이 포함됩니다.
- details
-
오류에 대한 간단한 설명입니다.
- 디바이스 CertificateId
-
디바이스 인증서의 ID입니다.
- 프로비저닝 TemplateName
-
프로비저닝 템플릿의 이름입니다.
Dynamic thing group 로그 항목
AWS IoT 동적 사물 그룹은 다음 이벤트에 대한 로그를 생성합니다.
AddThingToDynamicThingGroupsFailed 로그 입력
지정된 동적 그룹에 항목을 추가할 수 없는 경우 AWS IoT o가 포함된 로그 항목이 생성됩니다AddThingToDynamicThingGroupsFailed
. eventType
사물이 동적 사물 그룹에 추가되기 위한 조건을 충족한 경우 발생하지만 동적 그룹에 추가할 수 없거나 동적 그룹에서 제거되었습니다. 이는 다음과 같은 이유로 발생할 수 있습니다.
-
사물이 이미 최대 그룹 수에 속합니다.
-
--override-dynamic-groups 옵션은 사물을 정적 사물 그룹에 추가하는 데 사용되었습니다. 이를 가능하게 하기 위해 동적 사물 그룹에서 제거되었습니다.
자세한 내용은 동적 사물 그룹 제한 및 충돌을 참조하세요.
AddThingToDynamicThingGroupsFailed 로그 입력 예제
이 예제에서는 AddThingToDynamicThingGroupsFailed
오류의 로그 항목을 보여줍니다. 이 예에서는 에 설명된 대로 에 나열된 동적 사물 그룹에 포함되는 기준을 TestThing충족했지만 해당 동적 그룹에 추가할 수 없었습니다reason
. dynamicThingGroupNames
{ "timestamp": "2020-03-16 22:24:43.804", "logLevel": "ERROR", "traceId": "70b1f2f5-d95e-f897-9dcc-31e68c3e1a30", "accountId": "57EXAMPLE833", "status": "Failure", "eventType": "AddThingToDynamicThingGroupsFailed", "thingName": "TestThing", "dynamicThingGroupNames": [ "DynamicThingGroup11", "DynamicThingGroup12", "DynamicThingGroup13", "DynamicThingGroup14" ], "reason": "The thing failed to be added to the given dynamic thing group(s) because the thing already belongs to the maximum allowed number of groups." }
일반 CloudWatch 로그 속성 뿐만 아니라 AddThingToDynamicThingGroupsFailed
로그 항목에는 다음과 같은 속성이 포함됩니다.
- 동적 ThingGroup 이름
-
사물을 추가할 수 없는 동적 사물 그룹의 배열입니다.
- reason
-
사물을 동적 사물 그룹에 추가할 수 없는 이유입니다.
- thingName
-
동적 사물 그룹에 추가할 수 없는 사물의 이름입니다.
플릿 인덱싱 로그 항목
AWS IoT 플릿 인덱싱은 다음 이벤트에 대한 로그 항목을 생성합니다.
NamedShadowCountForDynamicGroupQueryLimitExceeded 로그 입력
동적 그룹에서 특정 데이터 소스가 아닌 쿼리 용어에 대해 사물당 최대 25개의 명명된 섀도우가 처리됩니다. 사물에 대해 이 제한이 위반되면 NamedShadowCountForDynamicGroupQueryLimitExceeded
이벤트 유형이 내보내집니다.
NamedShadowCountForDynamicGroupQueryLimitExceeded 로그 입력 예제
이 예에서는 NamedShadowCountForDynamicGroupQueryLimitExceeded
오류의 로그 항목을 보여줍니다. 이 예에서는 reason
필드에 설명된 대로 모든 값 기반 DynamicGroup
결과가 정확하지 않을 수 있습니다.
{ "timestamp": "2020-03-16 22:24:43.804", "logLevel": "ERROR", "traceId": "70b1f2f5-d95e-f897-9dcc-31e68c3e1a30", "accountId": "571032923833", "status": "Failure", "eventType": "NamedShadowCountForDynamicGroupQueryLimitExceeded", "thingName": "TestThing", "reason": "A maximum of 25 named shadows per thing are processed for non-data source specific query terms in dynamic groups." }
일반 CloudWatch 로그 속성
모든 CloudWatch 로그 로그 항목에는 다음 속성이 포함됩니다.
- accountId
-
사용자 AWS 계정 ID.
- eventType
-
로그가 작성된 이벤트 유형입니다. 이벤트 유형의 값은 로그 항목을 생성한 이벤트에 따라 다릅니다. 각 로그 항목 설명에는 해당 로그 항목의
eventType
값이 포함됩니다. - logLevel
-
사용 중인 로그 수준입니다. 자세한 내용은 로그 수준 단원을 참조하세요.
- status
-
요청 상태입니다.
- 타임스탬프
-
클라이언트가 AWS IoT 메시지 브로커에 연결된 시점의 사람이 읽을 수 있는 UTC 타임스탬프입니다.
- traceId
-
특정 요청에서 모든 로그의 연관성을 나타내는 데 사용할 수 있도록 무작위로 생성되는 식별자입니다.