Azure Logic Apps의 워크플로에서 이벤트 허브에 연결

적용 대상: Azure Logic Apps(소비)

Azure Event Hubs 커넥터를 사용하면 논리 앱 워크플로를 Azure의 이벤트 허브에 연결할 수 있습니다. 그런 다음, 이벤트 허브로 전송되는 이벤트를 워크플로에서 모니터링하고 관리하도록 할 수 있습니다. 예를 들어 워크플로는 이벤트 허브에서 이벤트를 확인하고 보내고 받을 수 있습니다. 이 문서에서는 이벤트 허브에 연결하고 Event Hubs 트리거 또는 작업을 워크플로에 추가하는 방법을 보여주면서 Azure Event Hubs 커넥터 사용을 위한 시작 가이드를 제공합니다.

Azure Event Hubs 또는 Azure Logic Apps에 대한 자세한 내용은 Azure Event Hubs 정의 또는 Azure Logic Apps란?을 참조하세요.

사용 가능한 작업

모든 작업 및 기타 기술 정보(예: 속성, 한도 등)는 Event Hubs 커넥터의 참조 페이지를 검토하세요.

참고 항목

ISE(통합 서비스 환경)에서 호스트되는 논리 앱에서는 커넥터의 ISE 버전이 ISE 메시지 한도를 사용합니다.

필수 조건

사용 권한 확인 및 연결 문자열 가져오기

워크플로에서 이벤트 허브에 액세스할 수 있는지 확인하려면 권한을 확인한 다음, 이벤트 허브의 네임스페이스에 대한 연결 문자열을 가져옵니다.

  1. Azure Portal에서 특정 이벤트 허브가 아닌 Event Hubs 네임스페이스로 이동합니다.

  2. 네임스페이스 메뉴의 설정에서 공유 액세스 정책을 선택합니다. 클레임 열에서 해당 네임스페이스에 대해 최소한 관리 권한이 있는지 확인합니다.

    Screenshot showing the Azure portal, your Event Hubs namespace, and

  3. 연결 정보를 나중에 수동으로 입력하려는 경우 이벤트 허브 네임스페이스에 대한 연결 문자열을 가져옵니다.

    1. 정책 열에서 RootManageSharedAccessKey를 선택합니다.

    2. 기본 키 연결 문자열을 찾습니다. 나중에 사용할 수 있도록 연결 문자열을 복사하고 저장합니다.

      Screenshot showing the primary key's connection string with the copy button selected.

      연결 문자열이 Event Hubs 네임스페이스 또는 특정 Event Hub와 연결되어 있는지 확인하려면 연결 문자열에 EntityPath 매개 변수가 있는지 확인합니다. 이 매개 변수를 찾으면 연결 문자열은 특정 Event Hubs "엔터티"에 대한 것이며 워크플로에 사용할 올바른 문자열이 아닙니다.

이벤트 허브 연결 만들기

Event Hubs 트리거 또는 작업을 처음 추가하면 이벤트 허브에 대한 연결을 만들라는 메시지가 표시됩니다.

  1. 메시지가 표시되면 다음 옵션 중 하나를 선택합니다.

    • 다음 연결 정보를 제공합니다.

      속성 필요함 Description
      연결 이름 <connection-name> 연결에 만들 이름
      Event Hubs 네임스페이스 <event-hubs-namespace> 사용하려는 Event Hubs 네임스페이스를 선택합니다.
    • 이전에 저장한 연결 문자열을 수동으로 입력하려면 수동으로 연결 정보 입력을 선택합니다. 연결 문자열을 찾는 방법을 알아보세요.

  2. 선택하지 않은 경우 사용할 Event Hubs 정책을 선택한 다음, 만들기를 선택합니다.

    Screenshot showing the provided connection information with

  3. 연결을 만든 후에 Event Hubs 트리거 추가 또는 Event Hubs 작업 추가를 계속 진행합니다.

Event Hubs 트리거 추가

Azure Logic Apps에서 모든 워크플로는 특정 조건이 충족될 때 실행되는 트리거로 시작해야 합니다. 트리거가 실행될 때마다 Logic Apps 서비스는 워크플로 인스턴스를 만들고 워크플로의 단계를 실행하기 시작합니다.

