6.4. API 공급자 통합을 위한 작업 흐름 정의
REST API 서비스를 정의하는 OpenAPI 문서는 서비스에서 수행할 수 있는 작업을 정의합니다. API 공급자 통합을 생성한 후 각 작업에 대한 흐름을 편집할 수 있습니다.
각 작업에는 정확히 하나의 흐름이 있습니다. 작업 흐름에서는 다른 애플리케이션 및 서비스에 대한 연결과 연결 간 데이터에서 작동하는 단계를 추가할 수 있습니다.
작업 흐름을 추가하면 API 공급자 통합이 기반으로 하는 OpenAPI 문서를 업데이트해야 할 수 있습니다. 이렇게 하려면 API 공급자 통합을 편집 중인 페이지의 오른쪽 상단에 있는 API 정의 보기/ 편집을 클릭합니다. API Creator 편집기에 문서가 표시됩니다. OpenAPI 정의에서는 각 작업에 고유한 operationId
속성이 있는 한 API Splunk 및 Fuse Online에 업데이트를 저장하면 API 공급자 통합의 흐름 정의를 동기화하여 업데이트를 수행할 수 있습니다.
사전 요구 사항
- API 공급자 통합을 생성하고 이름을 부여하여 저장했습니다.
- 작업 흐름에 연결하려는 각 애플리케이션 또는 서비스에 대한 연결을 생성했습니다. 자세한 내용은 연결 생성에 대한 정보를 참조하십시오.
- Fuse Online에서는 API에서 정의하는 작업 목록을 표시합니다.
절차
- 작업 목록 페이지에서 정의하려는 작업의 흐름 만들기 를 클릭합니다.
이 흐름에 추가할 각 연결에 대해 다음을 수행합니다.
- 흐름 시각화에서 더하기 기호를 클릭하여 해당 위치에 연결을 추가합니다.
- 추가할 연결을 클릭합니다.
- 이 연결을 수행할 작업을 선택합니다.
- 레이블이 지정된 필드에 데이터를 입력하여 작업을 구성합니다.
- 다음을 클릭합니다.
계속하기 전에 원하는 모든 연결을 흐름에 추가합니다.
이 작업 흐름에서 연결 간 데이터를 처리하려면 다음을 수행합니다.
- 흐름 시각화에서 단계를 추가할 더하기 기호를 클릭합니다.
- 추가할 단계를 클릭합니다.
- 레이블이 지정된 필드에 데이터를 입력하여 단계를 구성합니다.
다음을 클릭합니다.
자세한 내용은 연결 간 단계 추가 를 참조하십시오.
연결 간에 데이터를 처리하는 다른 단계를 추가하려면 이 명령의 하위 집합을 반복합니다.
다음 연결의 필드에 데이터를 매핑합니다.
- 흐름 시각화에서 아이콘이 일치하지 않는 데이터 유형을 확인하여 들어오는 데이터를 처리할 수 없음을 나타냅니다. 여기에 데이터 매퍼 단계를 추가해야 합니다.
흐름 시각화의 각 데이터 불일치 아이콘에 대해:
- 해당 단계 직전에 있는 더하기 기호를 클릭합니다.
- 데이터 매퍼 를 클릭합니다.
- 필요한 매핑을 정의합니다. 자세한 내용은 다음 연결의 필드에 통합 데이터 매핑을 참조하십시오.
- Done 을 클릭하여 데이터 매퍼 단계를 흐름에 추가합니다.
흐름 시각화에서 제공된 API 반환 경로 단계에서 구성을 클릭합니다.
모든 API 공급자 통합은 작업 흐름 실행을 트리거한 REST API 호출자에 대한 응답을 전송하여 각 작업 흐름을 완료합니다. 응답에는 작업의 흐름을 완료하는 Provided API 반환 경로 단계에 대해 구성하는 반환 코드 중 하나가 포함됩니다. 다음과 같이 반환 경로 단계를 구성합니다.
- 기본 응답 의 경우 반환 코드 필드에서 Fuse Online에서 표시하는 기본 응답을 수락하거나 다운을 클릭하고 스크롤을 클릭하여 원하는 기본 응답을 선택합니다. 흐름은 작업 흐름 실행 시 구성된 오류 응답 중 하나를 반환하지 않으면 이 응답을 보냅니다. 일반적으로 기본 응답 반환 코드는 성공적인 작업을 나타냅니다.
오류 처리 에서 반환된 메시지의 본문에 오류 메시지를 포함할지 여부를 나타냅니다.
개발 중에 일반적으로 오류 메시지를 반환하려고 합니다. 그러나 프로덕션에서는 민감한 정보 또는 독점 정보가 포함된 경우 오류 메시지를 숨기고자 할 수 있습니다. 오류 메시지는
responseCode
,category
,message
,error
요소가 포함된 JSON 형식의 문자열입니다. 예를 들면 다음과 같습니다.{ responseCode: 404, category: "ENTITY_NOT_FOUND_ERROR", message: "SQL SELECT did not SELECT any records" error: SYNDESIS_CONNECTION_ERROR }
개발 중에 오류가 발생했음을 확인하는 가장 신뢰할 수 있는 방법은 호출자에 대한 응답에서
HTTP_RESPONSE STATUS
헤더를 확인하는 것입니다.INFO
메시지에 대한 통합 Pod의 로그를 확인할 수도 있습니다. 통합의 활동 로그에 성공적인 교환 및 오류가 항상 활동 로그에 표시되지는 않습니다.오류 응답 코드 에서 는 Fuse Online에서 흐름의 연결이 반환될 수 있는 각 오류에 대한 항목을 표시합니다. 각 오류에 대해 200 All is good default return code 또는 click to select another HTTP status return code를 수락합니다.
선택할 수 있는 반환 코드는 OpenAPI 문서가 이 흐름이 실행되는 작업에 대해 정의하는 반환 코드입니다. Fuse Online에서 필요한 반환 코드를 표시하지 않으면 OpenAPI 문서를 편집하여 추가할 수 있습니다.
이렇게 하려면 오른쪽 상단에서 API 정의 보기/편집 을 클릭합니다. 필요에 따라 OpenAPI 문서를 편집합니다. 완료되면 OpenAPI 문서를 저장합니다. Fuse Online에서 Provided API 반환 경로 편집으로 돌아가고 저장한 모든 변경 사항을 반영합니다.
- 다음을 클릭하여 반환 경로 구성을 완료합니다.
이 흐름에 필요한 모든 연결 및 단계가 있고 데이터 불일치 아이콘이 없거나 더 이상 흐름을 편집하지 않으려면 다음 중 하나를 수행하십시오.
- 오른쪽 상단에 있는 통합 실행을 시작하려면 게시 를 클릭합니다. 이렇게 하면 통합을 빌드하고, REST API 서비스를 OpenShift에 배포하고, 통합을 실행할 수 있도록 합니다. 작업의 흐름 또는 작업 흐름을 편집할 때마다 통합을 게시할 수 있습니다.
- 작업 목록을 오른쪽 상단에 표시하려면 저장을 클릭합니다.
다른 작업의 흐름을 편집하려면 이 절차를 반복합니다.
API 공급자 통합 테스트
다음 플랫폼 중 하나에서 실행되는 API 공급자 통합을 테스트합니다.
- OpenShift Online
- OpenShift Dedicated
- API 검색이 비활성화된 경우 OpenShiftContainer Platform
curl
유틸리티를 사용하여 통합이 예상대로 작동하는지 확인할 수 있습니다.curl
명령에서 API 공급자 통합을 게시한 후 Fuse Online이 표시하는 외부 URL을 지정합니다. 이 작업의 예는 예제 API 공급자 빠른 시작 통합 테스트를 참조하십시오.API 검색이 활성화된 경우 OpenShift Container Platform에서 실행되는 API 공급자통합 테스트
Red Hat 3scale은 API 공급자 통합을 게시합니다. 통합을 테스트하려면 3scale 대시보드를 열어 통합의 URL을 가져옵니다.
예를 들어 Red Hat 3scale이 통합 API에 대한 액세스를 제어하거나 Fuse Online에서 API 공급자 통합을 테스트하려는 경우 API 공급자 통합 검색을 비활성화할 수 있습니다. 검색을 비활성화하면 Fuse Online에서 통합을 다시 게시하고 통합 실행을 호출 및 테스트하기 위한 외부 URL을 제공합니다. 이렇게 하려면 Fuse Online에서 통합 요약 페이지로 이동합니다. 이 페이지에서 검색 비활성화 를 클릭합니다. Fuse Online에서 통합을 다시 게시하고 통합의 URL을 제공합니다. 통합을 테스트하는 방법에 대한 예제는 예제 API 공급자 빠른 시작 통합 테스트를 참조하십시오. 테스트 후 3scale이 게시할 수 있도록 API 공급자 통합에 대한 검색을 다시 활성화할 수 있습니다.
각 API 공급자 통합에 대해 검색을 활성화하거나 비활성화할 수 있습니다.