리소스 비활성화하기¶
리소스 비활성화는 특정 리소스에 대한 데이터 수집을 중지하는 데 사용됩니다. PUBLIC.DISABLE_RESOURCE
프로시저는 리소스를 비활성화하기 위한 UI 또는 워크시트의 진입점입니다.
이 프로시저를 호출하려면 사용자에게 ADMIN
애플리케이션 역할이 할당되어 있어야 합니다.
리소스 비활성화 프로세스는 여러 단계로 구성됩니다. 그 중 일부 프로세스는 사용자 지정이 가능하지만 적절한 기본값이 포함되어 있습니다. 단계는 다음과 같습니다.
초기 유효성 검사
리소스가 비활성화되기 전의 사용자 지정 논리
활성 수집 프로세스 완료 및 리소스 수집 정의를 비활성으로 표시하기
리소스가 생성된 후의 사용자 지정 논리
초기 유효성 검사¶
초기 유효성 검사는 리소스 비활성화 프로세스의 맨 처음에 수행되며 다음 사항을 확인합니다.
지정된 ID를 갖는 리소스가 있는지 여부
지정된 ID를 갖는 리소스가 이미 비활성화되어 있는지 여부
리소스가 이전에 비활성화된 경우 아무 작업도 수행되지 않으며 성공 응답이 반환됩니다.
리소스가 비활성화되기 전의 사용자 지정 논리¶
이 단계는 리소스가 비활성화되기 전에 사용자 지정 논리를 구현하는 데 사용할 수 있습니다.
이는 기본적으로 PUBLIC.PRE_DISABLE_RESOURCE(resource_ingestion_definition_id VARCHAR)
을 호출하며, 'response_code': 'OK'
를 반환합니다. SQL 스크립트를 통해 덮어쓰거나 DisableResourceHandlerBuilder
를 사용하여 PreDisableResourceCallback
인터페이스의 사용자 지정 구현을 제공함으로써 덮어쓸 수 있습니다.
사용자 지정 논리가 오류를 반환하면 다음 단계가 실행되지 않고 DISABLE_RESOURCE
프로시저에서 제공된 오류 응답이 반환됩니다.
활성 수집 프로세스 완료 및 리소스 수집 정의를 비활성으로 표시하기¶
이 단계에서는 상태가 SCHEDULED
또는 IN_PROGRESS
인 모든 수집 프로세스가 완료되므로, 주어진 리소스에 대해 다음 수집 반복이 실행되지 않습니다. 그러면 리소스 수집 정의의 enabled
플래그가 false
로 변경됩니다.
참고
리소스 프로세스를 비활성화해도 현재 실행 중인 수집은 중지되지 않습니다. 그리고 다음 수집이 반복 실행되는 것을 방지합니다. 진행 중인 수집을 중지해야 하는 경우 리소스를 비활성화한 후 사용자 지정 논리 를 구현해야 합니다.
리소스가 비활성화된 후의 사용자 지정 논리¶
리소스가 비활성화된 후 사용자 지정 논리를 구현하는 데 사용할 수 있습니다. 예를 들어, 주어진 리소스에 대한 진행 중인 수집을 중지하는 데 사용할 수 있습니다.
이는 기본적으로 PUBLIC.POST_DISABLE_RESOURCE(resource_ingestion_definition_id VARCHAR)
을 호출하며, 'response_code': 'OK'
를 반환합니다. SQL 스크립트를 통해 덮어쓰거나 DisableResourceHandlerBuilder
를 사용하여 PostDisableResourceCallback
인터페이스의 사용자 지정 구현을 제공함으로써 덮어쓸 수 있습니다.
사용자 지정 논리가 오류를 반환하면 다음 단계가 실행되지 않고 DISABLE_RESOURCE
프로시저에서 지정된 오류 응답이 반환됩니다.
응답¶
성공 응답¶
프로시저가 성공하면 아래와 유사한 응답이 반환됩니다.
{ "response_code": "OK" }
오류 응답¶
프로시저 오류가 발생하면 아래와 유사한 응답이 반환됩니다.
{ "response_code": "<ERROR_CODE>", "message": "<error message>" }
가능한 오류 코드는 다음과 같습니다.
INVALID_INPUT
- 지정된 리소스 수집 정의 ID를 가진 리소스가 존재하지 않습니다.DISABLE_RESOURCE_ERROR
- 리소스 수집 정의를 업데이트하는 동안 또는 수집 프로세스를 완료하는 동안 예기치 않은 동작이 발생했습니다. 모든 변경 사항이 롤백됩니다.