Apigee Integration 및 Cloud Pub/Sub 트리거 시작하기

Apigee Integration 및 Cloud Pub/Sub 트리거를 사용하여 샘플 통합을 만드는 방법을 알아보세요. 다음 단계에서는 완전한 통합을 실행하는 데 필요한 트리거, 태스크, 변수, 데이터 매핑을 구성하는 방법을 설명합니다.

개요

이 빠른 시작에서는 Cloud Pub/Sub 트리거와의 통합을 만들어 IOT 기기로부터 온도 값(캘빈)을 읽는 기존 Pub/Sub 주제를 리슨합니다. 그런 후 데이터 매핑 태스크를 사용해서 Pub/Sub 메시지를 섭씨로 변환하고 값을 이메일로 보낼 수 있습니다.

시작하기 전에

빠른 시작을 시작하기 전에 다음 작업을 수행해야 합니다.

    • 다음 IAM 역할을 Google Cloud 프로젝트의 Apigee Integration 서비스 에이전트(service-PROJECT_NUMBER@gcp-sa-apigee.iam.gserviceaccount.com)에 할당합니다.
      • Pub/Sub 편집자
      • Apigee Integration 호출자

        IAM 역할 할당에 대한 자세한 내용은 IAM 역할 및 권한을 참조하세요.

    환경 설정

    새 Cloud Pub/Sub 주제 만들기

    이 빠른 시작에서는 IOT 기기로부터 온도 값(캘빈)을 읽는 Pub/Sub 주제를 사용한다고 가정합니다. 이 주제가 실제로 기기에 연결되어 있을 필요는 없습니다. 이 빠른 시작은 주제를 리슨하고 트리거 시 태스크를 수행하는 통합 기능을 테스트합니다.

    이 빠른 시작의 목적에 따라 샘플 주제를 만들려면 다음 안내를 따르세요.

    1. Cloud 콘솔에서 Pub/Sub 주제 페이지로 이동합니다.

      Pub/Sub 주제 페이지로 이동

    2. 주제 만들기를 클릭합니다.
    3. 주제 ID 필드에 고유한 주제 이름을 제공합니다. 예를 들면 temperaturesensor입니다.
    4. 저장을 클릭합니다.

    새 통합 만들기

    새 통합을 만들려면 다음 단계를 수행합니다.

    1. Apigee UI에서 Apigee 조직을 선택합니다.
    2. 개발 > 통합을 클릭합니다.
    3. 통합 만들기를 클릭합니다.
    4. 통합 만들기 대화상자에 이름과 설명을 입력합니다. 예를 들면 my-test-integration입니다.
    5. 통합 리전을 선택합니다.
    6. 만들기를 클릭하여 통합 편집기를 엽니다.

    Cloud Pub/Sub 트리거 추가

    통합에 Cloud Pub/Sub 트리거를 추가하려면 다음 단계를 따르세요.
    1. 통합 편집기에서 트리거를 선택하여 사용 가능한 트리거 목록을 표시합니다.
    2. Cloud Pub/Sub 트리거 요소를 클릭하여 디자이너에 배치합니다.

    Cloud Pub/Sub 트리거 구성

    통합 편집기에서 Cloud Pub/Sub 트리거 요소를 클릭하여 트리거 구성 창을 봅니다.

    Pub/Sub 주제 필드에 다음 형식으로 트리거로 리슨할 주제를 지정합니다.

    projects/PROJECT_ID/topics/TOPIC_ID
    각 항목의 의미는 다음과 같습니다.
    • PROJECT_ID는 주제가 생성된 Google Cloud 프로젝트입니다.
    • TOPIC_ID시작하기 전에에서 만든 Cloud Pub/Sub 주제의 ID입니다.

    예를 들어 프로젝트 이름이 my-project이고 주제 이름을 temperaturesensor로 지정했으면 다음을 입력합니다.

    projects/my-project/topics/temperaturesensor

    Google Cloud 프로젝트에서 사용 가능한 모든 주제를 보려면 주제에서 주제 이름 열을 참조하세요.

    Cloud Pub/Sub 트리거 구성 창에는 Pub/Sub 메시지 저장을 위해 트리거 출력 필드에 변수가 자동으로 입력됩니다.

    데이터 매핑 태스크 추가 및 구성

    데이터 매핑 태스크를 구성하려면 다음 안내를 따르세요.

    1. 태스크를 선택하여 사용 가능한 태스크 목록을 표시합니다.
    2. 데이터 매핑 요소를 클릭하고 통합 편집기에 배치합니다.
    3. 디자이너에서 데이터 매핑 태스크를 클릭하여 태스크의 구성 창을 엽니다.
    4. 데이터 매핑 편집기 열기를 클릭합니다.

      데이터 매핑 편집기를 사용하면 사용 가능한 변환 함수를 사용하여 원하는 출력 변수에 입력 변수를 매핑할 수 있습니다. 그러면 출력을 다른 통합 태스크 또는 트리거에 변수로 사용할 수 있습니다. 데이터를 변수로 전달하는 방법에 대한 자세한 내용은 Apigee Integration에서 변수 사용을 참조하세요.

      이 빠른 시작에서는 다음 단계에 따라 CloudPubSubMessage를 입력으로 사용하여 매핑을 만듭니다.

      1. 변수 목록에서 CloudPubSubMessage JSON 변수를 확장하고 CloudPubSubMessage.data 변수를 첫 번째 입력 행으로 드래그합니다.
      2. CloudPubSubMessage.data 변수 옆에 있는 +(함수 추가)를 클릭하여 사용 가능한 함수의 드롭다운 목록을 확인합니다.
      3. TO_DOUBLE()을 선택하여 CloudPubSubMessage.data 값을 double 데이터 유형으로 변환합니다.
      4. +(함수 추가)를 다시 클릭하여 SUBTRACT 함수를 선택하고 연결합니다.
      5. SUBTRACT 함수 값으로 273.15를 입력합니다. 이는 켈빈 온도를 섭씨 온도로 변환하는 것입니다.
      6. 출력 열의 첫 번째 열을 클릭하여 변환된 데이터 값을 저장할 새 출력 변수를 만듭니다. 다음 입력란을 작성하세요.
        • 이름: TempInCelsius를 입력합니다.
        • 통합 출력으로 사용을 선택합니다.
        • 만들기를 클릭하여 변수를 만들고 창을 닫습니다. 새 TempInCelsius 변수가 변수 목록에 나타납니다.
      7. 변수 목록에서 TempInCelsius 변수를 입력 열의 두 번째 행으로 드래그합니다.
      8. TempInCelsius 변수에서 + (함수 추가)를 클릭하여 사용 가능한 함수의 드롭다운 목록을 확인합니다.
      9. TO_STRING()을 클릭하여 변수의 데이터 유형을 double에서 string으로 변환합니다.
      10. 출력 열의 두 번째 행을 클릭하여 변환된 데이터 값을 저장할 새 변수를 만듭니다. 다음 입력란을 작성하세요.
        • 이름: TempInCelsiusString를 입력합니다.
        • 빈 기본값: 빈 문자열을 선택합니다.
        • 통합의 출력으로 사용 체크박스를 선택합니다.
        • 만들기를 클릭하여 변수를 만들고 창을 닫습니다. 새로운 변수가 데이터 매핑 편집기 왼쪽에 있는 변수 목록에 표시됩니다.
      11. 매핑이 완료되면 데이터 매핑 편집기를 닫습니다. 모든 변경사항이 자동 저장됩니다.

    이메일 보내기 태스크 추가 및 구성

    이메일 보내기 태스크를 구성하려면 다음 안내를 따르세요.

    1. 통합 편집기에서 태스크를 선택하여 사용 가능한 태스크 목록을 표시합니다.
    2. 이메일 보내기 태스크 요소를 클릭하고 통합 편집기에 배치합니다.
    3. 디자이너에서 이메일 보내기 요소를 클릭하여 태스크 구성 창을 엽니다. 다음 속성을 설정합니다.
      • 수신자: 이메일 주소를 입력합니다. 이 이메일을 사용하여 통합 완료를 확인합니다.
      • 제목: Temperature in Celsius를 입력합니다.
      • 일반 텍스트 본문: 앞서 데이터 매핑 태스크에서 만든 TempInCelsiusString 변수를 선택합니다.
      • 나머지 옵션은 기본 구성에서 남겨둘 수 있습니다.
      속성 변경사항은 자동으로 저장됩니다.

    필수 에지 연결 추가

    에지는 통합에서 두 요소 간의 연결입니다. 연결은 한 요소(태스크 또는 트리거)에서 다른 요소로 제어 흐름의 방향을 나타냅니다. 에지에 대한 자세한 내용은 에지를 참조하세요.

    1. Cloud Pub/Sub 트리거 요소에서 제어 영역 위로 마우스 포인터를 가져간 후 줄을 클릭해서 데이터 매핑 태스크 요소의 제어 지점으로 드래그하여 Cloud Pub/Sub 트리거 요소에서 데이터 매핑 요소로 에지 연결을 추가합니다. 에지는 Cloud Pub/Sub 트리거 태스크에서 데이터 매핑 태스크로의 제어 흐름을 나타냅니다.
    2. 데이터 매핑 요소의 제어 지점에 마우스를 가져간 뒤 클릭한 다음 이메일 보내기 태스크 요소의 제어 지점으로 선을 드래그하여 데이터 매핑 요소에서 이메일 보내기 요소로 에지 연결을 추가합니다. 에지는 데이터 매핑 태스크에서 이메일 보내기 태스크로의 제어 흐름을 나타냅니다.

    완료된 연결은 아래 그림과 같이 표시됩니다.

    빠른 시작 흐름을 보여주는 이미지 빠른 시작 흐름을 보여주는 이미지

    통합 테스트

    Pub/Sub 주제 페이지에서 새 통합을 테스트하려면 다음 단계를 따르세요.

    1. Cloud 콘솔에서 Pub/Sub 주제 페이지로 이동합니다.

      Pub/Sub 주제 페이지로 이동

    2. 사용자가 만든 temperaturesensor 주제를 검색하고 선택합니다.
    3. 주제 세부정보 페이지에서 + 메시지 게시를 클릭하여 메시지 게시 구성 창을 엽니다.
    4. 메시지 본문 필드에서 307.15를 입력합니다.

      이 메시지를 만드는 과정은 IOT 기기에서 Pub/Sub가 수신한 온도 값(캘빈)을 게시하는 과정을 시뮬레이션합니다.

    5. 게시를 클릭하여 주제에 메시지를 게시하고 통합을 트리거합니다.

    성공적으로 완료했으면 통합이 캘빈에서 섭씨로 변환된 온도가 포함된 이메일을 이메일 보내기 태스크에 지정된 이메일 주소로 전송합니다. 이메일 클라이언트에서 이메일 수신 여부를 확인합니다.

    통합에서 전송된 이메일에는 값 34가 포함된 메시지 본문이 포함됩니다.

    이메일의 내용을 확인하는 것 외에도 로그를 검사하여 지정된 통합의 상태와 페이로드를 확인할 수 있습니다. 로그를 보려면 다음 안내를 따르세요.

    1. 통합 편집기에서 실행 로그 아이콘을 보여주는 이미지이 통합의 실행 로그 보기를 클릭합니다. 실행 로그 페이지가 나타납니다. 실행 로그에 대한 자세한 내용은 통합 실행 로그 보기를 참조하세요.
    2. 실행 로그 페이지에서 통합 실행 시도에 대한 세부정보를 볼 수 있습니다. 각 항목에는 다음을 포함하여 실행 시도에 대한 세부정보가 포함됩니다.
      • 통합 이름
      • 실행 ID
      • 상태
      • 시작 시간
      • 시간
      • 통합 버전
      • 트리거 ID
    3. 실행된 통합 옆의 확장 화살표(>)를 클릭하여 통합에 있는 태스크 및 변수의 확장된 목록과 태스크 상태 및 변수 페이로드를 확인합니다.