개요
이 튜토리얼에서는 고객 정보를 가져오기 위한 API 요청을 수신하는 API 트리거를 사용하여 통합을 만듭니다. API 요청 위치에 따라 통합은 MySQL 데이터베이스 또는 Oracle 데이터베이스에서 고객 세부정보를 가져옵니다.
개발 환경 준비
MySQL 데이터베이스 설정
MySQL 서버에 연결하고 이 튜토리얼에서 사용할 데이터베이스와 테이블을 만듭니다. 이 튜토리얼에서는 다음 행과 함께 Customers
라는 테이블이 포함된 데이터베이스를 사용합니다.
+-------------+---------------+--------------------+------------------+ | customer_id | customer_name | customer_emailID | customer_city | +-------------+---------------+--------------------+------------------+ | 1 | Alex | test-01@test.com | New York | | 2 | Dana | test-02@test.com | Seattle | +-------------+---------------+--------------------+------------------+
MySQL 데이터베이스를 만들고 사용하는 방법에 대한 자세한 내용은 MySQL 문서를 참고하세요.
Oracle 데이터베이스 설정
Oracle 데이터베이스에 연결하고 이 튜토리얼에서 사용할 테이블을 만듭니다. 이 튜토리얼에서는 다음 행과 함께 Customers
라는 SQL 테이블이 포함된 데이터베이스를 사용합니다.
+-------------+---------------+--------------------+------------------+ | customer_id | customer_name | customer_emailID | customer_city | +-------------+---------------+--------------------+------------------+ | 1 | Amal | test-01@test.com | Delhi | | 2 | Hao | test-02@test.com | Beijing | +-------------+---------------+--------------------+------------------+
Oracle 데이터베이스를 만들고 사용하는 방법에 대한 자세한 내용은 Oracle 문서를 참고하세요.
연결 구성
이 튜토리얼에서는 Integration Connectors에서 다음 연결을 구성해야 합니다.
- MySQL 연결
- Integration Connectors에서 MySQL 연결을 구성하여
Customer
테이블 항목을 가져옵니다. MySQL 커넥터 구성에 관한 자세한 내용은 MySQL 커넥터를 참고하세요. - Oracle DB 연결
- Integration Connectors에서 Oracle DB 연결을 구성하여
Customer
테이블 항목을 가져옵니다. MySQL 커넥터 구성에 관한 자세한 내용은 Oracle DB 커넥터를 참고하세요.
통합 만들기
새 통합을 만들려면 다음 단계를 수행합니다.
- Google Cloud 콘솔에서 Application Integration 페이지로 이동합니다.
- 왼쪽 탐색 메뉴에서 통합을 클릭하여 통합 페이지를 엽니다.
- 통합 이름:
api_fulfilment
을 입력합니다. - 설명:
Demo integration created for tutorial
을 입력합니다. - 리전: 지원되는 리전 목록에서
us-central1
을 선택합니다. - 만들기를 클릭하여 통합 편집기를 엽니다.
통합 만들기를 클릭하고 통합 만들기 페이지에서 다음 세부정보를 제공합니다.
- 통합 이름:
통합 트리거 설정
통합을 성공적으로 만들면 식별된 이벤트의 통합을 호출하는 통합 트리거를 추가하고 구성할 수 있습니다.
이 튜토리얼에서는 API 트리거가 모든 새 API 요청에 대한 통합을 호출하는 데 사용됩니다. api_fulfilment
통합에 API 트리거를 추가하고 구성하려면 다음을 수행합니다.
- 통합 편집기에서 트리거를 클릭하여 사용 가능한 트리거 목록을 표시합니다.
- 통합 편집기에서 API 트리거 요소를 클릭하여 배치합니다.
Application Integration은 트리거 라벨, 트리거 이름, 트리거 ID를 자동으로 채웁니다. 트리거 ID는
api_trigger/TRIGGER_NAME
형식의 머신 생성 ID이며 API 요청에 사용됩니다.
이 트리거에는 추가 구성이 필요하지 않습니다.
통합 변수 만들기
통합 변수는 프로그래밍 언어에 사용되는 변수와 유사합니다. 변수의 데이터는 통합이 실행되는 동안 읽고 쓸 수 있습니다. 이 튜토리얼에 필요한 변수를 만들려면 다음을 수행합니다.
- 디자이너 탐색 메뉴에서 (전환 패널)을 클릭하여 변수 창을 표시합니다.
- + 만들기를 클릭하고 다음 통합 변수를 만듭니다.
변수 이름 데이터 유형 변수 유형 location
STRING
통합 입력 customer_id
STRING
통합 입력 customer_record
JSON
통합 출력
MySQL 데이터베이스에서 고객 데이터 검색
인그레스 API 요청이 US
위치에서 온 경우 다음을 수행하여 MySQL 데이터베이스에서 고객 데이터를 검색합니다.
MySQL 데이터베이스에 연결
MySQL 고객 테이블에서 고객 세부정보를 검색하려면 다음 단계를 수행하여 커넥터 태스크를 추가하고 구성합니다.
- 통합 편집기에서 태스크를 클릭하여 사용 가능한 태스크 목록을 표시합니다.
- 커넥터 요소를 클릭하고 통합 편집기에 배치합니다.
- 디자이너에서 커넥터 태스크 요소를 선택하여 커넥터 태스크 구성 창을 확인합니다.
Fetch MySQL Data
로 바꿉니다.
을 클릭하고 커넥터 라벨의 이름을 - 커넥터 구성을 클릭합니다.
- 커넥터 태스크 편집기 페이지에서 다음을 수행합니다
- 연결 선택에서
us-central1
리전을 선택합니다. - 사용 가능한 연결 목록에서 Salesforce 연결을 선택합니다.
- 다음을 클릭합니다.
- 유형에서 항목을 선택합니다.
- 항목/작업 설정의 사용 가능한 항목 목록에서 고객을 선택한 후 작업으로 가져오기를 선택합니다.
- 완료를 클릭하여 연결 구성을 완료하고 창을 닫습니다.
- 연결 선택에서
고객 ID를 MySQL 커넥터에 매핑
데이터 매핑 태스크는 고객 ID를 MySQL 커넥터에 매핑하는 데 사용됩니다. 통합에서 데이터 매핑을 추가하고 구성하려면 다음을 수행합니다.
- 통합 편집기에서 태스크를 클릭하여 사용 가능한 태스크 목록을 표시합니다.
- 데이터 매핑 요소를 클릭하고 통합 편집기에 배치합니다.
- 디자이너에서 데이터 매핑 요소를 선택하여 태스크 구성 창을 확인합니다.
Map to MySQL
로 바꿉니다.
를 클릭하고 데이터 매핑 태스크의 이름을 - 데이터 매핑 편집기 열기를 클릭합니다.
데이터 매핑 편집기를 사용하면 사용 가능한 변환 함수를 사용하여 원하는 출력 변수에 입력 변수를 매핑할 수 있습니다. 그러면 출력을 다른 통합 태스크 또는 트리거에 변수로 사용할 수 있습니다. 변수 매핑에 대한 자세한 내용은 매핑 추가를 참조하세요.
- 트리거
customer_id
통합 변수를 자동 생성된 커넥터entityId(Fetch MySQL Data)
입력 변수에 매핑합니다.매핑이 완료되면 창을 닫습니다. 모든 변경사항이 자동 저장됩니다.
- MySQL에 매핑 태스크에서 MySQL 데이터 가져오기 커넥터에 에지 연결을 추가합니다.
MySQL 고객 세부정보 검색
MySQL 커넥터에서 고객 세부정보를 검색하려면 다음을 수행합니다.
- 통합 편집기에서 태스크를 클릭하여 사용 가능한 태스크 목록을 표시합니다.
- 데이터 매핑 요소를 클릭하고 통합 편집기에 배치합니다.
- 디자이너에서 데이터 매핑 요소를 클릭하여 태스크 구성 창을 확인합니다.
Get MySQL data
로 바꿉니다.
를 클릭하고 데이터 매핑 태스크의 이름을 - 데이터 매핑 편집기 열기를 클릭합니다.
- MySQL
connectorOutputPayload (Fetch MySQL Data)
출력 변수를customer_record
통합 변수에 매핑합니다.매핑이 완료되면 창을 닫습니다. 모든 변경사항이 자동 저장됩니다.
- MySQL 데이터 가져오기 커넥터에서 MySQL 데이터 가져오기 태스크에 에지 연결을 추가합니다.
Oracle 데이터베이스에서 고객 데이터 검색
인그레스 API 요청이 APAC
위치에서 온 경우 다음을 수행하여 Oracle 데이터베이스에서 고객 데이터를 검색합니다.
Oracle 데이터베이스에 연결
Oracle 고객 테이블에서 고객 세부정보를 검색하려면 다음 단계를 수행하여 커넥터 태스크를 추가하고 구성합니다.
- 통합 편집기에서 태스크를 클릭하여 사용 가능한 태스크 목록을 표시합니다.
- 커넥터 요소를 클릭하고 통합 편집기에 배치합니다.
- 디자이너에서 커넥터 태스크 요소를 선택하여 커넥터 태스크 구성 창을 확인합니다.
Fetch Oracle Data
로 바꿉니다.
을 클릭하고 커넥터 라벨의 이름을 - 커넥터 구성을 클릭합니다.
- 커넥터 태스크 편집기 페이지에서 다음을 수행합니다
- 연결 선택에서
us-central1
리전을 선택합니다. - 사용 가능한 연결 목록에서 Salesforce 연결을 선택합니다.
- 다음을 클릭합니다.
- 유형에서 항목을 선택합니다.
- 항목/작업 설정의 사용 가능한 항목 목록에서 고객을 선택한 후 작업으로 가져오기를 선택합니다.
- 완료를 클릭하여 연결 구성을 완료하고 창을 닫습니다.
- 연결 선택에서
고객 ID를 Oracle 커넥터에 매핑
통합에서 데이터 매핑을 추가하고 구성하려면 다음을 수행합니다.
- 통합 편집기에서 태스크를 클릭하여 사용 가능한 태스크 목록을 표시합니다.
- 데이터 매핑 요소를 클릭하고 통합 편집기에 배치합니다.
- 디자이너에서 데이터 매핑 요소를 선택하여 태스크 구성 창을 확인합니다.
Map to Oracle
로 바꿉니다.
를 클릭하고 데이터 매핑 태스크의 이름을 - 데이터 매핑 편집기 열기를 클릭합니다.
- 트리거
customer_id
통합 변수를 자동 생성된 커넥터entityId(Fetch Oracle Data)
입력 변수에 매핑합니다.매핑이 완료되면 창을 닫습니다. 모든 변경사항이 자동 저장됩니다.
- Oracle에 매핑 태스크에서 Oracle 데이터 가져오기 커넥터에 에지 연결을 추가합니다.
Oracle 고객 세부정보 검색
Oracle 커넥터에서 고객 세부정보를 검색하려면 다음을 수행합니다.
- 통합 편집기에서 태스크를 클릭하여 사용 가능한 태스크 목록을 표시합니다.
- 데이터 매핑 요소를 클릭하고 통합 편집기에 배치합니다.
- 디자이너에서 데이터 매핑 요소를 클릭하여 태스크 구성 창을 확인합니다.
Get Oracle data
로 바꿉니다.
를 클릭하고 데이터 매핑 태스크의 이름을 - 데이터 매핑 편집기 열기를 클릭합니다.
- Oracle
connectorOutputPayload (Fetch Oracle Data)
출력 변수를customer_record
통합 변수에 매핑합니다.매핑이 완료되면 창을 닫습니다. 모든 변경사항이 자동 저장됩니다.
- Oracle 데이터 가져오기 커넥터에서 Oracle 데이터 가져오기 태스크에 에지 연결을 추가합니다.
에지 조건 추가
에지 조건을 사용하면 에지에 연결된 태스크에 전달할 통합 제어에 필요한 조건을 지정할 수 있습니다. 필수 태스크를 추가하고 구성했으므로 이제 에지 조건을 추가하여 통합의 흐름을 정의할 수 있습니다.
다음 에지 조건은 location
통합 변수를 기반으로 통합 흐름을 제어합니다.
- 다음 에지 조건을 사용하여 API 트리거의 에지 연결을 MySQL에 매핑 태스크에 추가합니다.
$location$ = "US"
- 다음 에지 조건을 사용하여 API 트리거의 에지 연결을 Oracle에 매핑 태스크에 추가합니다.
$location$ = "APAC"
샘플 통합 흐름
다음 그림에서는 이 튜토리얼을 사용하여 만든 통합의 샘플 레이아웃을 보여줍니다.


