KR20010103731A - 이벤트의 동적인 필터링 및 라우팅을 위한 방법 및 장치 - Google Patents
이벤트의 동적인 필터링 및 라우팅을 위한 방법 및 장치 Download PDFInfo
- Publication number
- KR20010103731A KR20010103731A KR1020017008374A KR20017008374A KR20010103731A KR 20010103731 A KR20010103731 A KR 20010103731A KR 1020017008374 A KR1020017008374 A KR 1020017008374A KR 20017008374 A KR20017008374 A KR 20017008374A KR 20010103731 A KR20010103731 A KR 20010103731A
- Authority
- KR
- South Korea
- Prior art keywords
- event
- node
- filter
- list
- events
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/544—Remote
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
- Y10S707/99945—Object-oriented database structure processing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99948—Application of database or data structure, e.g. distributed, multimedia, or image
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Multi Processors (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
가입자 요구를 라우팅하는 방법은 이벤트 필터(510)에 의해 정의된다. 이 방법은 상기 이벤트 필터(510)를 적어도 하나의 서브익스프레션을 구비한 평가 트리로 해석하는 단계(610)와, 적어도 하나의 서브익스프레션(520)을 배치하는 단계와, 상기 적어도 하나의 서브익스프레션이 노드 특정 필드를 구비하는지 여부를 판정하는 단계(530)와, 상기 적어도 하나의 서브익스프레션이 노드(110) 특정 필드를 포함하는 경우, 이 방법은 적어도 하나의 노드 리스트(540) 및 이벤트 관리자(310) 콘택 정보를 생성하는 단계와; 상기 가입자 요구를 노드(110) 리스트(540)에 구비된 노드(11))에 위치된 적어도 하나의 이벤트 관리자(310)로 전송하는 단계를 포함한다.
Description
정보 기술(Information technology;IT)는 계산 전용 메인프레임으로부터 네트워크를 통한 데스크탑 및 부서에 걸친 범위로 복합, 고분산 컴퓨터 시스템까지 진보되어 왔다. 이들 분산 컴퓨터 환경은 다수의 플랫폼, 도메인, 툴 및 네트워크 구성을 선택할 수 있는 유연성을 포함한 장점을 제공한다. 그러나, 이 분산 환경은 복잡할 수 있다. 또, 소프트웨어 툴 및 플랫폼간에 호환성 및 통합성이 결여되어 있을 수 있다. 예컨대, 종래의 포인트 프로덕트(예컨대, Platinum DBVision 제품)은 일반적으로 특정 기능 또는 전문가 영역, 예컨대 데이타베이스 모니터링 및 관리, 작업 스케쥴링 또는 관리하는 데이타베이스 재구성을 위한 솔루션으로 규정된다. 각각의 포인트 프로덕트는 특정한 성능을 제공하고 또, 각각은 명확한 인터페이스를 포함한다. 한편, 툴 기능이 크게 희생되더라도, 프레임워크 기술을 사용하여 통합 솔루션을 제공한다. 또한, 현재 기업 환경을 유지하면서 종래 포인트 프로덕트 또는 프레임워크 기술을 사용하는 것은 IT 구성으로부터 다량의 리소스 및 금전을 포함할 수 있다.
따라서, 필요성은 호환성 인터페이스 다이나믹을 이용하고 툴 기능성을 희생하지 않고 이벤트의 필터링 및 라우팅할 수 있는 툴을 제공하기 위한 통합 시스템에 존재한다.
본 발명은 이벤트 관리 시스템 분야에 관한 것으로, 특히 이벤트 관리 시스템 범위 내 이벤트의 동적인 필터링 및 라우팅에 관한 것이다.
도 1은 복수 개의 노드를 구비한 본 발명의 구상에 대한 실시예를 나타내는 도면.
도 2는 본 발명의 통합 포인트 프로덕트 수트를 나타내는 도면.
도 3은 본 발명의 이벤트 관리 시스템의 블럭도를 나타내는 도면.
도 4는 본 발명의 이벤트 관리 시스템의 복수 노드 간에 통신된 이벤트 정보의 실시예를 나타내는 도면.
도 5는 본 발명에 따라 라우팅 프로세스의 흐름도를 나타내는 도면.
도 6은 본 발명에 따라 라우팅 프로세스의 흐름도를 나타내는 도면.
도 7은 본 발명에 따라 데이타 교환 시스템의 블럭도를 나타내는 도면.
본 발명의 목적은 공통 이벤트 관리 시스템을 통해 포인트 프로덕트에서 발생하는 이벤트를 라우팅하기 위한 통합 시스템을 제공하는 것이다.
본 발명의 또 하나의 목적은 사업의 노드에 걸쳐 이벤트를 동적으로 필터링하는 것이다.
본 발명의 특징은 이벤트 필터에 의해 정의된 가입자 요구를 라우팅하기 위한 방법을 제공한다. 이 방법은 상기 이벤트 필터를 적어도 하나의 서브익스프레션을 구비한 평가 트리로 해석하는 단계와, 적어도 하나의 서브익스프레션을 배치하는 단계와, 상기 적어도 하나의 서브익스프레션이 노드 특정 필드를 구비하는지 여부를 판정한다. 상기 적어도 하나의 서브익스프레션이 노드 특정 필드를 포함하는 경우, 이 방법은 역시 적어도 하나의 노드 리스트 및 이벤트 관리자 콘택 정보를 생성하는 단계와; 상기 가입자 요구를 적어도 하나의 이벤트 관리자로 전송한다.
본 발명의 이벤트 관리 시스템은 사업을 관리하고, 이 사업[예컨대, 근거리 통신망(LAN) 또는 광역 통신망(WAN)과 같은 컴퓨터 네트워크]에서 발생하는 이벤트 정보를 상관하고, 소정의 응답 방안에 기초하여 정확하게 작동한다. 이 이벤트 관리 시스템은 예컨대, 사업 범위 내의 호환성 있는 포인트 프로덕트로부터 이벤트 메시지를 수신한다. 도 1에 도시한 바와 같이, 사업(100)은 복수 개의 노드(110, 120, 130)를 포함할 수 있고, 예컨대 네트워크(도시안함)를 통해 연결될 수 있다. 노드는 예컨대, 오퍼레이팅 시스템을 운영하는 개인 컴퓨터, 서버등의 물리적인 박스이다. 본 발명의 실시예로, 노드는 그 노드에 설치된 호환성 있는 포인트 프로덕트를 구비한 개인 컴퓨터일 수 있다. 본 발명의 다른 실시예로, 이벤트 관리 시스템(140)은 노드(110, 120, 130) 위의 이벤트를 관리하여, 이 이벤트가 네트워크 위의 데이타 이동을 최소화하고, 소스에 밀접한 데이타의 평가, 보고 및 자동화된 정정과 같은 작동을 하면서 발생하게 한다.
도 2에 도시한 바와 같은 본 발명의 실시예에서, 이벤트 관리 시스템(270)은예컨대, 관리 응용 프로그램, 데이타베이스, 데스크탑, 네트워크 및 시스템에 사용된 호환성 있는 포인트 프로덕트를 구비한 통합 툴의 수트(200)에 구비될 수 있다. 툴(230, 240, 250, 260)은 이벤트와 관련된 데이타를 공유하도록 공통 서비스(210)의 세트가 사용될 수 있다. 지시기(220)는 예컨대, 호환성 있는 포인트 프로덕트(230, 240, 250, 260)용 종래의 서버 컴퓨터에서 운영하는 공유된 공통 그래픽 사용자 인터페이스(GUI)이다. 본 발명의 실시예로, 지시기(220)는 Windows NT 및 Windows 95 아래에서 운영하고, 사용자가 사업에서 호환성 있는 포인트 프로덕트(230, 240, 250, 260)를 구비한 모든 리소스를 보고 대화할 수 있도록 허용하는 단일 컨솔로 작동한다.
본 발명의 이벤트 관리 시스템에 이용된 정보의 주요 관리 단위는 이벤트라 부르는 구조화된 메시지이다. 이벤트는 사업에서 리소스를 통하거나 리소스로의 일부 주요 발생 빈도에 대한 정보를 나타낸다. 이벤트는 이벤트 관리 시스템에서 호환성 있는 포인트 프로덕트 및 이벤트 관리자를 통해 전송되고 수신된다. 이벤트는, 예컨대 사업을 관리하도록 사용된 실시간 정보 프로세스의 기초 설정 블럭이다. 이벤트는 공개할 수 있는 기초 정보, 공유 정보 및 그 형식을 정의하여 이벤트를 유지하고 전송한다. 이벤트의 구조는, 예컨대 이벤트 레코드에 필요한 기초 정보를 위해 소정의 필드를 구비한다. 이 소정의 필드는 필드 식별하기와 필드 식별하지 않기의 2가지 카테고리로 이루어진다. 필드 식별하기는 다른 이벤트와 구별하는 이벤트에 대한 고유 키를 함께 형성하는 필드이다. 필드 식별하지 않기는 이벤트에 대한 추가 정보를 추가하는 필드이지만, 이벤트의 키에 참여하지 않는다. 본발명의 이벤트 관리 시스템은 이벤트 구조가 키 밸류 쌍의 바로 추가하여 각각의 이벤트 구조를 고유하게 정의함으로써 사용자를 통해 확장되도록 허용한다. 따라서, 이벤트 구조에 키 밸류 쌍의 추가는 포인트 프로덕트가 고유 정의 이벤트를 공개하는 것이 가능하거나 그렇지 않으면 이벤트의 소정 필드를 통해 고유하게 정의되지 않기 때문에 공개되지 않는다.
본 발명의 실시예에 따른 이벤트 구조는 예컨대, 다음의 C 언어로 정의된다.
이벤트를 식별하는 필드는 노드, 명칭, 제품, 견본, 형태, 형태가 개별적이지 않은 경우 조건_시간, 형태가 개별적인 경우 이벤트 시간, 키 필드 어레이의 내용물을 구비한 모든 키 밸류 페어와 밸류 필드 어레이(필드, 예컨대 각각의 필드 어레이에서 키 밸류 페어의 수를 표지하는 수자를 구비한 NumKeys를 가짐)이다. 다른 소정의 필드 모두는 필드 식별하지 않기이다.
이벤트는 복수 개의 형태, 예컨대 개별 이벤트, 조건 및 경보로 분류될 수 있다. 개별 이벤트는 특정 시간에 발생되고 완전 내장된 것을 표지하는 이벤트이다. 개별 이벤트에 대한 발생 빈도는 상태를 가지고 있지 않고 업데이트되지 않는다. 로그온 시도가 실패한 것은 개별 이벤트의 발생을 호출할 수 있다. 조건은 시간이 지속되고 업데이트된 속성을 가질 수 있는 것의 속성을 표지하는 이벤트이다. 제품에 의해 선언된 이벤트는 그 제품을 통해 소유된다. 일반적으로, 각 포인트 프로덕트만이 특정 제품에서 발생된 조건 이벤트를 업데이트 또는 제거할 수 있다. 개별 이벤트 및 조건 이벤트의 내용물은 이벤트를 일으키는 발생 빈도를 변경하지않고 변경될 수 없는 사업에 관한 실질 정보를 표시한다. 경보, 예컨대 사용자 구성 가능성에 기초한 다른 이벤트의 해석이다. 따라서, 사용자는 이것을 일으킨 조건을 해결하지 않고 항상 경보를 제거할 수 있다. 마찬가지로, 이 경보는 경보에 기초한 이벤트의 제거를 하여도 지속될 수 있다.
도 3에 기초한 바와 같이, 본 발명의 이벤트 관리 시스템(300)의 실시예는 이벤트 관리자(310), 이벤트 아치브(320), 이벤트 상관기(330), 경보 규칙 저장 장치(340) 및 응답 엔진(350)을 구비한다. 본 발명의 실시예로, 이벤트 관리자(310), 이벤트 아치브(320), 이벤트 상관기(330), 경보 규칙 저장(340) 및 응답 엔진(350)은 사업의 모든 노드에 포함되고, 경보 규칙 저장 장치(340)는 이벤트가 저장되어 국소적으로 관리되도록 허용하는 1개의 중앙 기억 장치에 포함된다.
본 발명의 실시예로, 이벤트 관리 시스템은, 예컨대 사업 전체에 걸쳐 포인트 프로덕트으로부터 이벤트 메시지를 수신한다. 이벤트는 이벤트가 각 노드에 위치된 이벤트 관리자(310)를 통해 수신된 사업의 노드에서 관리된다. 이 이벤트 관리자(310)는, 예컨대 모든 이벤트를 수신하고, 사전에 전송된 모든 이벤트의 상태를 유지하고, 가입자 리스트를 유지하고 적합한 가입자에게 이벤트를 라우트하도록 할 수 있다. 본 발명의 실시예로, 이벤트 및 그 상태와 가입자 리스트는 국소적으로 저장될 수 있다.
도 4에 도시한 바와 같이, 노드 a(401)의 이벤트 관리자(402) 및 노드 b(410)의 이벤트 관리자(411)도 노드 b(410)의 이벤트 상관기(413)로부터 이벤트 정보를 수신한다. 노드 b(410)의 이벤트 관리자(411)는 노드 b(410)의 이벤트 상관기(413)에 이벤트 정보를 제공한다. 이벤트 관리자(411)도 이벤트가 실제로 발생하는 포인트 프로덕트(415)로부터 이벤트 정보를 수신한다. 이벤트 관리자(402, 411)는, 예컨대 이벤트 및 그 관련 상태와 가입자 리스트를 유지한다. 각각의 이벤트 관리자는 로컬 메모리 데이타 기억 장치, 예컨대 흑판을 가질 수 있고, 상태 이벤트가 기억된다. 이 흑판은 발생(이벤트 관리자의 프로세스 호출) 양단에 정보 복원을 위해 파일 기초 스토리지에 유지될 수 있다. 이벤트에 가입한 클라이언트는 이벤트 관리자의 새로운 호출 양단에 각각의 가입자를 재설정할 수 있다.
따라서, 가입자는 기억 장치에 유지될 수 있다. 또한, 이 로컬 이벤트 아치브는 이벤트 관리자에 의해 수신된 모든 이벤트에 대해 유지될 수 있다. 또한, 본 발명의 이벤트 시스템은 다수의 노드로부터 이벤트를 상관할 수 있다. 본 발명의 실시예로, 이벤트 관리 시스템은 단일한 관리 스테이션에 통합된 이벤트의 형태 또는 노드 경계 양단의 형태/카테고리에 제공된다. 본 발명의 이벤트 관리 시스템은 이벤트 가입자를 통한 노드와 다른 기준에 의해 이벤트 그룹의 흥미를 조회하거나 표현하도록 구조화되어 있다. 이벤트 가입자는 이벤트의 필드의 내용물에 기준 규격을 허용한다. 특정 프로세스에 대한 해당 이벤트의 결정은 예컨대, 레코드의 여러 가지 필드의 기준을 일치시키는 레코드를 요구하는 데이타베이스 질의를 작성하도록 유추될 수 있다. 본 발명의 요구는 통상의 데이타베이스 질의와 차이가 있고, 이것은 이미 존재하는 데이타에 대한 요구가 아니고 발생하거나 존재하여야 할 이벤트의 모음에 대한 진행 요구이다.
가입자가 이벤트, 예컨대 포인트 프로덕트(415)에서 발생하는 이벤트를 만들었을 경우, 가입자 요구는 노드 b 410 위의 이벤트 관리자(411)로 전송된다. 이벤트 관리자(411)는 이 요구를 수신하고 요구를 예컨대, 메모리에서 저장될 수 있는 미해결 요구 리스트에 추가한다. 이 이벤트 관리자(411)는 요구 기준이 일치되는지 알기 위해 예컨대, 각 흑판에 사전 저장된 미해결 이벤트를 조사한다. 각각 일치하는 이벤트는 요구자, 예컨대 이벤트의 가입자에게 전송, 예컨대 공개된다. 또한, 가입자 기준에 일치하여 수신된 새로운 이벤트도 전송된다. 이것은 가입이 취소될 때까지 계속된다.
본 발명의 대표적인 실시예에서, 가입자는 이것이 형성될 때 고유 ID가 할당된다. 이 요구로 부터 전송된 고유 ID 및 데이타 그룹은 고유하게 가입자를 정의한다. 가입자는 예컨대, 초기 가입자로부터 복귀 요구 처리로 API를 호출함으로써 취소된다. 이것은 취소 메시지를 각각이 요구 ID를 갖는 이벤트 관리자에게 전송한다. 이후 이벤트 관리자는 취소 요구와 초기 가입자를 일치시킬 수 있고, 이벤트 관리자의 프로세싱 대기열로부터 이것을 제거한다.
노드에 공개된 모든 이벤트는 노드의 이벤트 관리자에 의해 수신된다. 또한, 이벤트 관리자는 그 노드 및 다른 노드로부터 프로세스에 의해 전송된 모든 요구를 수신하여 유지한다. 이벤트를 수신할 때, 또한 이벤트 관리자는 이벤트 ID를 할당한다. 이벤트 관리자는 이벤트가 조건인지를 판정하고, 조건인 경우, 이벤트 관리자는 예컨대, 이벤트 관리자가 기존 조건에 일치하는지를 결정하도록 흑판을 조사한다. 조건과 일치하는 경우, 조건 이벤트는 기존 조건의 조건 ID가 할당된다. 또한, 아치빙이 가능한 경우, 이벤트는 아치브된다. 본 빌명의 대표적인 실시예에서,예컨대, 아치빙은 데이타베이스, 예컨대 플랫 파일 아치브에서 이벤트를 저장하는 단계를 포함할 수 있다. 별개 파일은 각각의 캘린더 데이에 대해 사용될 수 있다. 이벤트는 이벤트가 수신된 순서에 따라 새로운 행 경계 레코드로서 이벤트에서 시간 소인의 일자에 대해 아치브에 작성될 수 있다.
또한, 이벤트 관리자는 모든 미해결 가입자 요구를 조사한다. 조건 업데이트와 다른 이벤트에 대해서, 수신된 이벤트가 요구와 일치하는 경우, 이벤트 관리자는 요구자에게 이벤트를 전송한다. 조건을 업데이트하는 경우에, 이것은 요구에 대해 일치되는 업데이트된 이벤트이다. 따라서, 이것은 이벤트 관리자가 요구자에게 전송하는 업데이트된 이벤트이다.
이벤트 필터는 해당 이벤트에 대한 기준을 식별하는 단계를 설명하고 확장 이벤트 구조의 키 밸류 페어를 구비한 이벤트의 각 필드에 재해 특정될 수 있는 비교의 여러 가지 형태를 설명할 수 있다. 예컨대, 이벤트 필터는 사용자 특정밸류를 갖는 부울리안 익스프레션은 이벤트의 분야를 비교하는 서브익스프레션으로 구성된다. 이벤트 필터는 예컨대, 구조화 질의어(SQL)에서 "WHERE" 구절과 유사하다. 이벤트 필터의 기초 서브익스플레션은 예컨대, 밸류를 갖는 이벤트의 필드를 비교하는 구절, 예컨대 node=ptisun20이다. 서브익스프레션 node=ptisun20은 이벤트의 노드 필드가 스트링 "ptisun20"과 정확하게 일치한다. 이벤트 구조의 필드는 노드 필드가 특정 신택스를 요구하는 키 필드 어레이 및 밸류 필드 어레이의 예외를 갖는 예에서 사용됨에 따라 사용될 수 있다. 예컨대, 추가된 키 밸류 페어 중 하나가
key value
FileSystem /usr 인 경우, 이 키 밸류 페어에 대한 정확한 일치 필터는 keyfield.FileSystem = "/usr"이다. 또한, 임의의 밸류를 가진 키의 존재에 대한 테스트는 널 밸류가 일치하지 않는 경우, 예컨대 keyfield.FileSystem !="□를 테스트함으로써 행해진다. 이벤트 필터는 임의의 장소에 저장될 수 있고, 텍스트 스트링은 예컨대 데이타베이스, 메모리, C 소스 코드(예컨대, 프로그램에서 하드코드됨)등에서 플랫한 텍스트 파일과 같은 구성 파일에 저장될 수 있다.
또한, 필터링은 이벤트의 키 밸류 페어의 밸류에 대해 이용할 수 있다. 전술한 예에서, 특정 파일 시스템의 명칭인 관련밸류를 가진 키 "FileSystem"일 수 있다. 소망한 밸류는 특정 파일 시스템, 예컨대 /usr에 대해서만 있을 수 있다. 키의 대응 밸류에 대한 필터 메카니즘은 키 및 테스트 관련 밸류를 규정한다. 특정 신택스는 키와 이벤트의 소정 필드로부터 키에 대한 다른 명칭 공간을 허용하는 이벤트의 다른 필드를 구별하도록 사용된다. 신택스는 "keyfield.[name]"이다. 키 밸류 페어의 /usr 밸류에 대한 테스트 예는 예컨대, keyfield.FileSystem =/usr일 수 있다.
본 발명의 대표적인 실시예에서, 이벤트 필터는 비교 오퍼레이터, 예컨대 =를 포함할 수 있고, 풀 레귤러 익스프레션은 오퍼레이터 "like"로 규정되어 일치한다. 필터, 예컨대 node =ptisun05일 수 있다. ptisun[#]의 패턴을 따르는 모든 노드와 일치하는 필터는 "ptisun[0-9]+"와 같은 노드일 수 있다. 후술하는 것은 이벤트 필터 비교 오퍼레이터의 대표적인 리스트이다 : >=(크거나 같음), <=(작거나 같음), >(크다), <(작다), = (같다), like(레귤러 익스프레션과 일치), likeci(케이스 무감응 스트링 매치), and !=(같지 않다).
본 발명의 대표적인 실시예에서, 다음의 token, 제조 규칙 및 야크(yacc)를 사용하여 수행된 이벤트 필터 정의가 사용된다.
본 발명의 대표적인 실시예에서, 이벤트 관리자(411)는 대몬(daemon)(예컨대, UNIX 서버에 연속적으로 동작하여 네트워크의 클라이언트 시스템에 리소스를 제공하는 에이젼트 프로그램)으로서 수행될 수 있다. 이벤트를 수신할 때, 이벤트 관리자(411)는 이벤트 배치, 이미 이벤트를 수신하였는지 여부 및 이벤트 상태가 변경되었는지 여부를 결정한다. 또, 이벤트 관리자(411)는 이벤트를 로컬 이벤트 아치브(412)를 작성하고, 이벤트를 이벤트 콘텐츠에 가입하는 모든 클라이언트에 라우트한다. 예컨대, 이벤트 관리자(411)는 노드(402)의 이벤트 상관기(413)에 이벤트 정보를 제공할 수 있다. 이벤트 아치브(412) 서비스 프로세서는 이벤트 아치브로부터 이벤트를 읽는다. 가입자는 데이타 교환 서비스(DEX)와 같은 중앙 스토리지의 콘텐츠에 대해 이벤트에 가입하는 경보 규칙을 갖는 이벤트 상관기(413) 견본 및 예컨대 이벤트를 업데이트하도록 가입하는 리소스 객체 또는 제품을 구비하는 디렉터를 포함할 수 있다.
이벤트 상관기(413)는 예컨대, 이벤트 상관기 서비스 프로세서를 포함할 수 있고, 본 명세서에 참조된 이벤트의 동적 상관을 하기 위한 시스템 및 방법이라는 명칭으로 1998년 12월 31일 출원된 변호사 문서 번호 제22074661/15548호를 설명하고 있다. 이벤트 상관기(413)는 경보 규칙에서 규정된 사용자 방침을 수행한다. 경보는 주요한 조건 또는 발생의 가입자에게 통지를 제공하는 이벤트의 형태이다. 경보의 결정은 단일 이벤트의 존재, 다른 이젠트가 방생할 때 특정한 기존 상태의 존재 또는 고정된 시간 윈도우 범위 내 특정 이벤트의 재현을 포함할 수 있다. 또한, 경보는 특정한 상태 또는 상태가 존재하는 경우 고정 시간 윈도우 범위내에 특정 이벤트의 재현을 조합될 수 있다.
경보가 발생하였는지 판정하는 이벤트는 이벤트 상관기(413)와 동일한 노드의 이벤트에 기초하거나 하나 이상의 다른 노드(401,410)으로부터 전송될 수 있다. 또한, 경보는 응답 엔진(414)이 경보의 자동화된 통지 또는 상관을 처리하도록 허용하는 선언의 자동화된 응답 방침과 관련될 수 있다. 이벤트 상관기(413)는 예컨대, 다른 경보 규칙에 의해 상관될 수 있는 경보, 수령 이벤트의 수정판 또는 전체적으로 새로운 이벤트를 생성할 수 있다.
이벤트는 경보 규칙을 통해 상관될 수 있다. 경보 규칙의 기초는 해석되어야 하는 이벤트의 판정이다. 경보 규칙은 단일 이벤트 또는 이벤트 집합이 응답하도록중요한 발생을 나타내도록 생성될 수 있다. 경보 규칙은 발생과 그 발생에 이벤트 관리 시스템의 응답의 정의를 나타내는 해설 및 이벤트를 기재한 로직을 포함할 수 있다. 상관의 결과는 하나 이상의 이벤트를 생성한다. 경보 규칙은 예컨대 디랙터(404)를 통해 규정될 수 있다.
응답 엔진(414)은 응답 방침을 실행한다. 응답 엔진(414)은 복수 개의 프로세스를 포함한다. 응답 정책은 예컨대, 이벤트 상관기(413)에 의해 발생된 트리거 경보에 의해 호출된 로직 서술문에 연결된 리스트를 포함하는 논리적인 익스프레션이다. 복수 개의 동작은 응답 방침을 정의하여 수행될 수 있다. 본 발명의 대표적인 실시예로, 복수 개의 동작은 다른 동작의 복귀 코드 및 경보에서 전송된 특정 필드의 수령시 부수하는 각각의 동작을 만들기 위해 리스트된 순서에 있거나 로직에 추가될 수 있다. 응답 방침은 동작 집합을 정의하고 논리적인 순서에서 하나 이상의 동작을 참조하는 익스프레션을 구성함으로써 생성될 수 있다. 이 동작들은 전체적이고 복수 개의 응답 방침에 의해 호출된다. 또한, 본 발명의 대표적인 실시예에서, 응답 엔진(414)은 각 동작의 성공에 관한 정보를 각 단계의 완성에서 트리거 경보에 추가한다. 이것은 예컨대, 완성된 단계의 순차적인 수, 각 단계의 형태(예컨대 전자메일/페이지) 및 동작 단계 명칭의 이벤트 아치브를 갖는 이벤트를 업데이트하는 업데이트 경보 이벤트를 전송함으로써 완성될 수 있다. 이 정보는 디렉터를 통하여 억세스될 수 있다.
본 발명의 대표적인 실시예로, 응답 엔진(414)은 예컨대 제1 프로세스, 제2 프로세스 및 제3 프로세스를 포함할 수 있다. 제1 프로세스는 응답 엔진(414)과 동일한 노드(410)에 운영하는 이벤트 상관기(413)에 의해 전송된 이벤트에 가입한다. 관련 응답 방침을 갖는 경보의 수령시, 제1 프로세스는 방침을 수행하도록 제2 프로세스를 호출한다. 제1 프로세스는 각각의 프로세스와 관련된 구성 파일에서 설정에 의존하여 제2 프로세스의 복수 개의 견본을 호출할 수 있다. 제2 프로세스는 이벤트의 전송을 요구하는 동작을 수행하고 제3 프로세스는 다른 동작을 수행하도록 허용한다. 또한, 응답 엔진(414)의 제3 프로세스는 오퍼레이팅 시스템, 예컨대 전자 메일 메시지 전송하기, 스크립트 호출하기, 페이지 전송하기, 메시지를 파일에 작성하기 또는 간이망 관리 프로토콜(SNMP) 트랩으로서 이벤트를 전송하기로 호출을 요구하는 응답 방침 동작을 수행할 수 있다.
본 발명의 대표적인 실시예에서, 본 발명의 이벤트 관리 시스템은 라우팅 알고리즘을 포함할 수 있다. 이 라우팅 알고리즘은 IBM 개인 컴퓨터와 같이 종래의 컴퓨터 범위 내 예컨대, 랜덤 억세스 메모리 또는 디스크 드라이브에 저장될 수 있다. 이 라우팅 알고리즘은 가입자 요구를 수신하는 이벤트 관리자를 결정하도록 이벤트 필터를 분석한다. 각각의 이벤트 관리자는 분석될 이벤트 필터를 만족할 수 있는 이벤트를 생성하는 포인트 프로덕트를 갖는 사업의 노드에 이벤트 관리자가 된다.
본 발명의 이벤트 구조의 대표적인 실시예에서, 이벤트 구조는, 예컨대 에이전트 노드, 노드 및 이벤트 관리자 노드인 3 개의 노드 특정 필드를 포함한다. 본 발명의 대표적인 실시예에서, 라우팅 알고리즘은 노드의 특정 필드가 이벤트 필터에 포함되는지 여부를 판정하고, 포함된 경우, 이벤트 필터는 노드 특정 필드에 의해 표지된 각 노드의 이벤트 관리자에게 라우트될 수 있다. 예컨대, 이벤트 필터가 "node=nodeA 또는 node=nodeB"인 경우, 라우팅 알고리즘은 서브익스프레션 "node=nodeA"에 의해 표지된 바와 같이 node A의 이벤트 관리자 및 "node=nodeB"에 의해 표지된 바와 같이 node B의 이벤트 관리자에게 라우트되는 것을 판정한다. 서브익스프레션은 필드 명칭, 비교기 및 밸류를 구비하는 이벤트 필터의 익스프레션이다. 결합은 서브익스프레션을 조합하도록 이벤트 필터에서 사용된다.
도 5에 도시한 본 발명의 실시예로, 라우팅 알고리즘은, 예컨대 이벤트 필터를 510에 도시한 바와 같이 하나 이상의 서브 익스프레션을 구비한 평가 트리로 해석한다. 520에서, 라우팅 알고리즘은 평가 트리의 각 서브 익스프레션에 위치하고, 530에서 서브익스프레션이 노드 특정 필드(예컨대, 에이젼트 노드, 노드 및 이벤트 관리자 노드)를 포함하는지 결정한다. 540에서, 라우팅 알고리즘은 각각의 노드에특정 프로세스, 이벤트 관리자와 접촉할 필요가 있는 평가 트리 및 정보(예컨대, 이벤트 관리자 접촉 정보)의 노드 특정 필드에 참조된 적어도 하나의 노드 중 리스트 예컨대, 전체 리스트를 생성한다.
본 발명의 실시예로, 라우팅 알고리즘은 예컨대, 소정의 알고리즘 패턴을 수반하거나 디맨드에 따라 조사될 수 있는 중앙 데이타 기억 장치에 저장된 접촉 정보에 억세스함으로써 이벤트 관리자 접촉 정보를 획득할 수 있다. 각각의 매칭 노드 각각에 대하여 이벤트 관리자 접촉 정보는 예컨대, 함수에 의해 제공될 수 있다. 550에서, 라우팅 알고리즘은 이젠트 필터에 의해 정의된 가입자 요구를 예컨대, 전체 리스트에 식별된 각각의 이벤트 관리자로 전송한다. 소정 필터로부터 전체 노드 리스트의 결정 알고리즘은 예컨대, int SvcLookupSubNode(PT_CHAR_T*pzFilter, PT_CHAR_T***subArray, int*count) 함수에 구현될 수 있다. 예컨대, SvcLookupSubRegister(array[I], filter, myCallbackFunction, myCallbackData, & handleForThisSubscription) 함수는 예컨대, 필터 SvcLookupSubnode에 의해 각각의 이벤트 관리자 접촉 정보에 제공되고 각각의 노드에 가입자 정보를 전송할 수 있다.
후술하는 실시예에 도시한 바와 같이, SvcLookupSubNode(PT_CHAR_T*pzFilter, PT_CHAR_T***subArray, int*count) 함수에 의해 제공된 전체 리스트는 이벤트 필터로부터 결정된 각각의 이벤트 관리자 각각에 함수 SvcEventSubRegister으로 호출을 통해 가입자를 만들면서 순환될 수 있다.
SvcLookupSubNode(filter,&array,&arraySize);for(I=0;I++;I<arraySize)
SvcEventSubRegister(array[I],filter,myCallbackFuntion,myCallbackData,&handleForThisSubscription)
본 발명의 대표적인 실시예로, 라우팅 알고리즘은 노드 특정 필드에서 "like" 오퍼레이터에 기초한 가입자 요구를 라우트하는 각각의 노드를 결정할 수 있다. 노드 참조 필드가 고정 노드 스트링이라기보다 "like" 오퍼레이터인 경우, 노드 특정 필드의 밸류는 노드 참조로서 직접 사용될 수 없다. 대신에, 라우팅 알고리즘은 활성된 모든 이벤트 관리자를 결정한다. 차후에, 활성 이벤트 관리자 각각에 대한 노드는 결정된다. 본 발명의 대표적인 실시예로, 통신층 메카니즘은, 예컨대 일부 고유 특성을 가진 이벤트 관리자, 이벤트 메시지를 수신하도록 노드에공지된 TCP/IP 포트에 등록된 모든 프로세스를 결정하고, 프로세스의 각 노드를 결정할 수 있다. 각 노드의 각각은 임의의 노드가 이벤트 필터에 의해 제공된 like 익스프레션이 매치되는지 알기 위해 조사된다. 예컨대, 익스프레션은 노드 like "ptisun.*"일 수 있다. 이 익스프레션은 ptisun01, ptisun02, ptisun03, ptisun33 등으로 명칭된 노드를 매치할 수 있다. 그러나, 노드 ptiHP01에 매치되지 않는다. 활성 이벤트 관리자의 리스트는, 예컨대 ptisun01 및 ptiHP01을 포함할 수 있다. 활성 이벤트 관리자 중, 익스프레션은 not ptiHP01를 제외하고 ptisun01에 매치한다. 따라서, 최종 리스트는 필터 기준과 매치하지 않을 때, ptisun01, not ptiHP01에 대한 접촉 정보만을 포함할 수 있다.
도 6에 도시한 본 발명의 실시예로, 라우팅 알고리즘은, 예컨대 이벤트 필터를 610에 도시한 바와 같이 하나 이상의 서브 익스프레션을 구비한 평가 트리로 해석한다. 620에서, 라우팅 알고리즘은 평가 트리의 각 서브 익스프레션에 위치하는지를 결정한다. 예컨대, 최초 라우팅 알고리즘은 서브익스프레션이 평가 트리에 존재하는지 결정하고, 제1 서브익스프레션에 위치된다. 서브 익스프레션이 위치할 때, 라우팅 알고리즘은 630에서 서브익스프레션이 노드 특정 필드(예컨대, 에이젼트 노드, 노드 및 이벤트 관리자 노드)를 포함하는지 결정한다. 포함하는 경우, 적어도 하나의 노드 및 이벤트 관리자 접촉 정보는 640에서 리스트에 제공된다. 이 정보는 리스트가 이미 존재하는지 리스트에 부가되고, 그렇지 않으면 리스트는 이 정보를 생성하여 제공한다.
그러나, 단계 630에서, 서브익스프레션이 노드 특정 필드에 포함하도록 결정되지 않은 경우, 단계 660에서 라우팅 알고리즘은 서브익스프레션이 적어도 하나의 데이타 테이블 또는 데이타 기억 장치에 대하여 질의로 변환될 수 있고, 예컨대 서브익스프레션과 매치하는 이벤트를 가질 수 있는 노드의 리스트를 일으킨다.
서브익스프레션이 적어도 하나의 데이타 테이블 또는 데이타 기억 장치에 대하여 질의로 변환될 수 있는지 660에서 결정되는 경우, 질의는 단계 670에서 각각의 데이타 테이블 및/또는 데이타 기억 장치에 대하여 생성되고 결정된다. 640에서, 질의 결과(예컨대, 적어도 하나의 노드 및 이벤트 관리자 접촉 정보)는 리스트에 제공된다. 이 결과는 리스트가 이미 존재하는 경우 리스트에 부가되고, 그렇지 않으면 리스트는 생성하여 그 결과를 제공한다.
라우팅 알고리즘이 정보(예컨대, 적어도 하나의 노드 및 이벤트 관리자 접촉 정보)를 640의 리스트 또는 서브익스프레션이 660의 데이타 기억 장치에 대하여 질의로 변환될 수 없는 결정을 제공한 후에, 라우팅 알고리즘은 서브 익스프레션이 더이상 평가 트리에 배치될 수 없을 때까지 위치 단계 620으로 복귀한다. 다른 서브익스프레션이 620에 위치된 경우, 라우팅 알고리즘은 단계 630 등으로 다시 진행한다. 그러나, 620에서, 더이상 서브익스프레션이 위치될 수 없는 경우, 라우팅 알고리즘은 이벤트 필터에 의해 정의될 때 650의 서브 익스프레션 요구를 예컨대, 전체 리스트에서 식별된 각각의 이벤트 관리자로 전송한다.
본 발명의 대표적인 실시예로, 라우팅 알고리즘의 구현은, 예컨대 이벤트 필터를 분석하는 단일 함수를 포함하고, 라우팅 알고리즘에 의해 결정될 때 가입자 요구를 완수하도록 이벤트 관리자에게 개별 요구를 제시하는 가입자 처리 리스트를결정하도록 억세스될 수 있는 단일 불투명 데이타 구조를 제공한다.
라우팅 알고리즘의 예
int PtEventSubscribe(PT_CHAR_T*filter,
void(*EventCallbackHandler)(PT_STATUS status, void*EvCbArg,
PT_EVER_EVENTS_RES eventRes,PT_IPC_REQUEST request), void*EvCbArg,
void(*SubscriptionCallbackHandler)(PT_STATUS status,void*EvCbArg,
PT_EVENT_SUBSCRIPTION evSubscription,void*SubCbArg).
본 발명의 대표적인 실시예로, 라우팅 알고리즘은 개별 가입자 요구의 요약화를 위해 단일 메타 가입자 트랜잭션으로 복수개의 데이타 구조를 포함한다. 이것은, 예컨대 후술한 대표적인 데이타 구조 PT_EVENT_SUBSCRIPTION과 같은 불투명 데이타 구조로 되는 함수의 기본 복귀를 가짐으로써 행해진다.
PT_EVENT_SUBSCRIPTION는, 예컨대 미해결의 개별 가입자 요구를 구비하고, 예컨대 클라이언트(예컨대, 디렉터)에게 이것을 노출하도록 어세서 함수를 제공한다. 이 데이타 구조는 사용자가 데이타 구조의 필드를 직접적으로 억세스하지 않고 데이타 구조의 콘텐츠를 공개하도록 데이타 구조에 작용하는 함수와 같은 다른 방법을 허용한다. 따라서, 내부 스토리지(예컨대, 개별 엔트리의 수 및 데이타 구조 필드의 콘텐츠)는 데이타 구조의 외부 사용자에 영향을 주지 않고 변경할 수 있다.
본 발명의 대표적인 실시예로, 라우팅 알고리즘은, 예컨대 제1 데이타 구조(Subscrption_List)를 포함한다.
struct SUBSCRIPTION_LIST
{
PT_CHAR_T*nodeName;
PT_CHAR_T*dataGroup;
PT_IPC_REQUESTipcRequest;
struct SUBSCRIPTION_LIST*nextSubscription;
}
and asecond data structure(PT_EVENT_SUBSCRIPTION)
typedef struct_PT_EVENT_SUBSCRIPTION
{
PT_CHAR_T*filter;
struct SUBSCRIPTION_LIST fullList;
struct SUBSCRIPTION_LIST workingList;}_PT_EVENT_SUBSCRIPTION
typedef_PT_EVENT_SUBSCRIPTION*PT_EVENT_SUBSCRIPTION;
PT_Event_Subscrption은 이벤트 필터 및 각각의 이벤트 필터에 대한 모든 미해결 가입자 요구, 예컨대 전체 리스트를 제공한다. 또한, PT_Event_Subscrption는 변경될 가입자 요구를 제공하는 작업 리스트를 제공한다. Subscription_List는, 예컨대 전체 리스트의 기초 요소이고, 가입을 완수하기 위해 필요한 별도록 규정된 구성 요소의 리스트이다. Subscription_List는 개별 요구를 내부 프로세스 통신(IPC) 요구], 예컨대 ipcRequest; 각각의 이벤트 관리자 접촉 정보, 예컨대 dataGroup; 및 각각의 이벤트 필터에서 정의된 이벤트가 발생될 수 있는 노드, 예컨대 nodeName로 고유하게 식별하는 개별 요구 처리와 같은 각각의 요구에 대한 정보를 포함한다. 전체 리스트 중 개별 엔트리는 구조 Subscription_List에 의해 정의된다. 본 발명의 실시예로, 전체 리스트는, 예컨대 nextSubscription을 사용하여 링크된 리스트처럼 구현된다. 예컨대, 리스트의 각 요소는 리스트의 다음 요소를 가리키고 리스트의 최종 요소는 아무 것도 가리키지 않는다. 따라서, 전체 리스트의 크기는 미리 정해지지 않는다.
본 발명의 실시예로, 이벤트 관리자 시스템은 통지, 예컨대 가입자 요구가 변경된 클라이언트에 대한 메카니즘, 예컨대 클라이언트 등록 가입자 콜백 함수 SubscriptionCallbackFunction(PT_STATUS status, void*SubscriptionCallbackArgument,PT_EVENT_SUBSCRIPTIONevSubscription)를 제공한다. 따라서, 가입자 콜백 함수는 클라이언트, 예컨대 디렉터가 PT_Event_Subscription 구조와 변경, 예컨대 작성된 요구의 추가 및 제거의 상태를 관찰하도록 허용한다. 또한, 등록된 가입자 콜백 함수는 예컨대, 클라이언트 등록된 가입자 콜백 함수의 호출될 때 변경될 요구를 포함하는 작업 리스트를 제공할 수 있다.
또한, 클라이언트 등록된 가입자 콜백 함수는 미해결 가입자 요구, 예컨대 전체 리스트를 제공한다. 클라이언트 등록된 가입자 콜백 함수는 초기 가입과 차후 추가 또는 제거용으로 사용될 수 있다. 예컨대, 제거의 호출은 취소될 IPC 요구를 구비한 subscription_list 엔트리를 사용하여 포집된 작업 리스트를 가진다. 작업 리스트가 추가 또는 제거를 구비하는지 여부를 결정하면, 예컨대 상태 구조, 클라이언트 등록된 가입자 콜백 함수에 통과된 PT_STATUS에서 마이너 상태의 밸류를 통해 완수될 수 있다. 이벤트 필터(예컨대, 취소된 모든 구 요구와 추가된 신 요구)의 완벽한 변경으로, 콜백 함수는 제거 한번 및 추가 한번으로 2번 호출될 수 있다. 또한, 본 발명의 대표적인 실시예로, 이벤트 관리자 시스템은 가입자 그룹을 취소하기 위한 함수, int PtEventSubscribeCancel(PT_EVENT_SUBSCRIPTION evSubscription)를 포함한다.
본 발명의 대표적인 실시예로, 라우팅 알고리즘은 각각의 이벤트 필터의 평가 트리 중 서브익스프레션을 해석하는 것을 결정할 때 하나 이상의 데이타 테이블 또는 데이타 기억 장치에 질의를 수행한다. 도7에 도시한 바와 같이, 데이타 테이블 및 데이타 기억 장치는, 예컨대 이벤트 카탈로그(720), 소프트웨어 인벤토리(730), 프로덕트 테이블(760), 노드 테이블(740), 필터 데이타 기억 장치(750) 및 원격 모니터링 데이타 기억 장치(770)을 포함할 수 있다. 이벤트 카탈로그(720)는 이벤트가 설치될 프로덕트 보고에 특정되지 않거나 이벤트가 프로덕트 명칭, 이벤트 명칭, 이벤트의 형태, 해설, 해설 ID, 견본 형태 및 이벤트에 의해 사용된 모든 추가 확장키인 특정 견본에 특정되지 않는 이벤트의 분야를 포함할 수 있다. 본 발명의 대표적인 실시예로, 이 정보는 DEX 710 또는 포인트 프로덕트의 설치와 같은 각각의 데이타베이스 설치가 제공될 수 있고, 포인트 프로덕트에 의해 발생된 이벤트를 사용하여 이벤트 카탈로그(720)을 업데이트 하는 단계를 포함한다. 본 발명의 대표적인 실시예로, 예컨대 디렉터의 GUI는, 본 명세서에 전체적으로 참조된 Platinum Provision Common Services Reference Guide, version1.08(October 1998 Platinum technology,inc)에 기재된 바와 같이 사업에서 이용가능한 이벤트의 사용자를 통지하는 이벤트의 다양한 필드에 대해 옵션의 수집 리스트를 포집하는 단계를 포함한 이벤트 필터 생성 프로세스를 통해 사용자를 가이드한다. 이 리스트는 도 7에 도시한 바와 같이 예컨대, DEX 710에 위치될 수 있는 이벤트 카탈로그(720)를 질의함으로써 포집된다.
본 발명의 대표적인 실시예로, 본 발명의 이벤트 관리 시스템은 소프트웨어 인벤토리(730)를 포함할 수 있다. 이 소프트웨어 인벤토리(730)는 노드에 설치된 프로덕트의 각 카피에 대한 레코드를 포함할 수 있고, 예컨대 정보는 각각의 포인트 프로덕트가 설치되고 견본 리스트가 모니터되는 각각의 노드를 표지한다. 소프트웨어 인벤토리(730)는 프로덕트 식별자(프로덕트 ID) 및 노드 식별자(노드 ID)를 각각의 관계를 형성하도록 사용될 수 있다. 또한, 소정의 프로덕트는 복수 노드가 설치될 수 있고, 노드는 이것에 설치된 하나의 프로덕트 이상을 가질 수 있다. 이 소프트웨어 인벤토리(730)는 예컨대, DEX 710에서 포함될 수 있다. 소정의 프로덕트가 설치된 것을 표지하는 정보는 이 것에 발생할 특정한 형태의 이벤트를 가질 수 있는 노드를 결정하도록 유용할 수 있다.
본 발명의 대표적인 실시예로, 이벤트 카탈로그(720) 및 소프트웨어 인벤토리(730)는 예컨대, 단일한 관계형 데이타 기억 장치에 위치될 수 있다. 따라서, 이벤트 필터는 어떤 노드가 그들에 발생할 이벤트를 가질 수 있는지 결정하도록 데이타베이스 질의로 번역될 수 있다. 예컨대, 질의는 필터 참조 프로덕트 네임, 예컨대 "productName=PlatPerMgmtOra"에 대해 사용될 수 있다. 따라서, 라우팅 알고리즘은 예컨대, 관련 프로덕트 ID를 이벤트 카탈로그(720)에 참조된 프로덕트 네임으로부터 얻어지는 이벤트 카탈로그(720)에 대해 질의를 수행한다. 프로덕트 ID는 예컨대, 프로덕트를 참조할 때 모든 데이타베이스 양단에 사용되는 발생 키이다. 본 발명의 대표적인 실시예로, 프로덕트 ID는 예컨대, 네임 또는 정수일 수 있다. 이 ID는 이후 물리적인 노드가 프로덕트와 관련하는 소프트웨어 인벤토리(730)로부터 정보(예컨대, 레코드)를 참조하도록 사용될 수 있다.
이벤트 네임 필드는 각각의 이벤트를 발생할 수 있는 프로덕트에 대해 이벤트 카탈로그(720)를 질의하도록 라우팅 알고리즘에 의해 사용될 수 있다. 예컨대, 필터 "name=DatabaseDown"에서, 이벤트 네임은 DatabaseDown이다. 질의는 어떤 프로덕트가 이 네임을 가진 이벤트를 발생하는지 결정하도록 이벤트 카탈로그(720)에 대하여 수행될 수 있다. 프로덕트 리스트로부터, 소프트웨어 인벤토리(730)에 대한 질의는 어떤 노드에 이 프로덕트가 설치되는지 결정하도록 만들어질 수 있다. 질의의 동적인 구조에서 수행 및 통합의 용이성에 기초하여, 예컨대 질의는 복수 개의 질의, 중첩 질의 또는 적합한 결합을 갖는 단일 질의를 포함할 수 있다. 이벤트 네임에 대해 행해진 바와 같이, 유사 질의는 각각의 필드에 관련된 이벤트 카탈로그(720)에서 프로덕트를 결정하도록 이벤트 카탈로그(720)를 사용하여, 이벤트 카탈로그(720)에서 다른 필드에 대해 제작될 수 있고, 이후 이들 프로덕트는 설치된다. 본 발명의 대표적인 실시예로, 이벤트 카탈로그(720)에서 다른 필드는 이벤트에 의해 사용된 이벤트, 해설, 해설 ID, 견본 형태 및 모든 추가 확장 키를 포함할 수 있다. 키 밸류 페어의 이벤트 구조의 추가는 사용자 확장 가능한 이벤트구조를 위한 방법 및 장치라는 명칭으로 1998년 12월 31일 출원된 변호사 문서 번호 제22074661/25529호에 설명된다. 이러한 시도는 각각의 서브 익스프레션으로부터 복귀된 노드의 결합인 전체 리스트를 사용하여 필터의 개별 서브익스프레션에 대해 각각 행해질 수 있다.
프로덕트 테이블(760)은 프로덕트의 해설(예컨대, 버젼), 프로덕트에 의해 사용된 파일, 프로덕트에 의해 사용된 파일의 해설 및 고유한 프로덕트 ID에 대한 매스터를 포함할 수 있다.
노드 테이블(740)은 예컨대, 오퍼레이팅 시스템 동작, 오퍼레이팅 시스템의 버젼, 하드웨어 형태, 프로세서 속도 및 노드 테이블(740)에 특정한 고유 노드 ID에 대한 매스터와 같은 노드의 특성을 포함한 관리된 환경에서 해당 노드 모두를 포함할 수 있다. 본 발명의 대표적인 실시예로, 이 정보의 일부는 예컨대, 시스템의 여러가지 키 속성을 검색하도록 OS 특정 호출을 만드는 단계와 이 정보를 중앙 DEX 데이타 기억 장치에 전송되어 해석되고 노드 테이블로 삽입될 수 있는 메시지로 놓여지는 단계를 포함하는 발견 프로세스를 통해 획득될 수 있다. 도 7에 도시한 바와 같이, 노드 테이블(740)은, 예컨대 DEX 710에 포함될 수 있다. 라우팅 알고리즘은 이벤트 카탈로그(720)에 포함되지 않은 라우팅 결정에서 사용된 이벤트의 필드에 관련된다. 따라서, 견본 형태 및 견본이 특정되는 필터에서, 질의는 예컨대, 필터에 특정된 견본 필드를 사용하여 각각의 데이타 테이블 또는 데이타 기억 장치에 대하여 라우팅 알고리즘에 의해 수행될 수 있다. 질의의 결과는 가입자 요구를 수신하도록 각 노드를 결정하는데 사용될 수 있다.
본 발명의 대표적인 실시예로, 원격 모니터링 프로덕트는 예컨대, 원격 모니터링 데이타 기억 장치(770)에서 이벤트를 제출할 각각의 노드를 구성에 레지스터한다. 원격 모니터링은 프로덕트가 위치된 것과 다른 노드에 위치된 견본에 대하여 이벤트를 제출하는 프로덕트이다. 본 발명의 대표적인 실시예로, 이벤트 관리 시스템은 견본, 노드 및 이벤트 관리자를 원격 모니터링 데이타 기억 장치(770)로 제공할 수 있다. 이것은 해당 노드에 대한 모든 이벤트를 수신하여 가입하도록 각각의 노드를 리스트에 추가하는데 사용될 수 있다(예컨대, 각각의 노드의 견본에 대한 이벤트들은 원격 모니터링에 기인하여 다른 노드의 이벤트 관리자에게 보고된다). 또한, 복수 개의 원격 모니터는 단일 견본을 모니터하는 상이한 노드일 수 있다. 따라서, 원격 모니터링 데이타 기억 장치(770)에서 견본 및 이벤트 관리자 노드를 가짐으로써, 견본에 대한 이들 이벤트를 얻도록 접촉될 필요가 있는 추가적인 이벤트 관리자가 결정된다.
필터 데이타 기억 장치(750)는, 예컨대 필터 및 각각의 기호 필터 명칭을 포함할 수 있다. 이 기호 필터 명칭은 완전히 특정될 필요가 있는 필터대신에 가입자를 위해 사용될 수 있다. 이 기호 명칭은 필터 데이타 기억 장치(750)에서 예컨대 정의된 필터를 고유하게 참조할 것이다. 필터가 동적으로 변경하고 가입이 진행될 때, 필터의 정의에 대한 변경은 에컨대, 이벤트 API에 의해 자동적으로 처리된다. 이벤트 API는, 예컨대 가입자 요구에 사용된 기호 필터에 대한 업데이트의 통지를 위해 레지스터링을 요약화할 것이다. 이 이벤트 API는 새로운 정의를 검색하고, 모든 구 IPC 요구의 취소하고, 새로운 필터 정의 를 가진 라우팅 알고리즘의 재실행및 새로운 필터 정의를 사용하여 각각의 이벤트 관리자를 갖는 새로운 IPC 요구를 재설정한다. 따라서, 라우팅 알고리즘은, 예컨대 각각의 업데이트된 필터(750)를 동적으로 획득하도록 필터 데이타 기억 장치(750)를 질의할 수 있다.
본 발명의 대표적인 실시예로, 이벤트 관리자 시스템은 주제 변화에 관심이 있는 레지스터링을 포함한다. 시계는 이벤트 관리자로 주제 변경을 설정할 수 있다. 이 시계는, 예컨대 새로운 프로세스가 특정 표준과 매치하는 기계에 동작할 때 통신층이 클라이언트에 통지하고, 이벤트 관리자가 그 노드에 작동하는 방법이다. 이 시계는, 예컨대 함수로서 구현될 수 있다. 이 시계의 결과는 이들이 초기 필터의 표준과 일치하는지 결정하도록 분석될 수 있다. 또한, 사용자 등록 콜백 함수는 가입자의 추가 사용자를 노드에 통지하도록 호출될 수 있다.
본 발명의 대표적인 실시예로, 이벤트 관리자 시스템은 가입자가 미해결인 중에 노드의 리스트가 필터의 변경을 충족할 필요가 있는지 통지를 제공한다. 이 노드는, 예컨대 "like" 오퍼레이터가 사용되고 다른 이벤트 관리자가 동작을 시작하거나 초기 호출 후에 네트워크에서 가시적으로 되는 경우, 포인트 프로덕트는 새로운 노드 또는 효과적으로 필터를 변경하는 정의가 변경된 필터 범위내 외부 참조(예컨대, 기호 네임이 각각의 이벤트 필터를 참조하도록 사용된다)에 설치된다. 필터가 이 라우팅을 결정하는 질의를 데이터 기억 장치에 맵핑하는 경우, 질의의에 대한 각각의 데이타 기억 장치에 대한 변화는 질의의 결과를 일시적으로 변경할 수 있다.
따라서, 본 발명의 이벤트 관리자 시스템은 질의 결과가 변경될 때 통지를포함한다. 각각의 데이타 기억 장치에 대한 업데이트는, 예컨대 각각의 서비스 프로세서에 의해 조절될 수 있다. 예컨대, 서비스 프로세서는 상호간 프로세스 통신 메시지를 통해 업데이트의 통지를 제공할 수 있다. 또한, 이벤트는 각각의 데이타 기억 장치, 예컨대 DEX 710 내에 주제 영역 기초에 공개될 수 있다. 주제 영역은, 예컨대 노드 테이블(740)이다. 예컨대, 이것은 데이타베이스 범위내 테이블의 그룹핑일 수 있다. 본 발명의 대표적인 실시예로, 공개된 이벤트는 어떤 주제 영역이 업데이트되었는지 표지한다.
이벤트 관리자 시스템은 질의 변경을 위해 트래킹 메카니즘을 포함한다.초기 질의 결과, 예컨대 질의를 운용하는데 사용된 데이타열 및 주제 영역은 저장될 수 있다. 사용된 주제 영역에 대한 업데이트 이벤트를 위한 가입은 생성될 수 있다. 이 주제 영역 중 하나에 대한 업데이트 이벤트의 수령시, 질의는 재실행될 수 있다. 재실행의 결과는 선행 질의 결과와 비교될 수 있고, 개별 이벤트 관리자 가입 요구의 적당한 추가 또는 제거가 작성될 수 있다.
본 발명의 대표적인 실시예로, 라우팅 알고리즘은, 예컨대 이벤트가 일시적으로 발생하는 노드의 리스트를 좁히도록 이벤트 필터의 평가 트리의 각 서브익스프레션을 조합하는 결합 정보를 사용할 수 있다. 예컨대, 이벤트 필터 "name=DatabaseDown and name=SeverDown"는 결합 "and"에 의해 조합된 제1 서브익스프레션 "name=DatabaseDown"과 제2 서브익스프레션 "name=SeverDown"를 포함한다. 이 라우팅 알고리즘은, 예컨대 개별적으로 각각의 서브익스프레션을 분석함으로써 이것에 발생할 이벤트를 가질 수 있는 노드의 리스트를 결정할 수 있다. 그결과, 결합은 "or"로서 처리된다. 따라서, 노드의 리스트는 DatabaseDown을 생성할 수 있는 프로덕트를 갖는 모든 노드 및 SeverDown을 생성할 수 있는 프로덕트를 갖는 모든 노드를 포함한다. 한 필드는, 예컨대 2 개의 상이한 밸류를 가질 수 없고, 이벤트는 이 필터와 일치하여 발생할 수 없다. 따라서, 라우팅 알고리즘은 서브익스프레션 사이의 결합 "and"를 사용하여 필터에 의해 정의된 이벤트에 대해 존재하는 노드가 없는지를 결정한다. 따라서, 아우팅 알고리즘은 이러한 가입자 요구를 임의의 노드에 제공하지 않는다.
이것은 사용자 가입이 불량하게 형성되었는지 검출하는 예이다. 직접적인 통지는 이들 이벤트가 시스템에 존재한 적이 없는 사용자에게 주어질 수 있고, 이들 사용자는 이 에러를 알아차릴 수 있고 가입을 보정할 수 있다. 다른 샘플 필터에 대해, 이 목표는 가입자가 라우트되도록 최적화하는 것이다. 예컨대, 결합 정보가 사용되지 않는 경우, 예컨대 filter name=SeverDown and nodeA에서, 노드 서브익스프레션의 평가는 단일 노드, 노드 A에서 일어나고, 네임 서브익스프레션의 평가는 노드 A, 노드 B 및 노드 C에서 일어난다. 그러므로, 각각의 서브익스프레션(예컨대, 전체 리스트)의 평가 결과의 결합은 노드 A, 노드 B 및 노드 C일 수 있다. 이 대표적인 필터에서 결합은 and이고, 전체 리스트는 단지 nodeA이다. 따라서, 필터가 모두 3개의 노드로 라우트되는 경우 추가 이벤트는 수신되지 않는다. 또한, 각각의 요구가 작성될 때 노드 B 및 노드 C에 가입하는 시스템에서 더욱 비효율적이고, 이벤트 관리자는 노드 B에 위치되고 그 필터에 대한 매치를 결코 찾을 수 없을 지라도 노드 C는 각각의 요구를 평가한다.
본 발명의 필터 시스템은 클라이언트 및 서버가 상이한 코드 페이지를 사용하여 운용할 수 있는 클라이언트/서버 환경에서 동작하도록 설계된다. 따라서, 본 발명의 이벤트 필터는, 예컨대 이벤트 카탈로그에 저장된 이벤트 구조의 적어도 소정 필드 및 이벤트 구조의 필드의 콘텐츠가 자동적으로 이벤트 필터의 로컬한 버젼을 제공하도록 자동적으로 번역될 수 있다. 본 발명의 대표적인 실시예로, 노드 경계(예컨대, 프로세스는 상이한 노드에 운영하고 통신함)를 가로지를 때 한쪽 프로세스에서 다른쪽 프로세스로 통과하는 메시지(예컨대, 이벤트 필터를 포함한 이벤트 관리자에게 가입자 요구와 같은 상호간 프로세스 통신)는 맵핑가능하다. 본 발명의 이벤트 관리자 시스템의 통신층은 메시지의 코드 페이지를 트랙하고, 통신층의 코드를 수신함으로써 호출될 수 있는 변환맵핑을 제공한다.
본 발명의 대표적인 실시예로, 프로덕트 네임, 네임, 형태, 조건 시간 및 키네임과 같은 이벤트의 필드 및 키는 모든 페이지, 예컨대 휴대용 문자 세트에 걸쳐고유한 표시를 가질 수 있다. 따라서, 이러한 제약은 손실없이 맵핑을 보장한다. 따라서, 한 코드 페이지에서 문자로부터 다른 코드 페이지에서 적당한 문자까지 일대일 맵핑이 존재한다. 본 발명의 대표적인 실시예로, 휴대용 문자 세트는, 예컨대 문자<space>,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,0,1,2,3,4,5,6,7,8,9,\,_,',!,",#,$,%,&,',(,),*,+,,-,.,/,:,;,<,=,>,?,@,{,|, },and~를 포함한다.
본 발명의 대표적인 실시예로, 이벤트 관리자 시스템은 언어 키의 일대일 문자 번역을 포함한다. 따라서, 확장 키 네임을 제외한 이벤트에서 모든 필드의 네임및 비교 오퍼레이터는 현재의 언어에서 치환을 위한 카탈로그 검색을 가질 수 있다. 이것은 필터가 모국어에서 작성되도록 허용한다. 그러나, 필터가 가입에서 사용되기 전에, 이것은 공통 포맷으로 포맷되어 단일 포맷이 필터의 해석에서 원격 수신기에 의해 사용될 수 있다. 이벤트에서 모든 필드의 네임(확장 키 네임은 제외) 및 비교 오퍼레이터는 현재의 언어에서 치환을 위한 카탈로그 검색을 가질 수 있다. 양방향 번역은 사용자가 로컬 언어에서 이벤트 필터를 볼 수 있도록 적용될 수 있지만, 표준어에서 시스템에 의해 사용되고 저장된 이벤트 필터를 가지고 있다. 프로세스간의 통신은 프로세스가 동일 언어로 통신할 때 변환될 필요가 없다. 따라서, 표준 언어는 모든 프로세스가 의존하는 단일 언어를 제공하고, 번역은 사용자에게 이벤트 필터의 제시에 제공되도록 해야만 한다.
전술한 실시예는 본 발명의 예를 나타내고 본 발명이 이들 특정 실시예에 국한되지 않음을 명심해야 한다. 여러 가지 변경 및 변형은 첨부된 청구항에 규정된 본 발명의 정신 또는 범위를 이탈함이 없이 전문가라면 용이하게 구현할 수 있다.
Claims (1)
- 이벤트 필터에 의해 정의된 가입자 요구를 라우팅하는 방법으로서,상기 이벤트 필터를 적어도 하나의 서브익스프레션을 구비한 평가 트리로 해석하는 단계와,적어도 하나의 서브익스프레션을 배치하는 단계와,상기 적어도 하나의 서브익스프레션이 노드 특정 필드를 구비하는지 여부를 판정하는 단계와,상기 적어도 하나의 서브익스프레션이 노드 특정 필드를 포함하는 경우,적어도 하나의 노드 및 이벤트 관리자 콘택 정보의 리스트를 생성하는 단계와;상기 가입자 요구를 상기 리스트 내에 구비된 노드 위에 배치된 적어도 하나의 이벤트 관리자에게 전송하는 단계를 포함하는 가입자 요구 라우팅 방법.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/224,482 | 1998-12-31 | ||
US09/224,482 US6366926B1 (en) | 1998-12-31 | 1998-12-31 | Method and apparatus for the dynamic filtering and routing of events |
PCT/US1999/031113 WO2000039673A1 (en) | 1998-12-31 | 1999-12-29 | Method and apparatus for the dynamic filtering and routing of events |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20010103731A true KR20010103731A (ko) | 2001-11-23 |
Family
ID=22840896
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020017008374A KR20010103731A (ko) | 1998-12-31 | 1999-12-29 | 이벤트의 동적인 필터링 및 라우팅을 위한 방법 및 장치 |
Country Status (12)
Country | Link |
---|---|
US (1) | US6366926B1 (ko) |
EP (1) | EP1210660A4 (ko) |
JP (1) | JP2002542525A (ko) |
KR (1) | KR20010103731A (ko) |
CN (1) | CN1149474C (ko) |
AU (1) | AU775791B2 (ko) |
BR (1) | BR9916696A (ko) |
CA (1) | CA2358162A1 (ko) |
HK (1) | HK1048528A1 (ko) |
IL (3) | IL143829A0 (ko) |
WO (1) | WO2000039673A1 (ko) |
ZA (1) | ZA200104882B (ko) |
Families Citing this family (124)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6920475B1 (en) * | 1999-04-23 | 2005-07-19 | Oracle International Corporation | Communication architecture for distributed computing environment |
US6925513B1 (en) * | 1999-05-04 | 2005-08-02 | Apple Computer, Inc. | USB device notification |
US6865576B1 (en) * | 1999-05-21 | 2005-03-08 | International Business Machines Corporation | Efficient schema for storing multi-value attributes in a directory service backing store |
US7099898B1 (en) * | 1999-08-12 | 2006-08-29 | International Business Machines Corporation | Data access system |
US6442565B1 (en) * | 1999-08-13 | 2002-08-27 | Hiddenmind Technology, Inc. | System and method for transmitting data content in a computer network |
US6950881B1 (en) * | 1999-11-02 | 2005-09-27 | Mshift, Inc. | System for converting wireless communications for a mobile device |
FR2805061B1 (fr) * | 2000-02-14 | 2003-01-17 | Cit Alcatel | Service de communication permettant la transmission d'evenements entre elements logiciels de facon independante des applications |
US6918124B1 (en) * | 2000-03-03 | 2005-07-12 | Microsoft Corporation | Query trees including or nodes for event filtering |
AU2001262970A1 (en) * | 2000-05-02 | 2001-11-12 | Sun Microsystems, Inc. | Event service method and system |
WO2001089171A2 (en) * | 2000-05-16 | 2001-11-22 | Mshift, Inc. | System for providing network content to wireless devices |
US7062509B1 (en) * | 2000-05-22 | 2006-06-13 | Instill Corporation | System and method for product data standardization |
US7171487B2 (en) * | 2000-09-22 | 2007-01-30 | International Business Machines Corporation | Method and system for application specific packet forwarding |
US20020161928A1 (en) * | 2000-10-10 | 2002-10-31 | Awele Ndili | Smart agent for providing network content to wireless devices |
US20020053000A1 (en) * | 2000-11-02 | 2002-05-02 | Masanori Wakai | Information processing apparatus and method, and computer readable memory |
JP2002140193A (ja) * | 2000-11-02 | 2002-05-17 | Canon Inc | 情報処理装置及びその方法、コンピュータ可読メモリ |
JP2002140221A (ja) * | 2000-11-02 | 2002-05-17 | Canon Inc | 情報処理装置、情報処理方法、及び、記憶媒体 |
EP1207461A1 (en) * | 2000-11-17 | 2002-05-22 | Siemens Aktiengesellschaft | Method and device for performing a query on a markup document |
US6941375B1 (en) * | 2000-12-08 | 2005-09-06 | Hewlett-Packard Development Company, L.P. | Finding e-service in client-defined, loosely coupled, e-service communities |
US8505024B2 (en) | 2000-12-18 | 2013-08-06 | Shaw Parsing Llc | Storing state in a dynamic content routing network |
US7051070B2 (en) * | 2000-12-18 | 2006-05-23 | Timothy Tuttle | Asynchronous messaging using a node specialization architecture in the dynamic routing network |
JP3654187B2 (ja) * | 2001-01-09 | 2005-06-02 | 日本電気株式会社 | 企業情報フィルタリングシステム、企業情報フィルタリング方法、及びその制御プログラムを記録した記録媒体 |
GB2372671B (en) * | 2001-02-27 | 2003-04-30 | 3Com Corp | Processing network events to reduce the number of events to be displayed |
US20020174109A1 (en) * | 2001-05-16 | 2002-11-21 | Chandy Kanianthra Mani | Event detection with concurrent data updates |
US7356529B1 (en) * | 2001-07-27 | 2008-04-08 | Ciena Corporation | Mechanism for facilitating subscription in a publish/subscribe communication system |
EP1286498A1 (de) * | 2001-08-21 | 2003-02-26 | Alcatel | Verfahren, Dienst-Agent und Netzwerk-Management-System zur Bedienung eines Telekommunikationsnetzes |
US7171671B2 (en) * | 2001-08-23 | 2007-01-30 | Microsoft Corporation | Method and system for providing state change notifications in device drivers |
KR100464330B1 (ko) * | 2001-12-04 | 2005-01-03 | 삼성전자주식회사 | 간이네트워크관리프로토콜(snmp) 메니저의 네트워크장비의 대표상태의 관리 및 표시를 위한 시스템 및 방법 |
JP2003186855A (ja) * | 2001-12-20 | 2003-07-04 | Fujitsu Ltd | 型照合によるオブジェクト連携システムおよび方法 |
US20030126307A1 (en) * | 2001-12-27 | 2003-07-03 | Siemens Aktiengesellschaft | Method and system for event management |
US7143417B2 (en) * | 2002-01-10 | 2006-11-28 | International Business Machines Corporation | Notification services within a unified communications service |
DE10296786D2 (de) * | 2002-04-12 | 2005-02-10 | Siemens Ag | Repräsentation Bool'scher Ausdrücke zur Spezifikation von Filtern mittels XML |
US20030212919A1 (en) * | 2002-05-09 | 2003-11-13 | Adkins Ronald P. | Updateable event forwarding discriminator incorporating a runtime modifiable filter |
US20040059734A1 (en) * | 2002-09-23 | 2004-03-25 | Hubbert Smith | Data access control |
US7962589B1 (en) * | 2002-11-07 | 2011-06-14 | Cisco Technology, Inc. | Method and apparatus for providing notification of network alarms using a plurality of distributed layers |
US20040128372A1 (en) * | 2002-12-16 | 2004-07-01 | Amit Mukherjee | Architecture for managing computer resources |
US8230445B2 (en) * | 2003-01-14 | 2012-07-24 | International Business Machines Corporation | Event management method and system |
CA2416355A1 (en) * | 2003-01-14 | 2004-07-14 | Cognos Incorporated | Iterative escalation in an event management system |
CA2416357A1 (en) * | 2003-01-14 | 2004-07-14 | Cognos Incorporated | Message suppression in an event management system |
CA2416400A1 (en) * | 2003-01-14 | 2004-07-14 | Cognos Incorporated | Event management system and method |
US20040139444A1 (en) * | 2003-01-14 | 2004-07-15 | Hope Clifford C. | Notification service in an event management system |
CA2416337A1 (en) * | 2003-01-14 | 2004-07-14 | Cognos Incorporated | Contextual drill through in an event management system |
US20040139452A1 (en) * | 2003-01-14 | 2004-07-15 | Hope Clifford C. | Dynamic recipients in an event management system |
US20040138931A1 (en) * | 2003-01-14 | 2004-07-15 | Hope Clifford C. | Trend detection in an event management system |
CA2416352A1 (en) * | 2003-01-14 | 2004-07-14 | Cognos Incorporated | Autonomous dynamic behavior modification in an event management system |
BRPI0408649B1 (pt) * | 2003-03-25 | 2017-11-07 | Nokia Technologies Oy | Method of configuring a network element, method for providing subscription services and network element |
US7254815B2 (en) * | 2003-04-24 | 2007-08-07 | International Business Machines Corporation | Method and apparatus for implementing distributed event management in an embedded support processor computer system |
US7096391B2 (en) * | 2003-04-29 | 2006-08-22 | Hewlett-Packard Development Company, L.P. | Error message suppression system and method |
US20040236644A1 (en) * | 2003-05-23 | 2004-11-25 | E2Open Llc | Collaborative signal tracking |
US7636919B2 (en) * | 2003-09-16 | 2009-12-22 | International Business Machines Corporation | User-centric policy creation and enforcement to manage visually notified state changes of disparate applications |
GB2407658A (en) * | 2003-10-31 | 2005-05-04 | Daniele Grazioli | Computer network for processing received event data |
US20050131778A1 (en) * | 2003-12-11 | 2005-06-16 | International Business Machines Corporation | Customized subscription builder |
US7711742B2 (en) * | 2003-12-11 | 2010-05-04 | International Business Machines Corporation | Intelligent data query builder |
US7970889B2 (en) * | 2003-12-11 | 2011-06-28 | International Business Machines Corporation | Intelligent subscription builder |
US7546608B2 (en) * | 2004-01-14 | 2009-06-09 | International Business Machines Corporation | Enhanced search expressions for information kit integration architecture |
US7496925B2 (en) * | 2004-01-14 | 2009-02-24 | International Business Machines Corporation | Information kit objects for publish/subscribe integration architecture |
US7490183B2 (en) * | 2004-02-12 | 2009-02-10 | International Business Machines Corporation | Information kit integration architecture for end-user systems |
US7440961B1 (en) * | 2004-02-18 | 2008-10-21 | Microsoft Corporation | System and method for filtering recurrence events |
US7626944B1 (en) * | 2004-03-31 | 2009-12-01 | Packeteer, Inc. | Methods, apparatuses and systems facilitating remote, automated deployment of network devices |
US8108429B2 (en) * | 2004-05-07 | 2012-01-31 | Quest Software, Inc. | System for moving real-time data events across a plurality of devices in a network for simultaneous data protection, replication, and access services |
US7565661B2 (en) | 2004-05-10 | 2009-07-21 | Siew Yong Sim-Tang | Method and system for real-time event journaling to provide enterprise data services |
US20060026168A1 (en) * | 2004-05-20 | 2006-02-02 | Bea Systems, Inc. | Data model for occasionally-connected application server |
US7680834B1 (en) * | 2004-06-08 | 2010-03-16 | Bakbone Software, Inc. | Method and system for no downtime resychronization for real-time, continuous data protection |
US7607138B2 (en) * | 2004-06-17 | 2009-10-20 | Cisco Technology, Inc. | System and method for optimizing inter-domain event services |
CN101189852B (zh) * | 2004-08-17 | 2012-10-03 | 肖分析有限公司 | 用于上游故障检测和故障恢复的技术 |
WO2006023459A1 (en) * | 2004-08-17 | 2006-03-02 | Shaw Parsing Llc | Techniques for delivering personalized content with a real-time routing network |
JP2008510259A (ja) * | 2004-08-17 | 2008-04-03 | ショー パーシング リミティド ライアビリティ カンパニー | モジュラー型のイベントドリブン処理 |
US7979404B2 (en) | 2004-09-17 | 2011-07-12 | Quest Software, Inc. | Extracting data changes and storing data history to allow for instantaneous access to and reconstruction of any point-in-time data |
US7904913B2 (en) | 2004-11-02 | 2011-03-08 | Bakbone Software, Inc. | Management interface for a system that provides automated, real-time, continuous data protection |
CN1327653C (zh) * | 2004-12-09 | 2007-07-18 | 中国科学院软件研究所 | 构建于结构化P2P网络之上的pub/sub系统的路由方法 |
JP2007028117A (ja) * | 2005-07-15 | 2007-02-01 | Nec Corp | 情報交換システム、管理サーバ、端末装置及びそれらに用いるネットワーク負荷軽減方法 |
US7788521B1 (en) | 2005-07-20 | 2010-08-31 | Bakbone Software, Inc. | Method and system for virtual on-demand recovery for real-time, continuous data protection |
US7689602B1 (en) * | 2005-07-20 | 2010-03-30 | Bakbone Software, Inc. | Method of creating hierarchical indices for a distributed object system |
US7664784B2 (en) | 2006-01-11 | 2010-02-16 | Oracle International Corporation | High-performance, scalable, adaptive and multi-dimensional event repository |
US20070198993A1 (en) * | 2006-02-06 | 2007-08-23 | Zhongyao Zhang | Communication system event handling systems and techniques |
US8166143B2 (en) * | 2006-05-11 | 2012-04-24 | Netiq Corporation | Methods, systems and computer program products for invariant representation of computer network information technology (IT) managed resources |
US20090307212A1 (en) * | 2006-07-13 | 2009-12-10 | Hayoman ,Internet Technologies Ltd. | System and method for event management |
US20080195448A1 (en) * | 2007-02-09 | 2008-08-14 | May Darrell R | Method Of Processing Calendar Events, And Associated Handheld Electronic Device |
US8131723B2 (en) | 2007-03-30 | 2012-03-06 | Quest Software, Inc. | Recovering a file system to any point-in-time in the past with guaranteed structure, content consistency and integrity |
US8364648B1 (en) | 2007-04-09 | 2013-01-29 | Quest Software, Inc. | Recovering a database to any point-in-time in the past with guaranteed data consistency |
US7895189B2 (en) * | 2007-06-28 | 2011-02-22 | International Business Machines Corporation | Index exploitation |
US8086597B2 (en) * | 2007-06-28 | 2011-12-27 | International Business Machines Corporation | Between matching |
FR2920556B1 (fr) * | 2007-08-31 | 2009-11-13 | Bull Sas | Gestionnaire de processus ameliore |
US8793705B2 (en) * | 2007-08-31 | 2014-07-29 | Red Hat, Inc. | Rich internet bus |
US8073558B2 (en) * | 2007-10-05 | 2011-12-06 | Honeywell International Inc | Critical resource notification system and interface device |
US9449291B2 (en) * | 2007-11-28 | 2016-09-20 | Sap Se | Subscriptions for routing incoming messages to process instances in a process execution engine |
US8667132B2 (en) | 2009-07-17 | 2014-03-04 | Honeywell International Inc. | Arrangement for communication about and management of a resource using a mobile device |
US8572230B2 (en) | 2009-07-17 | 2013-10-29 | Honeywell International Inc. | System for using attributes to deploy demand response resources |
US8676953B2 (en) | 2009-07-17 | 2014-03-18 | Honeywell International Inc. | Use of aggregated groups for managing demand response resources |
US9124535B2 (en) | 2009-07-17 | 2015-09-01 | Honeywell International Inc. | System for using attributes to deploy demand response resources |
US8671191B2 (en) | 2009-07-17 | 2014-03-11 | Honeywell International Inc. | Installation system for demand response resources |
US9818073B2 (en) | 2009-07-17 | 2017-11-14 | Honeywell International Inc. | Demand response management system |
US8782190B2 (en) | 2009-07-17 | 2014-07-15 | Honeywell International, Inc. | Demand response management system |
US9137050B2 (en) | 2009-07-17 | 2015-09-15 | Honeywell International Inc. | Demand response system incorporating a graphical processing unit |
US8671167B2 (en) * | 2009-07-17 | 2014-03-11 | Honeywell International Inc. | System for providing demand response services |
US8626354B2 (en) | 2011-01-28 | 2014-01-07 | Honeywell International Inc. | Approach for normalizing automated demand response events in energy management control systems |
US9153001B2 (en) | 2011-01-28 | 2015-10-06 | Honeywell International Inc. | Approach for managing distribution of automated demand response events in a multi-site enterprise |
US8630744B2 (en) | 2011-01-28 | 2014-01-14 | Honeywell International Inc. | Management and monitoring of automated demand response in a multi-site enterprise |
EP2568382B1 (en) * | 2011-09-09 | 2020-04-01 | BlackBerry Limited | Optimizing of publish-subscribe interprocess communications through the use of content-filters |
US8966501B2 (en) * | 2011-11-28 | 2015-02-24 | Ca, Inc. | Method and system for time-based correlation of events |
US9413615B1 (en) * | 2012-03-02 | 2016-08-09 | Juniper Networks, Inc. | Trap filtering within a device management protocol |
US10382252B2 (en) * | 2012-06-26 | 2019-08-13 | Juniper Networks, Inc. | Filtering within device management protocol queries |
US20140081704A1 (en) | 2012-09-15 | 2014-03-20 | Honeywell International Inc. | Decision support system based on energy markets |
US9389850B2 (en) | 2012-11-29 | 2016-07-12 | Honeywell International Inc. | System and approach to manage versioning of field devices in a multi-site enterprise |
US9691076B2 (en) | 2013-07-11 | 2017-06-27 | Honeywell International Inc. | Demand response system having a participation predictor |
US10346931B2 (en) | 2013-07-11 | 2019-07-09 | Honeywell International Inc. | Arrangement for communicating demand response resource incentives |
US9989937B2 (en) | 2013-07-11 | 2018-06-05 | Honeywell International Inc. | Predicting responses of resources to demand response signals and having comfortable demand responses |
US10156961B1 (en) * | 2013-09-24 | 2018-12-18 | EMC IP Holding Company LLC | Dynamically building a visualization filter |
US9665078B2 (en) | 2014-03-25 | 2017-05-30 | Honeywell International Inc. | System for propagating messages for purposes of demand response |
WO2016172597A1 (en) | 2015-04-22 | 2016-10-27 | LARC Networks, Inc. | Dead drop network architecture |
CN108027802A (zh) | 2015-07-17 | 2018-05-11 | 拉克网络公司 | 死点网络架构中的两次写数据交换 |
US10915498B2 (en) | 2017-03-30 | 2021-02-09 | International Business Machines Corporation | Dynamically managing a high speed storage tier of a data storage system |
US10795575B2 (en) | 2017-03-31 | 2020-10-06 | International Business Machines Corporation | Dynamically reacting to events within a data storage system |
US10541556B2 (en) | 2017-04-27 | 2020-01-21 | Honeywell International Inc. | System and approach to integrate and manage diverse demand response specifications for multi-site enterprises |
US11632382B2 (en) | 2017-05-15 | 2023-04-18 | Forcepoint Llc | Anomaly detection using endpoint counters |
US11949700B2 (en) | 2017-05-15 | 2024-04-02 | Forcepoint Llc | Using content stored in an entity behavior catalog in combination with an entity risk score |
US10999296B2 (en) | 2017-05-15 | 2021-05-04 | Forcepoint, LLC | Generating adaptive trust profiles using information derived from similarly situated organizations |
US10318729B2 (en) | 2017-07-26 | 2019-06-11 | Forcepoint, LLC | Privacy protection during insider threat monitoring |
US11816586B2 (en) | 2017-11-13 | 2023-11-14 | International Business Machines Corporation | Event identification through machine learning |
US10885186B2 (en) * | 2018-11-13 | 2021-01-05 | Forcepoint, LLC | System and method for operating a protected endpoint device |
CN110109957B (zh) * | 2019-03-29 | 2021-10-01 | 奇安信科技集团股份有限公司 | 流式事件关联匹配方法及装置 |
CN113573299B (zh) * | 2020-04-29 | 2022-08-30 | 中国电信股份有限公司 | 订阅数据的提供/获取方法、提供/获取装置和交互系统 |
US11838275B2 (en) | 2021-03-12 | 2023-12-05 | Forcepoint Llc | Web endpoint device having automatic switching between proxied and non-proxied communication modes |
US20230315884A1 (en) * | 2022-04-01 | 2023-10-05 | Blackberry Limited | Event data processing |
US20230315603A1 (en) * | 2022-04-01 | 2023-10-05 | Blackberry Limited | Event data processing |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5165018A (en) * | 1987-01-05 | 1992-11-17 | Motorola, Inc. | Self-configuration of nodes in a distributed message-based operating system |
US5459717A (en) * | 1994-03-25 | 1995-10-17 | Sprint International Communications Corporation | Method and apparatus for routing messagers in an electronic messaging system |
US5566337A (en) * | 1994-05-13 | 1996-10-15 | Apple Computer, Inc. | Method and apparatus for distributing events in an operating system |
DE69625652T2 (de) * | 1995-08-18 | 2003-09-18 | International Business Machines Corp., Armonk | Ereignisverwaltungsdienst |
US5881315A (en) | 1995-08-18 | 1999-03-09 | International Business Machines Corporation | Queue management for distributed computing environment to deliver events to interested consumers even when events are generated faster than consumers can receive |
US5870605A (en) * | 1996-01-18 | 1999-02-09 | Sun Microsystems, Inc. | Middleware for enterprise information distribution |
US5873084A (en) * | 1996-01-18 | 1999-02-16 | Sun Microsystems, Inc. | Database network connectivity product |
US6216132B1 (en) * | 1997-11-20 | 2001-04-10 | International Business Machines Corporation | Method and system for matching consumers to events |
US6148338A (en) * | 1998-04-03 | 2000-11-14 | Hewlett-Packard Company | System for logging and enabling ordered retrieval of management events |
US6289384B1 (en) * | 1998-06-05 | 2001-09-11 | I2 Technologies, Inc. | System and method for event notification through a firewall |
-
1998
- 1998-12-31 US US09/224,482 patent/US6366926B1/en not_active Expired - Lifetime
-
1999
- 1999-12-29 AU AU23947/00A patent/AU775791B2/en not_active Ceased
- 1999-12-29 CN CNB99815251XA patent/CN1149474C/zh not_active Expired - Fee Related
- 1999-12-29 IL IL14382999A patent/IL143829A0/xx active IP Right Grant
- 1999-12-29 WO PCT/US1999/031113 patent/WO2000039673A1/en not_active Application Discontinuation
- 1999-12-29 CA CA002358162A patent/CA2358162A1/en not_active Abandoned
- 1999-12-29 BR BR9916696-8A patent/BR9916696A/pt not_active IP Right Cessation
- 1999-12-29 JP JP2000591503A patent/JP2002542525A/ja active Pending
- 1999-12-29 KR KR1020017008374A patent/KR20010103731A/ko not_active Application Discontinuation
- 1999-12-29 EP EP99967710A patent/EP1210660A4/en not_active Ceased
-
2001
- 2001-06-14 ZA ZA200104882A patent/ZA200104882B/en unknown
- 2001-06-18 IL IL143829A patent/IL143829A/en not_active IP Right Cessation
-
2002
- 2002-11-25 HK HK02108521.9A patent/HK1048528A1/zh unknown
-
2006
- 2006-11-02 IL IL179019A patent/IL179019A0/en unknown
Also Published As
Publication number | Publication date |
---|---|
EP1210660A1 (en) | 2002-06-05 |
IL179019A0 (en) | 2007-03-08 |
JP2002542525A (ja) | 2002-12-10 |
WO2000039673A1 (en) | 2000-07-06 |
BR9916696A (pt) | 2001-10-16 |
AU775791B2 (en) | 2004-08-12 |
AU2394700A (en) | 2000-07-31 |
CN1149474C (zh) | 2004-05-12 |
CA2358162A1 (en) | 2000-07-06 |
IL143829A0 (en) | 2002-04-21 |
CN1346464A (zh) | 2002-04-24 |
ZA200104882B (en) | 2002-07-03 |
EP1210660A4 (en) | 2004-04-07 |
HK1048528A1 (zh) | 2003-04-04 |
US6366926B1 (en) | 2002-04-02 |
IL143829A (en) | 2007-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20010103731A (ko) | 이벤트의 동적인 필터링 및 라우팅을 위한 방법 및 장치 | |
KR100512231B1 (ko) | 사건의 동적 상관 시스템 및 방법 | |
US11500875B2 (en) | Multi-partitioning for combination operations | |
US11151137B2 (en) | Multi-partition operation in combination operations | |
US6895586B1 (en) | Enterprise management system and method which includes a common enterprise-wide namespace and prototype-based hierarchical inheritance | |
US11809397B1 (en) | Managing slot requests for query execution in hybrid cloud deployments | |
US11630695B1 (en) | Dynamic reassignment in a search and indexing system | |
US11681707B1 (en) | Analytics query response transmission | |
US11693710B1 (en) | Workload pool hierarchy for a search and indexing system | |
AU775155B2 (en) | Method and apparatus for a user extensible event structure | |
US6748454B1 (en) | Method and apparatus for a user extensible event structure |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |