

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

# Basic Ingest를 통한 메시징 비용 절감
<a name="iot-basic-ingest"></a>

기본 수집을 사용하면 [AWS IoT 규칙 작업](iot-rule-actions.md)에서 지원하는 AWS 서비스로 디바이스 데이터를 안전하게 전송할 수 있으며, 이때 [메시징 요금](https://aws.amazon.com/iot-core/pricing/)이 발생하지 않습니다. 기본 수집은 수집 경로에서 게시/구독 메시지 브로커를 제거해 데이터 흐름을 최적화합니다.

기본 수집은 디바이스 또는 애플리케이션에서 메시지를 전송할 수 있습니다. 메시지에는 처음 3개 수준에 대한 `$aws/rules/rule_name`으로 시작하는 주제 이름이 있으며, 여기서 `rule_name`은 호출하려는 AWS IoT 규칙의 이름입니다.

일반적으로 규칙을 호출하는 데 사용하는 메시지 주제에 기본 수집 접두사(`$aws/rules/rule_name`)를 추가하면 기본 수집과 함께 기존 규칙을 사용할 수 있습니다. 예를 들어, `Buildings/Building5/Floor2/Room201/Lights`(`"sql": "SELECT * FROM 'Buildings/#'"`)와 같은 주제가 포함된 메시지로 호출되는 `BuildingManager`라는 규칙이 있는 경우 `$aws/rules/BuildingManager/Buildings/Building5/Floor2/Room201/Lights` 주제가 포함된 메시지를 전송해 기본 수집과 함께 동일한 규칙을 호출할 수 있습니다.

**참고**  
디바이스 및 규칙은 Basic Ingest 예약 주제를 구독할 수 없습니다. 예를 들어 AWS IoT Device Defender 지표 `num-messages-received` 지표는 주제 구독을 지원하지 않으므로 내보내지지 않습니다. 자세한 내용은 [예약된 주제](reserved-topics.md) 단원을 참조하십시오.
메시지를 여러 구독자에게 배포하기 위해(예: 메시지를 다른 디바이스와 규칙 엔진으로 전달하기 위해) 게시/구독 브로커가 필요한 경우 계속해서 AWS IoT 메시지 브로커를 사용해 메시지 배포를 처리해야 합니다. 그러나 기본 수집 주제 이외의 주제에 대해 메시지를 게시해야 합니다.

## Basic Ingest 사용
<a name="iot-basic-ingest-use"></a>

기본 수집을 사용하기 전에 디바이스 또는 애플리케이션이 `$aws/rules/*`에 대한 게시 권한이 있는 [정책](iot-policies.md)을 사용하는지 확인하세요. 또는 정책에서 `$aws/rules/rule_name/*`을(를) 사용해 개별 규칙에 대한 권한을 지정할 수 있습니다. 그렇지 않은 경우 디바이스 및 애플리케이션은 계속해서 AWS IoT Core와의 기존 연결을 사용할 수 있습니다.

메시지가 규칙 엔진에 도달하면 기본 수집에서 호출된 규칙과 메시지 브로커 구독을 통해 호출된 규칙 간에 구현 또는 오류 처리에 아무런 차이가 없습니다.

Basic Ingest와 함께 사용할 규칙을 생성할 수 있습니다. 다음 사항에 유의하세요.
+ Basic Ingest 주제(`$aws/rules/rule_name`)의 최초 접두사는 [topic(Decimal)](iot-sql-functions.md#iot-function-topic) 함수에 사용할 수 없습니다.
+ 기본 수집으로만 호출되는 규칙을 정의하는 경우 `FROM` 절은 `rule` 정의의 `sql` 필드에서 선택적입니다. 이는 (예를 들어, 다른 메시지를 여러 구독자에게 배포해야 하기 때문에) 메시지 브로커를 통해 전송해야 하는 다른 메시지로도 해당 규칙이 호출될 경우에도 필요합니다. 자세한 내용은 [AWS IoT SQL 참조](iot-sql-reference.md) 단원을 참조하십시오.
+ Basic Ingest 주제(`$aws/rules/rule_name`)의 처음 3개 수준은 주제에 대한 8개 세그먼트 길이 제한 또는 256자의 총 문자 제한에 포함되지 않습니다. 그렇지 않으면 [AWS IoT 제한](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#limits_iot)의 설명과 동일한 제한이 적용됩니다.
+ 비활성 규칙 또는 존재하지 않는 규칙을 지정하는 Basic Ingest 주제가 포함된 메시지가 수신되면 디버깅할 수 있도록 Amazon CloudWatch 로그에 오류 로그가 생성됩니다. 자세한 내용은 [Rules engine 로그 항목](cwl-format.md#rule-engine-logs) 단원을 참조하세요. `RuleNotFound` 측정치가 표시되어 이 측정치에 대한 경보를 생성할 수 있습니다. 자세한 내용은 [규칙 지표](metrics_dimensions.md#rulemetrics)의 규칙 지표를 참조하세요.
+ QoS 1을 사용해 Basic Ingest 주제에 대해 게시할 수 있습니다. 메시지가 규칙 엔진으로 성공적으로 전달되면 PUBACK이 수신됩니다. PUBACK을 수신했다고 해서 규칙 작업이 성공적으로 완료된 것은 아닙니다. 작업이 실행될 때 오류를 처리하도록 오류 작업을 구성할 수 있습니다. 자세한 내용은 [오류 처리(오류 작업)](rule-error-handling.md) 단원을 참조하십시오.