통합 게시
통합을 게시하려면 통합 편집기 툴바에서 게시를 클릭합니다.
통합이 성공적으로 게시되면 게시된 통합의 실행 로그를 보고 검사할 수 있습니다. 로그를 보려면 이 통합의 실행 로그 보기를 클릭합니다. 실행 로그 페이지가 나타납니다.
통합 테스트
통합 편집기에서 통합 테스트
통합 편집기에서 통합을 테스트하려면 다음 단계를 수행하세요.
- 통합 편집기 툴바에서
통합 테스트 창이 나타납니다.
테스트를 클릭합니다. - 통합 입력 변수의 테스트 값을 입력하라는 메시지가 표시됩니다. 이 테스트를 위해 다음을 수행합니다.
- customer_id:
1
을 입력합니다. - 위치:
APAC
를 입력합니다.
- customer_id:
- 통합 테스트를 클릭합니다.
통합이 성공적으로 실행되고 다음 고객 가치가 표시됩니다.
{ "CUSTOMER_ID": 1, "CUSTOMER_NAME": "Amal" "CUSTOMER_EMAILID": "test-01@test.com " "CUSTOMER_CITY": "Delhi" }
테스트에 대한 자세한 내용은 통합 테스트 및 게시를 참조하세요.
REST API 호출을 사용하여 테스트
이제 통합이 게시되고 실행 중이므로 다음 POST REST 호출을 사용하여 통합을 호출할 수 있습니다.
URL:https://integrations.googleapis.com/v1/projects/project-name/locations/-/integrations/api_fulfilment:execute
{"trigger_id":"api_trigger/api_fulfilment_API_1"}
예시: 맞춤 입력으로 API 요청
curl -v -X POST -H "Content-Type: application/json" 'https://integrations.googleapis.com/v1/projects/connectors-ip-test/locations/us-central1/integrations/api-fulfillment-integration:execute' -H "Authorization: Bearer $(gcloud auth AUTH_PROFILE)" -d '{ "triggerId": "api_trigger/api-fulfillment-integration_API_1", "inputParameters": { "customer_id": {"string_value": 1}, "location" : {"string_value" : "US"}} }'
API는 다음 JSON이 모두 포함된 통합 실행 응답을 반환합니다.
{ "CUSTOMER_ID": 2, "CUSTOMER_NAME": "Dana" "CUSTOMER_EMAILID": "test-02@test.com " "CUSTOMER_CITY": "Seattle" }
삭제
이 튜토리얼에서 사용한 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 통합을 게시 취소하고 Integration Connectors에서 생성된 연결을 삭제합니다.