웹후크는 웹후크 수신기 또는 기타 응용프로그램에 이벤트 기반 정보를 자동으로 제공하는 ArcGIS Enterprise 기능입니다. ArcGIS Enterprise에서는 두 가지 유형의 웹후크를 지원합니다.
- 기관 웹후크 - 관리자는 기관의 사용자, 그룹, 항목과 관련된 이벤트 트리거를 구독할 수 있습니다.
- 서비스 웹후크 - 관리자는 지오프로세싱 및 피처 서비스를 위한 웹후크를 구독할 수 있습니다.
- 지오프로세싱 웹후크 - 관리자는 지오프로세싱 서비스 작업이 완료될 때 호출되도록 지오프로세싱 서비스 웹후크를 설정할 수 있습니다.
- 피처 서비스 웹후크 - 관리자는 기관의 피처 서비스와 관련된 이벤트 트리거를 구독할 수 있습니다.
모든 ArcGIS Enterprise 웹후크는 유사한 프로세스를 따릅니다. 웹후크가 트리거되면 이벤트 정보는 각 웹후크 유형에 특정한 관련 정보가 포함된 JSON 스키마로 전달됩니다. 각 웹후크 유형에는 구독할 수 있는 특정 이벤트가 있습니다. 예를 들어, 항목이 발행되거나 새 사용자 계정이 생성되면 기관 웹후크를 호출할 수 있습니다. 피처 서비스 웹후크는 피처 레이어의 스키마가 수정된 경우 트리거될 수 있습니다. 지오프로세싱 서비스 웹후크는 지오프로세싱 서비스 작업이 완료된 경우에만 이벤트 정보를 전달합니다.
이벤트 정보가 전달되면 수신자 플랫폼은 기관 구성원 및 이벤트 관리자에게 알리는 특정 작업을 수행합니다. 기관의 요구 사항에 따라 Slack의 지정된 구성원 또는 메시징 관리자에게 이메일을 보낼 수 있습니다.
웹후크는 이벤트가 발생하면 알림을 제공하므로 폴링보다 더 효과적일 수 있습니다. 웹후크는 폴링과 달리 응용프로그램에서 특정 이벤트가 발생했는지 확인하기 위해 시스템을 계속 확인할 필요가 없습니다.
시나리오: 기관 웹후크
ArcGIS Enterprise 기관에 각 항목이 공개적으로 공유되기 전에 충족해야 하는 특정 표준 집합 있는 시나리오를 생각합니다. 해당 기관의 관리자는 표준을 충족하지 않는 항목이 공유된 경우에 실시간으로 응답할 수 있는 워크플로를 생성하고자 합니다. 웹후크를 활용하여 항목 소유자가 해당 항목을 공개적으로 공유한 경우 이를 알리고 해당 항목이 표준을 충족하지 않는 경우 관리자에게 구체적으로 메시지를 보내는 스크립트의 일부로 페이로드의 이벤트 정보를 사용하여 관리자에게 항목을 업데이트하거나 모든 사용자와 공유를 해제할 수 있도록 하려고 합니다.
아래 목록에는 기관 관리자가 웹후크를 활용하여 해당 워크플로를 생성하는 방법이 나와 있습니다.
- 기관 관리자는 웹후크 수신기를 설정하여 수신 페이로드를 로컬 TXT 파일로 작성합니다.
- 관리자는 페이로드 TXT 파일을 구문 분석하여 수행된 작업 및 항목에 대한 관련 정보를 추출하는 Python 스크립트를 생성합니다. 동일한 스크립트를 사용하면 관리자가 지정된 Slack 채널에 알림을 보내 해당 정보에 응답할 수 있습니다. 항목이 공개적으로 공유되지만 공개 표준을 충족하지 않는 경우 스크립트는 Slack API를 사용하여 누락되거나 잘못된 정보를 요약하여 기관 관리자에게 메시지를 보냅니다.
- 스크립트가 생성되면 관리자는 항목 소유자가 항목을 공유할 때 트리거되는 웹후크를 생성합니다.
- 항목이 공유되면 스크립트는 페이로드 TXT 파일을 구문 분석하고 항목이 공개적으로 또는 기관 내에서 공유되었는지 확인합니다. 기관 내에서 공유된 경우에는 추가 작업이 수행되지 않습니다. 항목이 공개적으로 공유된 경우 스크립트는 기관에 설정된 표준에 따라 항목의 등급을 지정합니다. 등급이 낮은 경우(공개 표준이 충족되지 않음을 의미) 관리자는 공유한 항목 및 현재 표준을 충족하지 않는 메타데이터에 대해 Slack 채널을 통해 알림을 받습니다.
- 그런 다음 기관 관리자는 표준을 충족하도록 메타데이터를 업데이트하거나 항목 공유를 해제하도록 선택하거나 항목 소유자에게 메시지를 보내 Slack에서 직접 필요에 따라 변경하도록 할 수 있습니다.