다음 단계에서는 트리거를 추가하는 일반적인 방법을 설명합니다. 예를 들어이벤트 허브에서 이벤트를 사용할 수 있는 경우입니다. 이 예에서는 이벤트 허브에서 새 이벤트가 있는지 확인하고 새 이벤트가 있으면 워크플로 실행을 시작하는 트리거를 추가하는 방법을 보여줍니다.

  1. Logic Apps 디자이너에서 빈 논리 앱 워크플로를 엽니다(아직 열려 있지 않은 경우).

  2. 작업 검색 상자에서 event hubs를 입력합니다. 트리거 목록에서 이벤트가 Event Hub에서 사용 가능한 경우라는 이름의 트리거를 선택합니다.

    Select trigger

  3. 이벤트 허브에 대한 연결을 생성하라는 메시지가 표시되면 요청된 연결 정보를 제공합니다.

  4. 트리거에서 모니터링할 이벤트 허브에 대한 정보를 제공합니다. 예를 들면:

    속성 필수 설명
    이벤트 허브 이름 모니터링할 이벤트 허브의 이름
    콘텐츠 형식 아니요 이벤트의 콘텐츠 형식입니다. 기본값은 application/octet-stream입니다.
    소비자 그룹 이름 아니요 이벤트를 읽는 데 사용할 Event Hubs 소비자 그룹의 이름입니다. 지정하지 않으면 기본값 소비자 그룹이 사용됩니다.
    최대 이벤트 수 아니요 최대 이벤트 수입니다. 트리거는 1과 이 속성으로 지정된 이벤트의 수 범위의 숫자를 반환합니다.
    간격 빈도에 따라 워크플로가 실행되는 빈도를 설명하는 양의 정수
    빈도 되풀이 시간 단위

    추가 속성을 보려면 새 매개 변수 추가 목록을 엽니다. 매개 변수를 선택하면 해당 속성이 트리거에 추가됩니다. 예를 들면 다음과 같습니다.

    Trigger properties

    추가 속성

    속성 필수 설명
    콘텐츠 스키마 아니요 이벤트 허브에서 읽을 이벤트의 JSON 콘텐츠 스키마입니다. 예를 들어 콘텐츠 스키마를 지정하는 경우 스키마와 일치하는 이벤트에 대해서만 워크플로를 트리거할 수 있습니다.
    최소 파티션 키 아니요 읽을 최소 파티션 ID를 입력합니다. 기본적으로 모든 파티션이 읽혀집니다.
    최대 파티션 키 아니요 읽을 최대 파티션 ID를 입력합니다. 기본적으로 모든 파티션이 읽혀집니다.
    표준 시간대 아니요 이 트리거는 UTC 오프셋을 허용하지 않으므로 시작 시간을 지정할 때만 적용됩니다. 적용하려는 표준 시간대를 선택합니다.

    자세한 내용은 Azure Logic Apps를 사용하여 되풀이 작업과 워크플로 만들기 및 실행을 참조하세요.

    시작 시간 아니요 시작 시간을 다음 형식으로 입력합니다.

    표준 시간대를 선택하는 경우 YYYY-MM-DDThh:mm:ss

    또는

    표준 시간대를 선택하지 않은 경우 YYYY-MM-DDThh:mm:ssZ

    자세한 내용은 Azure Logic Apps를 사용하여 되풀이 작업과 워크플로 만들기 및 실행을 참조하세요.

  5. 완료되면 디자이너 도구 모음에서 저장을 선택합니다.

  6. 이제 트리거 출력을 사용하여 다른 작업을 수행할 수 있도록 하나 이상의 작업을 계속 추가합니다.

    예를 들어 특정 값(예: 범주)에 따라 이벤트를 필터링하려면 이벤트 보내기 작업에서 조건에 맞는 이벤트만 보내도록 조건을 추가하면 됩니다.

트리거 폴링 동작

모든 Event Hubs 트리거는 긴 폴링 트리거입니다. 이 동작은 트리거가 발생할 때 모든 이벤트를 처리한 다음, 더 많은 이벤트가 이벤트 허브에 표시되도록 30초 동안 대기함을 의미합니다. 설계상, 30초 동안 표시되는 이벤트가 없으면 트리거를 건너뜁니다. 그렇지 않으면 트리거는 이벤트 허브가 빈 상태가 될 때까지 이벤트를 계속 읽습니다. 다음 트리거 폴링은 트리거 속성에 설정한 되풀이 간격을 기준으로 발생합니다.

