이벤트, 경고 및 구독 작업
이벤트는 ThingWorx 플랫폼에서 조건 변경을 나타내는 데 사용됩니다. 이벤트는 조건이 충족되면 서비스를 호출하거나 REST 호출을 만들어 트리거될 수 있습니다. ThingWorx에는 특정 조건을 기반으로 트리거되는 몇 가지 표준 유형의 이벤트가 있습니다(예: 속성 값이 변경될 때(DataChange) 또는 사물이 시작될 때(ThingStart)).
경고는 속성의 상태를 기반으로 하는 표준 유형의 이벤트입니다. 속성 값이 사용자가 정의한 특정 조건을 충족하면 이벤트가 자동으로 트리거됩니다.
경고를 포함하여 이벤트가 트리거될 때 어떤 작업을 수행하기 위해서는 구독이 필요합니다. 구독은 구독하는 이벤트가 트리거될 때 실행되는 특수 서비스입니다.
이벤트에는 사전 정의된 데이터 셰이프가 필요합니다. 데이터 셰이프는 이벤트와 관련된 데이터를 저장하며 구독에 의해 액세스될 수 있습니다. 확장의 엔티티에 구독을 추가하여 이벤트가 발생할 때 사용자 정의 동작을 수행할 수 있습니다.
이벤트, 경고 및 구독을 작성하는 모범 사례
이벤트, 경고 및 구독을 작성할 때 다음 모범 사례를 사용하십시오.
• 이벤트, 경고 및 구독에 대한 이름 규약을 정의합니다. 다음 사항을 유념하십시오.
◦ 모든 엔티티에 표준 명칭을 사용하십시오. 예: 여러 엔티티 유형에 고유한 네임스페이스 접두사를 사용하여 충돌을 방지할 수 있습니다.
◦ 엔티티에 의미 있는 이름을 제공하십시오.
◦ 작성하는 모든 엔티티에 대해 적절한 설명을 포함하십시오.
◦ 모호한 이름은 사용하지 마십시오.
◦ 가능하면 긴 엔티티 이름은 사용하지 마십시오.
• 모든 이벤트 및 구독을 사물 형태 수준에서 정의합니다.
|
사물 형태를 사용하여 속성 및 서비스를 정의하는 것이 좋습니다. 사물 템플릿에 속성과 서비스를 정의하면 해당 정의를 사물 형태로 이동하기가 어렵습니다.
|
• 사물, 사물 템플릿 또는 사물 형태의 모든 속성에 대해 개별적으로 경고를 정의합니다.
• 이벤트와 경고에 구독을 연결해야 합니다. 이렇게 해야 이벤트나 경고가 트리거될 때마다 응용 프로그램에서 기능이 실행됩니다. 이제 응용 프로그램에 데이터 흐름이 작성됩니다.
• 응용 프로그램을 개발하는 동안 스케줄러 구독을 통해 자동 백업을 실행할 수 있습니다.
• 구독에 정의된 서비스를 테스트하는 동안 응용 프로그램 로그를 확인하여 구독이 예상대로 실행되고 있는지 확인합니다.
구독용 서비스를 작성하는 모범 사례에 대한 자세한 내용은
서비스를 참조하십시오.