ConsumeMQTT 2025.5.31.15¶
번들¶
org.apache.nifi | nifi-mqtt-nar
설명¶
항목을 구독하고 MQTT브 로커로부터 메시지를 수신합니다
입력 요구 사항¶
FORBIDDEN
민감한 동적 속성 지원¶
false
속성¶
속성 |
설명 |
---|---|
브로커 URI |
MQTT 브로커(예: tcp://localhost:1883)에 연결할 때 사용할 URI 를 입력합니다. ‘tcp’, ‘ssl’, ‘ws’ 및 ‘wss’ 체계가 지원됩니다. ‘ssl’을 사용하려면 SSL Context Service 속성을 설정해야 합니다. 쉼표로 구분된 URI 목록이 설정된 경우(예: tcp://localhost:1883,tcp://localhost:1884), 프로세서는 연결 실패 시 라운드 로빈 알고리즘을 사용하여 브로커에 연결합니다. |
Client ID |
사용할 MQTT 클라이언트 ID 설정하지 않으면 UUID 가 생성됩니다. |
Connection Timeout (seconds) |
클라이언트가 MQTT 서버에 대한 네트워크 연결이 설정될 때까지 기다리는 최대 시간 간격입니다. 기본 시간 제한은 30초입니다. 값이 0이면 시간 제한 처리를 비활성화하여 클라이언트가 네트워크 연결이 성공하거나 실패할 때까지 기다립니다. |
그룹 ID |
사용할 MQTT 컨슈머 그룹 ID 그룹 ID 가 설정되지 않은 경우 클라이언트는 개별 컨슈머로 연결됩니다. |
Keep Alive Interval (seconds) |
주고받는 메시지 사이의 최대 시간 간격을 정의합니다. 이를 통해 클라이언트는 TCP/IP 시간 제한을 기다릴 필요 없이 서버를 더 이상 사용할 수 없는지 감지할 수 있습니다. 클라이언트는 각 킵 얼라이브 기간 동안 적어도 1개의 메시지가 네트워크를 통해 전달되도록 합니다. 해당 기간 동안 데이터 관련 메시지가 없는 경우 클라이언트는 매우 작은 “Ping” 메시지를 보내면 서버가 이를 확인합니다. 값이 0이면 클라이언트에서 keepalive 처리를 비활성화합니다. |
Last Will Message |
클라이언트의 Last Will로 보낼 메시지입니다. |
Last Will QoS Level |
Last Will 메시지를 게시할 때 사용할 QoS 레벨입니다. |
Last Will 유지 |
클라이언트의 Last Will 보관 여부. |
Last Will 토픽 |
클라이언트의 Last Will을 보낼 토픽입니다. |
MQTT 사양 버전 |
브로커와 연결할 때 MQTT 사양 버전입니다. 자세한 내용은 허용되는 값 설명을 참조하십시오. |
Max Queue Size |
MQTT 메시지는 프로세서 실행 예약 빈도와 관계없이 항상 항목에 대해 구독자에게 전송됩니다. ‘실행 예약’이 이 프로세서에 메시지가 도착하는 속도보다 상당히 늦으면 이 프로세서의 내부 큐에서 백업이 발생할 수 있습니다. 이 속성은 이 프로세서가 내부 큐에서 한 번에 메모리에 보관할 수 있는 최대 메시지 수를 지정합니다. NiFi 재시작 시 이 데이터는 손실됩니다. |
비밀번호 |
브로커에 연결할 때 사용할 비밀번호 |
서비스 품질(QoS) |
메시지를 수신할 서비스 품질(QoS)입니다. ‘0’, ‘1’ 또는 ‘2’ 값을 허용합니다. ‘최대 한 번’은 ‘0’, ‘최소 한 번’은 ‘1’, ‘정확히 한 번’은 ‘2’를 입력합니다. |
SSL 컨텍스트 서비스 |
SSL 컨텍스트 서비스는 TLS/SSL 연결에 대한 클라이언트 인증서 정보를 제공하는 데 사용됩니다. |
Session Expiry Interval |
이 간격이 지나면 브로커는 클라이언트를 만료하고 세션 상태를 지웁니다. |
세션 상태 |
새로 시작할지 아니면 이전 플로우를 재개할지 여부를 결정합니다. 자세한 내용은 허용되는 값 설명을 참조하십시오. |
Topic Filter |
구독할 항목을 지정할 MQTT 항목 필터입니다. |
사용자 이름 |
브로커에 연결할 때 사용할 사용자 이름 |
add-attributes-as-fields |
이 속성을 true로 설정하면 각 레코드(_topic, _qos, _isDuplicate, _isRetained)에 기본 필드가 추가됩니다. |
message-demarcator |
이 속성을 사용하면 여러 메시지가 포함된 FlowFiles 을 출력하는 옵션이 있습니다. 이 속성을 사용하면 여러 메시지를 구분하는 데 사용할 문자열(UTF-8로 해석됨)을 제공할 수 있습니다. 이 속성은 선택 속성으로, 제공하지 않고 Record Reader/작성기를 정의하지 않으면 수신되는 각 메시지는 단일 FlowFile 이 됩니다. ‘new line’과 같은 특수 문자를 입력하려면 OS 에 따라 CTRL+Enter 또는 Shift+Enter를 사용하십시오. |
record-reader |
수신된 MQTT 메시지를 레코드로 구문 분석하는 데 사용할 Record Reader입니다. |
record-writer |
FlowFile 에 쓰기 전에 레코드를 직렬화하는 데 사용할 Record Writer입니다. |
관계¶
이름 |
설명 |
---|---|
메시지 |
MQTT 메시지 출력 |
parse.failure |
구성된 Record Reader를 사용하여 메시지를 구문 분석할 수 없는 경우 메시지 내용은 이 관계로 개별 FlowFile 로 라우팅됩니다. |
Writes 특성¶
이름 |
설명 |
---|---|
record.count |
수신된 레코드 수 |
mqtt.broker |
메시지 소스였던 MQTT 브로커 |
mqtt.topic |
메시지가 수신된 MQTT 항목 |
mqtt.qos |
이 메시지의 서비스 품질입니다. |
mqtt.isDuplicate |
이 메시지가 이미 수신된 메시지와 중복되는지 여부입니다. |
mqtt.isRetained |
이 메시지가 현재 게시자가 보낸 것인지, 아니면 서버가 이 항목에 마지막으로 게시한 메시지로’보관’했는지 여부입니다. |