예를 들어 트리거가 4개의 파티션으로 설정된 경우 이 지연 시간은 트리거가 모든 파티션 폴링을 완료하기까지 최대 2분이 걸릴 수 있습니다. 이 지연 시간 내에 이벤트가 수신되지 않으면 트리거 실행을 건너뜁니다. 그렇지 않으면 트리거는 이벤트 허브가 빈 상태가 될 때까지 이벤트를 계속 읽습니다. 다음 트리거 폴링은 트리거의 속성에 지정한 되풀이 간격을 기준으로 발생합니다.

메시지가 표시되는 특정 파티션을 알고 있는 경우 이 파티션의 이벤트만 읽거나, 트리거의 최대 및 최소 파티션 키를 설정하여 해당 파티션의 이벤트를 읽도록 트리거를 업데이트할 수 있습니다. 자세한 내용은 Event Hubs 트리거 추가 섹션을 참조하세요.

검사점 동작 트리거

Event Hubs 트리거가 이벤트 허브의 각 파티션에서 이벤트를 읽는 경우, 트리거는 자체 상태를 사용하여 스트림 오프셋(파티션의 이벤트 위치) 및 트리거가 이벤트를 읽는 파티션에 대한 정보를 유지합니다.

워크플로가 실행될 때마다 트리거는 트리거 상태에 의해 유지되는 스트림 오프셋부터 시작하여 파티션에서 이벤트를 읽습니다. 라운드 로빈 방식으로 트리거는 이벤트 허브의 각 파티션을 반복하고 후속 트리거 실행에서 이벤트를 읽습니다. 단일 실행은 한 번에 하나의 파티션에서 이벤트를 가져옵니다.

트리거는 스토리지에서 이 검사점 기능을 사용하지 않으므로 추가 비용이 발생하지 않습니다. 그러나 핵심은 Event Hubs 트리거를 업데이트하면 트리거의 상태가 재설정되어 트리거가 스트림 시작 시 이벤트를 읽도록 할 수 있습니다.

Event Hubs 작업 추가

Azure Logic Apps에서 작업은 트리거 또는 다른 작업을 따르고 워크플로에서 작업을 수행합니다. 다음은 작업을 추가하는 일반적인 방법(예: 이벤트 보내기)을 설명하는 단계입니다. 이 예제의 경우 워크플로는 이벤트 허브에서 새 이벤트를 확인하는 Event Hubs 트리거로 시작됩니다.

  1. Logic Apps 디자이너에서 논리 앱 워크플로를 엽니다(아직 열려 있지 않은 경우).

  2. 트리거 또는 다른 작업 아래에서 새 단계를 추가합니다.

    기존 단계 사이에 단계를 추가하려면 마우스를 화살표 위로 이동합니다. 표시되는 더하기 기호(+)를 선택한 다음, 작업 추가를 선택합니다.

  3. 작업 검색 상자에서 event hubs를 입력합니다. 작업 목록에서 이벤트 보내기라는 작업을 선택합니다.

    Select

  4. 이벤트 허브에 대한 연결을 생성하라는 메시지가 표시되면 요청된 연결 정보를 제공합니다.

  5. 작업에서 보내려는 이벤트에 대한 정보를 제공합니다.

    속성 필수 설명
    이벤트 허브 이름 이벤트를 보낼 이벤트 허브
    콘텐츠 아니요 전송하려는 이벤트의 콘텐츠
    속성 아니요 보낼 앱 속성 및 값
    파티션 키 아니요 이벤트를 보낼 위치에 대한 파티션 ID

    추가 속성을 보려면 새 매개 변수 추가 목록을 엽니다. 매개변수를 선택하면 해당 속성이 작업에 추가됩니다. 예를 들면 다음과 같습니다.

    Select event hub name and provide event content

    예를 들어 Event Hubs 트리거의 출력을 다른 이벤트 허브로 보낼 수 있습니다.

    Send event example

  6. 완료되면 디자이너 도구 모음에서 저장을 선택합니다.

커넥터 참조

모든 작업 및 기타 기술 정보(예: 속성, 한도 등)는 Event Hubs 커넥터의 참조 페이지를 검토하세요.

참고 항목

ISE(통합 서비스 환경)에서 호스트되는 논리 앱에서는 커넥터의 ISE 버전이 ISE 메시지 한도를 사용합니다.

다음 단계