KR100308678B1 - 분산데이터처리시스템관리방법및장치 - Google Patents

분산데이터처리시스템관리방법및장치 Download PDF

Info

Publication number
KR100308678B1
KR100308678B1 KR1019980026491A KR19980026491A KR100308678B1 KR 100308678 B1 KR100308678 B1 KR 100308678B1 KR 1019980026491 A KR1019980026491 A KR 1019980026491A KR 19980026491 A KR19980026491 A KR 19980026491A KR 100308678 B1 KR100308678 B1 KR 100308678B1
Authority
KR
South Korea
Prior art keywords
server
application
database
application server
generating
Prior art date
Application number
KR1019980026491A
Other languages
English (en)
Other versions
KR19990013520A (ko
Inventor
그렘 싱클레어 길리스
제프리 존 고든
사다르 자파리-랜그루디
케빈 존 서튼
Original Assignee
포만 제프리 엘
인터내셔널 비지네스 머신즈 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 포만 제프리 엘, 인터내셔널 비지네스 머신즈 코포레이션 filed Critical 포만 제프리 엘
Publication of KR19990013520A publication Critical patent/KR19990013520A/ko
Application granted granted Critical
Publication of KR100308678B1 publication Critical patent/KR100308678B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0781Error filtering or prioritizing based on a policy defined by the user or on a policy defined by a hardware/software module, e.g. according to a severity level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0213Standardised network management protocols, e.g. simple network management protocol [SNMP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0681Configuration of triggering conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/069Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/028Capturing of monitoring data by filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • H04L43/045Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/12Network monitoring probes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/005Network, LAN, Remote Access, Distributed System

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명은 네트워크를 통해 상호 접속된 복수의 애플리케이션 서버 컴퓨터 시스템을 구비한 분산 데이터 처리 시스템을 관리하기 위한 장치에 관한 것으로서, 여기서, 각각의 애플리케이션 서버는 데이터베이스를 포함하는 데이터베이스 애플리케이션을 구비하고 있으며, 데이터베이스로부터 네트워크를 통해 복수의 클라이언트 컴퓨터 시스템 및 다른 애플리케이션 서버로 데이터를 통신하고, 상기 데이터 통신의 어커런스(occurrences)를 기록하는 로그 파일을 생성한다. 이 장치는 네트워크를 통해 애플리케이션 서버로부터 수신되는 로그 파일을 메모리에 저장하고, 저장된 로그 파일에서의 경보 상태 검출시 제1 이벤트 메시지를 발생하고, 하나 이상의 애플리케이션 서버 내의 데이터베이스 애플리케이션에 의한 데이터베이스 복제가 없다는 것을 검출하는 경우에 제2 이벤트 메시지를 발생하고, 하나 이상의 애플리케이션 서버 내의 데이터베이스 애플리케이션에서 고장 상태의 검출시 제3 이벤트 메시지를 발생하고, 애플리케이션 서버 사이의 하나 이상의 접속에서의 고장 상태 검출시 제4 이벤트 메시지를 발생한다.

Description

분산 데이터 처리 시스템 관리 방법 및 장치{METHOD AND APPARATUS FOR MANAGING A DISTRIBUTED DATA PROCESSING SYSTEM}
본 발명은 분산 데이터 처리 시스템을 관리하기 위한 방법 및 장치에 관한 것이다.
종래의 일부 데이터 처리 환경은 중앙 호스트 데이터 처리 시스템에 접속된 다수의 이용자 단말기를 포함한다. 이와 같은 데이터 처리 환경은 통상적으로 센트랄 또는 호스트 환경으로 불린다.
이용자 단말기가 복수의 서버 데이터 처리 시스템에 접속되는 분산 데이터 처리 환경이 대중적 인기를 얻고 있다.
전술한 2가지 모두의 예에서, 시스템 관리 비용은 이용자에 대한 관리자(administrators)(또는 운영 지원 스태프)의 비율에 의해 측정된다. 통상적인 분산 환경에서, 예컨대, 로터스 노트 서비스(Lotus Notes service) 또는 이와 유사한 분산 클라이언트-서버 데이터베이스 애플리케이션을 제공하는 환경은 그 비율이 비교적 높다. 예를 들어, 한 로터스 노트(Lotus 및 Lotus Notes는 Lotus Development Corporation의 상표임) 관리자는 완전한 기능의 로터스 노트 서비스로 200 이상의 이용자를 관리하기가 곤란할 수도 있다. 비교에 의하면, 오피스비전(OfficeVision은 IBM사의 상표임)과 같은 통상적인 호스트 환경에서는 단일 관리자가 수천명의 이용자를 충분하게 관리할 수도 있다.
분산 데이터베이스 관리 시스템이 사용된 통상적인 분산 환경에서, 한 그룹의 관리자가 그룹웨어(Groupware) 또는 E-메일 서버와 같은 서버들의 관리와 관련된 연산 작업을 수집하여 수행한다. E-메일과 그룹웨어 애플리케이션은 모두 통상적으로 보통의 일상적인 연산 동안에 수 메가바이트의 정보를 생성한다. 정보는 통상적으로 로그(log) 포맷으로 저장된다. 이 로그는 에러 상태를 식별하고, 이에 따라 애플리케이션 서버 고장을 제거하거나 또는 적어도 감소시킬 목적으로 처리되는 것이 바람직하다. 그러나, 이와 같은 로그의 처리는 어려운 수작업을 요구하고 있다. 그러므로, 분산 환경에서 서버 관리의 자동화를 개선하는 것이 바람직하다.
본 발명에 따르면, 네트워크를 통해 상호 접속된 복수의 애플리케이션 서버 컴퓨터 시스템 - 여기서, 각각의 애플리케이션 서버는, 데이터베이스를 포함하는 데이터베이스 애플리케이션, 상기 데이터베이스로부터 네트워크를 통해 복수의 클라이언트 컴퓨터 시스템 및 다른 애플리케이션 서버로 데이터를 통신하기 위한 수단, 및 상기 데이터 통신의 어커런스(occurrences)를 기록하는 로그 파일을 생성하기 위한 수단을 구비함 - 을 포함하는 분산 데이터 처리 시스템을 관리하기 위한 장치가 제공되며, 이 장치는, 기억 수단; 네트워크를 통해 상기 애플리케이션 서버로부터 수신되는 로그 파일을 상기 기억 수단에 저장하고, 상기 저장된 로그 파일에서의 경보 상태 검출시 제1 이벤트 메시지를 발생하기 위한 모니터 수단; 하나 이상의 애플리케이션 서버 내의 데이터베이스 애플리케이션에 의한 데이터베이스 복제가 없다는 것을 검출하는 경우에 제2 이벤트 메시지를 발생하기 위한 복제 트래킹 수단; 하나 이상의 애플리케이션 서버 내의 데이터베이스 애플리케이션에서 고장 상태의 검출시 제3 이벤트 메시지를 발생하기 위한 서버 프로브 수단; 및 상기 애플리케이션 서버 사이의 하나 이상의 접속에서의 고장 상태 검출시 제4 이벤트 메시지를 발생하기 위한 메일 프로브 수단을 포함한다.
이 장치는 바람직하게는, 상기 제1, 제2, 제3 및 제4 이벤트 메시지를 디스플레이하기 위한 수단을 구비한 관리 단말기를 포함한다. 본 발명의 양호한 실시예에서, 상기 모니터 수단은 상기 이벤트 메시지들을 상기 관리 단말기로 선택적으로 통신하기 위한 필터를 포함한다. 상기 복제 트래킹 수단은 바람직하게는, 각각의 애플리케이션 서버의 데이터베이스를 샘플링하기 위한 샘플링 수단; 대응하는 샘플이 서로 부합(match)하는지 판단하기 위한 제1 비교 수단; 및 상기 제1 비교 수단에 의해 식별된 부합의 수가 소정의 수용 임계치 이하인 경우에 상기 제2 이벤트 메시지를 발생하기 위한 제2 비교 수단을 포함한다. 상기 서버 프로브 수단은 바람직하게는, 상기 고장 상태를 해결하도록 순차 시도하기 위한 재개시 수단과, 상기 고장 상태를 해결하기 위한 상기 재개시 수단에 의한 사전결정된 다수의 시도 실패 이후에 상기 제3 이벤트 메시지를 발생하기 위한 수단을 포함한다. 상기 메일 프로브 수단은 바람직하게는, 상기 애플리케이션 서버 중 다른 서버를 통해 상기 애플리케이션 서버 중 리플렉트하는 서버로 테스트 메시지를 전송하기 위한 수단; 상기 애플리케이션 서버 중 리플렉트하는 서버로부터 상기 애플리케이션 서버 중 다른 서버를 통해 테스트 메시지를 수신하기 위한 수단; 및 테스트 메시지가 상기 애플리케이션 서버 중 리플렉트하는 서버를 통해 통과하는데 걸리는 시간 및 상기 애플리케이션 서버 중 리플렉트하는 서버로 또한 그 서버로부터 도중에 각각의 애플리케이션 서버를 통해 통과하는데 걸리는 시간을 기록하기 위한 수단을 포함한다.
본 발명은, 네트워크를 통해 상호 접속된 복수의 애플리케이션 서버 컴퓨터 시스템 - 여기서, 각각의 애플리케이션 서버는, 데이터베이스를 포함하는 데이터베이스 애플리케이션, 상기 데이터베이스로부터 네트워크를 통해 복수의 클라이언트 컴퓨터 시스템 및 다른 애플리케이션 서버로 데이터를 통신하기 위한 수단, 및 상기 데이터 통신의 어커런스(occurrences)를 기록하는 로그 파일을 생성하기 위한 수단을 구비함 - 과, 전술한 바와 같은 장치를 포함하는 분산 데이터 처리 시스템까지 확장된다는 것을 이해할 것이다.
본 발명을 다른 관점에서 보면, 네트워크를 통해 상호 접속된 복수의 애플리케이션 서버 컴퓨터 시스템 - 여기서, 각각의 애플리케이션 서버는, 데이터베이스를 포함하는 데이터베이스 애플리케이션, 상기 데이터베이스로부터 네트워크를 통해 복수의 클라이언트 컴퓨터 시스템 및 다른 애플리케이션 서버로 데이터를 통신하기 위한 수단, 및 상기 데이터 통신의 어커런스(occurrences)를 기록하는 로그 파일을 생성하기 위한 수단을 구비함 - 을 포함하는 분산 데이터 처리 시스템을 관리하기 위한 방법이 제공되며, 이 방법은, 네트워크를 통해 상기 애플리케이션 서버로부터 수신되는 로그 파일을 관리 서버 컴퓨터 시스템의 기억 수단에 저장하는 단계; 상기 저장된 로그 파일에서의 경보 상태 검출시 제1 이벤트 메시지를 상기 관리 서버에 의해 발생하는 단계; 하나 이상의 애플리케이션 서버 내의 데이터베이스 애플리케이션에 의한 데이터베이스 복제가 없다는 것을 검출하는 경우에 제2 이벤트 메시지를 상기 관리 서버에 의해 발생하는 단계; 하나 이상의 애플리케이션 서버 내의 데이터베이스 애플리케이션에서 고장 상태의 검출시 제3 이벤트 메시지를 상기 관리 서버에 의해 발생하는 단계; 및 상기 애플리케이션 서버 사이의 하나 이상의 접속에서의 고장 상태 검출시 제4 이벤트 메시지를 상기 관리 서버에 의해 발생하는 단계를 포함한다.
도 1은 분산 데이터 처리 시스템의 블록도.
도 2는 도 1의 데이터 처리 시스템의 상세 블록도.
도 3은 도 2에 도시된 시스템의 DSM 서버의 블록도.
도 4는 도 2에 도시된 시스템의 애플리케이션 서버의 블록도.
도 5는 DSM 서버에 대한 고레벨 아키텍처의 블록도.
도 6은 도 2에 도시된 시스템의 애플리케이션 서버에 저장된 소프트웨어의 블록도.
도 7은 DSM 서버의 기능 블록도.
도 8은 DSM 서버의 서버 프로브 기능의 흐름도 형태의 블록도.
도 9는 DSM 서버의 메일 프로브 기능의 흐름도 형태의 블록도.
도 10은 본 발명을 구현하는 다른 분산 데이터 처리 환경의 블록도.
<도면의 주요 부분에 대한 부호의 설명>
10:DSM 서버
20:관리 단말기
40-70:애플리케이션 서버
90-93:클라이언트 이용자 단말기
이제, 첨부 도면을 참조하여 본 발명의 양호한 실시예에 대해 설명하게 된다.
먼저, 도 1을 참조하면, 본 발명을 구현하는 분산 데이터 처리 시스템은 다수의 애플리케이션 서버 컴퓨터 시스템(40-70)과 분산 시스템 모니터(Distributed System Monitor:DSM) 서버 컴퓨터 시스템(10)을 포함하며, 이들은 모두 네트워크(5)를 통해 상호 접속된다.
이제, 도 2를 참조하면, 각각의 애플리케이션 서버(40-70)는 일련의 클라이언트 이용자 단말기(90-93)에 서비스를 제공한다. DSM 서버(10)는 또한, 관리 단말기(administration terminal)(20)에도 접속된다.
도 3을 참조하면, DSM 서버(10)는, 시스템 랜덤 억세스 메모리(RAM)(200), 시스템 판독 전용 메모리(ROM)(210), 중앙 처리 장치(CPU)(220), 하나 이상의 대용량 자기 디스크 또는 그와 유사한 데이터 기록 매체를 포함하는 대용량 기억장치(230), 플로피 디스크 드라이브나 CD ROM 드라이브 등과 같은 하나 이상의 분리가능한 기억 수단(240), 네트워크 어댑터(250), 키보드 어댑터(260), 포인팅장치 어댑터(270), 및 디스플레이 어댑터(280)를 포함하고 있으며, 이들은 모두 버스 아키텍처(290)를 통해 상호 접속된다. CPU(220)는 펜티엄 100MHz 중앙 처리기이다(Pentium은 Intel사의 상표임). 본 발명의 다른 실시예는 CPU(220)의 기능을 수행하기 위해 펜티엄 100MHz CPU의 등가물을 사용할 수도 있다. RAM(200)은 그 용량이 적어도 48 메가바이트이다. 키보드(300)는 키보드 어댑터(260)를 통해 버스 아키텍처(290)에 접속된다. 이와 유사하게, 마우스, 터치 스크린, 태블릿, 트랙커 볼(tracker ball) 등과 같은 포인팅 장치(310)는 포인팅 장치 어댑터(270)를 통해 버스 아키텍처(290)에 접속된다. 이와 동일하게, 음극선관(CRT) 디스플레이, 액정 디스플레이(LCD) 패널 등과 같은 디스플레이 출력 장치(320)는 디스플레이 어댑터(280)를 통해 버스 아키텍처(290)에 접속된다. 또한, DSM 서버(10)는 네트워크 어댑터(250)를 통해 단말기(20)와 서버(40-70)에 접속된다.
버스 아키텍처(290)를 통해, CPU(220), 대용량 기억장치(230), RAM(200), ROM(210), 분리가능한 기억장치(240) 및 어댑터(250-280) 사이에서 데이터 통신을 가능하게 하기 위해, 기본 입출력 시스템(BIOS) 소프트웨어가 ROM(210)에 저장된다. 대용량 기억장치(230)에는, DSM 소프트웨어를 포함하는 애플리케이션 소프트웨어와 운영체제 소프트웨어가 저장된다. 분리가능한 기억장치(240) 또는 네트워크 어댑터(280)를 통해, 다른 애플리케이션 소프트웨어가 DSM 서버(10)에 로딩될 수도 있다. 운영체제 소프트웨어는 DSM 서버(10)로 하여금 애플리케이션 소프트웨어를 선택하고 실행시킬 수 있도록 한다. DSM 서버(10)에 저장된 애플리케이션 소프트웨어는 로터스 노트 릴리스 4를 포함한다. 로터스 노트 4는 문서-본위 데이터베이스관리 시스템이다. 로터스 노트 4의 세부사항은 Sybex. Inc.에 의해 1996년에 발간된, 브라운, 브라운, 코트?? 및 브라운의Matering Lotus Notes 4에서 찾아 볼 수 있다. 바로 후술되는 바와 같이, 동작중에, DSM 서버(10)는 애플리케이션 서버(40-70)와 통신하기 위해 로터스 노트 4를 사용한다.
본 발명의 일부 실시예에서, 단말기(20)는 DSM 서버(10)의 구성요소가 될 수 있으며, 단말기(20)의 모니터링 및 제어 기능이 DSM 서버(10)의 디스플레이(320) 및 입력장치(300,310)를 통해 용이하게 이루어진다.
도 4를 참조하면, 각각의 애플리케이션 서버(40-70)는, 시스템 랜덤 억세스 메모리(RAM)(700), 시스템 판독 전용 메모리(ROM)(710), 중앙 처리 장치(CPU)(720), 하나 이상의 대용량 자기 디스크 또는 그와 유사한 데이터 기록 매체를 포함하는 대용량 기억장치(730), 플로피 디스크 드라이브나 CD ROM 드라이브 등과 같은 하나 이상의 분리가능한 기억 수단(740), 네트워크 어댑터(750), 키보드 어댑터(760), 포인팅 장치 어댑터(770), 및 디스플레이 어댑터(780)를 포함하고 있으며, 이들은 모두 버스 아키텍처(790)를 통해 상호 접속된다. CPU(720)는 펜티엄 100MHz CPU, 또는 그 등가물이 될 수 있다. 키보드(800)는 키보드 어댑터(760)를 통해 버스 아키텍처(790)에 접속된다. 이와 유사하게, 마우스, 터치 스크린, 태블릿, 트랙커 볼(tracker ball) 등과 같은 포인팅 장치(810)는 포인팅 장치 어댑터(770)를 통해 버스 아키텍처(790)에 접속된다. 이와 동일하게, 음극선관(CRT) 디스플레이, 액정 디스플레이(LCD) 패널 등과 같은 디스플레이 출력 장치(820)는 디스플레이 어댑터(780)를 통해 버스 아키텍처(790)에 접속된다. 또한, 각각의 애플리케이션 서버(40-70)는 네트워크 어댑터(750)를 통해, DSM 서버(10)와 원격 클라이언트 단말기(90)에 접속된다.
버스 아키텍처(790)를 통해, CPU(720), 대용량 기억장치(730), RAM(700), ROM(710), 분리가능한 기억장치(740) 및 어댑터(750-780) 사이에서 데이터 통신을 가능하게 하기 위해, 기본 입출력 시스템(BIOS) 소프트웨어가 ROM(710)에 저장된다. 대용량 기억장치(730)에는, 애플리케이션 소프트웨어와 운영체제 소프트웨어가 저장된다. 애플리케이션 소프트웨어는 로터스 노트4 및 로터스 cc:Mail과 같은 분산 클라이언트 서버 데이터베이스 애플리케이션을 포함한다. 동작중에, 각각의 애플리케이션 서버(40-70)는 원격 클라이언트 단말기(90-93) 및 DSM 서버(10) 양자와 통신하기 위해 상주 클라이언트-서버 데이터베이스 애플리케이션을 이용한다. 또한, 분리가능한 기억장치(740) 또는 네트워크 어댑터(780)를 통해, 다른 애플리케이션 소프트웨어가 각각의 애플리케이션 서버(40-70)에 로딩될 수도 있다. 동작중에, 운영체제 소프트웨어는 각각의 애플리케이션 서버(40-70)로 하여금 애플리케이션 소프트웨어를 선택하고 실행시킬 수 있도록 한다.
다시 도 2를 참조하면, 애플리케이션 서버(40)는 접속된 클라이언트 단말기(90)의 이용자에게 cc:Mail 서비스를 제공하기 위해, IBM사에 의해 제조된 OS/2 운영체제 플랫폼(OS/2는 IBM사의 상표임) 상에서 로터스 cc:Mail을 실행하는 cc:Mail 서버이다. 애플리케이션 서버(50)는 접속된 클라이언트 단말기(91)의 이용자에게 노트 서비스를 제공하기 위해, 마이크로소프트사에 의해 제조된 윈도우 서버 NT 운영체제(Windows 및 Windows NT는 마이크로소프트사의 상표임) 상에서 로터스 노트 4를 실행하는 노트 서버이다. 애플리케이션 서버(60)는 접속된 클라이언트 단말기(92)의 이용자에게 노트 서비스를 제공하기 위해, OS/2 운영체제 상에서 로터스 노트 4를 실행하는 노트 서버이다. 애플리케이션 서버(70)는 접속된 클라이언트 단말기(93)의 이용자에게 노트 서비스를 제공하기 위해, UNIX 또는 AIX 운영 체제(UNIX는 X/Open 캄퍼니 리미티드를 통해 전용실시권을 부여받은 것이며, AIX는 IBM사의 상표임) 상에서 로터스 노트 4를 실행하는 노트 서버이다. 본 발명의 다른 실시예에서는, 하나 이상의 전술한 또는 다른 운영체제 플랫폼 상에서 운영되는 4개 보다 적거나 많은 애플리케이션 서버가 존재할 수도 있다는 것을 이해할 것이다.
DSM 서버:일반 원리
도 2로부터, DSM 서버는 애플리케이션 서버(40-70)와 관리 단말기(20) 사이에 시스템 계층 구조로 위치한다는 것을 이해할 수 있다. 동작중에, DSM 서버는 중간-레벨 시스템 관리자로서 동작한다. 동작중에, 애플리케이션 서버(40-70)는 접속된 클라이언트 단말기(90-93)로 오고 가는 메시지 및 E-메일과 같이, 로그 파일에 관련된 데이터 전송(transfers)을 기록한다. 애플리케이션 서버(40-70)에 의해 유지되는 로그 파일은 DSM 서버(10)로 향한다. DSM 서버(10)는 관리 단말기(20)로 전송되는 리포팅 정보의 양을 감소시키기 위해 수신된 로그 파일을 처리한다. 애플리케이션 서버(40-70)가 이와 같은 로그 파일을 DSM 서버(10)로 루팅할 수 있고, 또한, 노트 서버(50-70)가 노트 통신 프로토콜을 사용하는 경우에는 운영체제 플랫폼은 관계되지 않는다.
이제, 도 5를 참조하면, DSM 서버(10)의 고레벨 아키텍처는 프로세스(Process), 액션(Action), 통지(Notify) 및 리포트(Report) 기능을 수행하기 위한 제1 계층(11)를 포함한다. 제1 계층(11) 아래에는, 로그(Log), 분석(Analyze) 및 필터링(Filter) 기능을 수행하기 위한 제2 기능 계층(12)이 있다. 제2 계층(12) 아래에는 로터스 노트 계층(13)이 있다. 동작중에, 노트 계층(13)은 DSM 서버(10)로 하여금 애플리케이션 서버(50-70)와 통신할 수 있도록 한다. 이와 같은 통신을 용이하게 하기 위해, 노트 계층(13)는 노트 메일 메시지 전송 에이전트(Notes mail message transfer agent)(MTA)(14), cc:Mail MTA(15), 심플 메시지 전송 프로토콜(SMTP) 메일 MTA(16), 및 X.400 메일 MTA(도시 안됨)을 포함한다. 메시지 전송 에이전트는 노트와 관계가 없는 메일 시스템과 통신하기 위해 특수한 메일 게이트웨이를 포함할 필요성을 없앤다. 노트 계층(13) 아래에는, DSM 서버(10)를 애플리케이션 서버(40-70)와 인터페이스하기 위한 네트워크 계층(17)이 있다. 대용량 기억장치(230)는 노트 데이터 기억장치(21), cc:Mail 기억장치(22) 및 아카이브(Archive) 데이터 기억장치(23)를 포함한다. STATREP 및 LOG.NSF 파일(110) 또는 다른 메일 시스템 로그 파일(100)과 같은 애플리케이션 서버(40-70)로부터의 데이터는 네트워크 계층(17)에서 DSM 서버(10)에 수신되며, 노트 계층(13)의 MTA(14-16)를 통해 제2 계층(12)으로 전달되어, 로그, 분석 및 필터링 기능에 의해 처리된다. 로그 기능은 인입 데이터를 대용량 기억장치(230)에 기록한다. 필터링된 데이터는 제2 계층(12)으로부터 제1 계층(11)로 전달되어, 프로세스, 액션, 통지 및 리포트 기능에 의해 처리된다. 액션 기능은 수신된 데이터에 응답하여, 애플리케이션 서버(40-70)로 반송되는 교정(corrective) 명령(81)을 발생할 수도 있다. 시스템 구성에 따라, 제2 계층(12)으로부터 제1 계층(11)까지의 데이터 전달에 하나 이상의 기능과 관련하여 지연이 부과될 수도 있다. 예를 들어, 본 발명의 일부 실시예에서, 리포트 기능은 리포트가 만기가 될 때까지 대용량 기억장치(230)에 로깅되어 남아 있는 데이터에 대해 일주일에 한 번만 활성화하도록 설정될 수 있다. 각각의 애플리케이션 서버(40-70)의 고레벨 아키텍처는 경우에 따라 OS/2, NT 또는 AIX 운영체제 플랫폼 상에서 노트 또는 cc:Mail 기능성을 제공하는 메일 계층(41)를 포함한다. 메일 계층(41) 아래에는, DSM 서버(10)로 로그 파일을 제공하기 위한 로그 계층(42)이 있다. 이 로그 계층(42) 아래에는, DSM 서버(10)의 네트워크 계층(17)과의 인터페이스를 위한 네트워크 계층(43)이 있다.
로터스 수집 에이전트(Lotus Collection Agent)
도 6을 참조하면, 각각의 노트 애플리케이션 서버(50-70)는 AIX, OS/2, 또는 NT 운영체제와 같은 운영체제(900) 상에서 노트(910)를 실행시킨다. 각각의 노트 애플리케이션 서버(50-70)에서, 노트(910)는 NOTE.INI 파일(911) 및 다수의 노트 태스크(913-916)를 포함한다. 태스크(913-916)는 루터(Router) 태스크(913), 리플리케이터(Replicator) 태스크(914), 및 리포터(Reporter) 태스크(915)를 포함한다. 또한, 각각의 노트 애플리케이션 서버(50-70)는 노트 수집 에이전트(912)를 포함한다. 노트 수집 에이전트(912)는 노트(910) 내의 태스크로서 동작한다. NOTES.INI파일은 호스트 노트 애플리케이션 서버(50-70)가 부팅될 때 노트(910)에서 개시될 태스크를 정의한다. 노트 수집 에이전트(912)는 NOTES.INI 파일 내에 명시된다. 그러므로, 노트 수집 에이전트(912)는 호스트 애플리케이션 서버(50-70)가 연산중일 때마다 활성 상태로 된다. 활성 상태로 되면, 노트 수집 에이전트(912)는 DSM 서버(10)가 노트 프로토콜을 이용하여 노트 애플리케이션 서버(50-70)와 통신할 수 있도록 한다. 노트 애플리케이션 서버(50-70)는 그 각각의 연산 통계(operational statistics)를 LOG.NSF로 불리는 데이터베이스 파일로 전송한다. 정의가능한 간격으로, 노트 수집 에이전트(912)는 LOG.NSF로부터의 정보를 중간 데이터베이스로 카피하고, 이 데이터베이스로부터의 정보는 포맷되어, 도 5에서 110으로 도시된 바와 같이, 노트 계층(41)을 통해 DSM 서버(10)로 우송된다. 각각의 노트 애플리케이션 서버(50-70)로부터 수집된 정보는 4개의 카테고리, 즉, 로그 데이터, 서버 태스크, E-메일 루팅, 복제 중 하나의 카테고리에 속한다. 각각의 카테고리에 대해, 이용자는 다음의 옵션 중 하나를 선택할 수 있다.
(1) 그 카테고리 내의 모든 문서를 수집하고 처리한다(디폴트);
(2) 현재에는 이러한 형태의 모든 문서를 수집하지만, 그것을 나중에 처리한다.
(3) 이 카테고리의 모든 문서를 폐기(discard)한다.
이용자는 어느 때라도 문서 카테고리에 대한 액션을 변경할 수 있다. 노트 수집 에이전트(912)는 LOG.NSF 파일의 마지막 성공적인 폴(poll)을 기록하기 위해 시간 및 날짜 스탬프를 유지한다. 이 스탬프는 NOTES.INI 파일(911)에 기록된다.만일 태스크(913-916) 중 하나가 타임 스탬프 없이 또는 무효 타임 스탬프에 의해 개시되면, 노트 수집 에이전트(912)는 데이터를 처리하기 전에 타임 스탬프를 생성하게 된다. 노트 수집 에이전트(912)에 의해 사용되는 파라미터는 각각의 노트 서버(50-70)를 통해 관찰되고 구성될 수 있다. 통계도 역시 STATREP 데이터베이스에 기록되며, 도 5에 메일 흐름(11)으로 도시된 바와 같이, 처리를 위해 DSM 서버(10)로 루팅된다.
cc:Mail 수집 에이전트
애플리케이션 서버(40)는 cc:Mail 포스트 오피스 루터로서 작용한다. DSM 서버(10)는 애플리케이션 서버(40)에게 cc:Mail MTA(16)를 통해 동등한 포스트 오피스처럼 보인다. 애플리케이션 서버(40)는 또한 cc:Mail 수집 에이전트를 포함한다. cc:Mail 수집 에이전트와 cc:Mail MTA(16)는 협력하여, cc:Mail 로그 파일이 애플리케이션 서버(40)에 의해 DSM 서버(10)로 우송될 수 있도록 한다. cc:Mail 수집 에이전트는 전술한 노트 수집 에이전트(912)와 그 기능이 유사하다. 동작중에, cc:Mail MTA(16) 와 cc:Mail 수집 에이전트는 애플리케이션 서버(4)로부터 cc:Mail 루터 로그 데이터를 수집하고, 그러한 로그 데이터를 정상적인 루터 기능의 고장 없이 DSM 서버(10)로 루팅하는데 있어 협동한다. 이러한 프로세스는 cc:Mail 호출 리스트 엔트리로서 동작하며, 이 엔트리를 통해 cc:Mail 로그가 수집되어 소정의 간격으로 DSM 서버(10)로 제공된다. 이로 인해, DSM 서버(10)는 애플리케이션 서버(40)에 의해 제공되는 cc:Mail 메시지 루터 서비스로부터 오프-라인으로 이들로그 파일을 처리할 수 있게 된다.
DSM 서버 기능
이제 도 7을 참조하면, 동작중에, DSM 서버(10)는 애플리케이션 서버(40-70)의 액티비티를 관리하기 위한 중간-레벨 시스템 관리자로서 작용한다. 이와 같은 관리를 용이하게 하기 위해, DSM 아키텍처의 제1 계층(11)는 다음의 프로세스 기능을 포함한다.
(a) 모니터 기능(540);
(b) 서버 프로브 기능(550);
(c) E-메일 프로브 기능(560);
(d) 데이터베이스 복제 트래킹 기능(570);
기능(540-570)은 DSM 서버(10)의 대용량 기억장치(230)에서 유지되는 대응하는 소프트웨어에 의해 구성될 때 CPU(220)에 의해 수행된다. 본 발명의 다른 실시예에서는, 이와 유사한 기능이 하드웨어 또는 하드웨어와 소프트웨어의 조합에 의해 제공될 수도 있다는 것을 이해할 것이다.
다시 도 2를 참조하면, 애플리케이션 서버(40-70)에 의해 유지되는 로그 파일은 통신 경로(80)에 의해 일반적으로 도시된 바와 같이 DSM 서버(10)로 향한다. 이 로그 파일은 DSM 서버(10)에 의해 대용량 기억장치(230)에 저장된다. 각각의 애플리케이션 서버(40-70)에 대응하는 로그 파일은 대용량 기억장치(230)의 분리된 디스크에 저장된다.
도 7을 참조하면, 로그 파일을 수신하면, DSM 서버(10)의 모니터 기능(540)은 각각의 로그에 포함된 메시지를 필터링한다. 필터링된 메시지는 도 2에 도면부호 90에 의해 일반적으로 도시된 바와 같이 관리자에게 디스플레이하기 위해 DSM 서버(10)로부터 단말기(20)로 전송된다. 서버 프로브 기능(550)과 메일 프로브 기능(560)은 자동적으로 애플리케이션 서버(40-70) 중 선택된 서버를 조정한다.
DSM 서버(10) 내에 기능(540-570)을 통합하는 것은 DSM 서버(10)로 하여금, 애플리케이션 서버(40-70)에 의해 발생되는 로그 파일을 분석하고, 애플리케이션 서버(40-70) 내의 연산 문제를 식별하고, 그 환경 내의 메시지 루팅 문제를 식별하고, 애플리케이션 서버(40-70)의 로그 파일을 저장할 수 있도록 한다.
각각의 기능(540-570)은 다수의 입력 테이블(500-530) 중 하나 이상의 테이블과 연관되어 있다. 특히, 입력 테이블(500)은 서버 프로브 기능(550) 및 E-메일 프로브 기능(560)과 연관되어 있고, 입력 테이블(510)은 모니터 기능(540)과 연관되어 있으며, 입력 테이블(520)은 서버 프로브 기능(550)과 연관되고, 입력 테이블(530)은 데이터베이스 복제 트래킹 기능(570)과 연관되어 있다. 기능(540-570)의 출력은 대용량 기억장치(230)에 저장된 데이터베이스(580) 및 관리 단말기(20)로 제공된다. 데이터베이스 복제 트래킹 기능(570)은 또한, 대용량 기억장치(230)에 저장된 데이터베이스(610,600,590)를 모니터한다. 입력 테이블(500-540)은 시스템 관리 스태프에 의해 명시된 파라미터 및 임계치를 포함한다. 이들 파라미터와 임계치는 최종 이용자와 일치된 서비스의 경계 또는 레벨과 관련되어 있다. 예를 들어, 만일 메일이 서비스 레벨 일치하에 3분 이내에 배달될 것으로 기대되면, 이 레벨은 e메일 프로브 기능(570)에 대한 입력에 대해 프로브 입력 테이블(500)에서 임계치로서 설정되게 된다. 만일 메일 배달이 이 시간을 초과하면, E-메일 프로브는 경보(alert)를 발생한다. 다음에, 이러한 사건의 리포트는 대용량 기억장치(230)에 저장된 출력 리포트 데이터베이스에 기록된다.
모니터 기능
통상적으로, 애플리케이션 서버로부터의 로그 파일은 실제적인 환경에서는 좀처럼 완전하게 검사되거나 실행되지 않는데, 그 이유는 전술한 바와 같이, 이와 같은 액티비티가 수동적으로 수행되는 경우에 시간을 소비하기 때문이다. 다시 도 1을 참조하면, 전술한 바와 같이, 모든 서버 로그 파일은 애프리케이션 서버(40-70)로부터 DSM 서버(10)로 루팅된다. DSM 서버(10)는 대용량 기억장치(230)에 저장된 지식 베이스(knowledge base)를 포함한다. 지식 베이스는 DSM 서버(10)의 모니터 기능(540)이 애플리케이션 서버(40-70)로부터 수신되는 로그 파일의 내용을 분석하고, 각각의 경우에 어떤 액션이 적절한지 결정할 수 있도록 한다. 분석은 DSM 서버(10)가 관리자를 대신하여 모니터 기능(540)에 의해 분석된 정보에 따라 작용하고, 애플리케이션 서버(40-70)로부터 관리 단말기(20)로의 메시지를 필터링하여 의존하도록 하는 연속적으로 진행하는 액티비티이다. 모니터 기능(540)은 관리 단말기(20)로의 전송을 위해 로그 파일로부터 선택된 항목(items)만을 필터링하도록 구성될 수 있다. 이러한 특징은 단순한 정보가 관리 단말기(20)에 도달하는 것을 방지하고, 따라서, 관리 스태프가 보다 빠르게 임계적인 메시지에 반응할 수 있도록 하기 위해 사용될 수 있다.
애플리케이션 서버(40-70)로부터의 로그 파일에 포함된 에러 메시지(예, 통신, 루터, 보안, 자원, 및 서버 환경 에러 메시지)는 노트 메일, 심플 네트워크 관리 프로토콜(SNMP) 트랩 프로토콜 데이터 유닛(PDU) 및 노트 데이터베이스로의 로깅을 통해 DSM 서버(10)에 의해 포착되어 리포트된다. 애플리케이션 서버(40-70)의 제어는 전술한 경보가 처리될 때 DSM 서버(10)와의 소정의 이용자 출구(exits)로 전달될 수 있다.
각각의 애플리케이션 서버(40-70)는 DSM 서버(10)의 대용량 기억장치(230) 내의 상이한 전용 디스크에 대응한다. 전용 디스크는 대응하는 서버(40-70)에 관련된 모든 정보를 기록하기 위해 사용된다. 특히, 정보는 DSM 서버(10)에 의해 DATA, STATUS 및 REPORTS라는 명칭의 서브-디렉토리를 이용하여 표준 포맷으로 편성(organized)된다.
요약 상태 파일(summary status file)은 DSM 서버(10)에 의해 생성되어, 애플리케이션 서버(40-70)의 최근의 액티비티를 검토하길 원하는 관리 스태프에 의해 의한 억세스를 위해 STATUS 서브-디렉토리에 저장된다. 노트4에 의해 제공되는 그래픽 사용자 인터페이스(GUI)는 관리 스태프가 데이터베이스 네비게이터를 통해 애플리케이션 서버(40-70)로부터 DSM 서버(10)에 의해 수집된 모든 정보를 관찰할 수 있도록 한다.
서버 로그 및 통계로부터의 정보는 미래의 요구에 대한 현재의 데이터 처리 요구조건 및 계획을 관리하기 위한 정보를 관리자에게 제공하기 위해 매주 및 매월에 한 번씩 요약될 수 있다. 정보는 노트 통계(statistics), 운영체제 통계, 네트워크 통계 및 응답 시간 요약의 형태로 노트 데이터베이스 상에서 유지된다. 애플리케이션 서버 로그 파일 및 통계는 DSM 서버(10)를 통해 자동적으로 매월에 한 번씩 원하는 목적지로 기록보관(archived)될 수 있다.
서버 프로브 기능
서버 프로브 기능(550)은 각각의 노트 애플리케이션 서버(50-70)의 NOTES.INI 파일에 명시된 노트 태스크(913-916)의 활성화를 보장하기 위해 노트 수집 에이전트(912)를 통해 각각의 노트 애플리케이션 서버(50-70)를 모니터한다. (아마도 고장로 인해) 실행되고 있지 않는 태스크(913-916)는 그 서버 프로브 기능(550)에 의해 자동적으로 개시된다. 또한, 서버 프로브 기능(550)은 노트 애플리케이션 서버(50-70) 내의 노트 수집 에이전트(912)를 통해, 매일 한 번씩 DSM 서버(10)로부터 노트 애플리케이션 서버(50-70)로의 응답 시간을 기록하고 요약한다.
만일 어떤 노트 애플리케이션 서버(50-70)가 어떤 이유로 인해 오프-라인이 되면, 서버 프로브 기능(550)은 중요도 1 경보(severity 1 alert)를 제기하게 된다. 이 중요도 1 경보는 DSM 서버(10)에 의해 관리 단말기(20)로 전송된다. 서버 프로브 기능(550)은 노트 수집 에이전트(912)를 통해, 명시된 태스크(913-916)가 활성화되어 올바르게 작용하고 있는지를 순차 검사한다. 어떤 태스크(913-916)에 문제가 있는 경우에, 서버 프로브 기능(550)은 자동적으로 노트 수집 에이전트(912)를 통해 그 태스크를 재개시하기 위해 시도한다. 특정 태스크(913-916)를 재개시하기 위한 시도의 소정의 횟수의 실패 이후에, 서버 프로브 기능(550)은 경보를 관리 단말기(20)로 루팅한다. 호스트 애플리케이션 서버(50-70)의 고장은 약정된 서비스 시간 내에 또는 약정된 서비스 시간을 지나 DSM 서버(10)에 의해 기록된다.
이제, 도 8의 흐름도를 참조하여 서버 프로브 기능(550)에 대해 설명하게 된다. 동작중에, 서버 프로브 기능(550)은 노트 프로토콜에 의해 목표 애플리케이션 서버(50-70)로 명령을 발생한다. 서버 프로브 기능(550)에 의해 발생된 명령은 목표 애플리케이션 서버(50-70)의 노트 수집 에이전트(912)에 의해 노트(910) 내에서 처리된다. 처음에는, 블록(1000)에서, 서버 프로브 기능(550)은 재개시 카운트(restart count)를 제로로 리셋한다. 다음에, 블록(1010)에서, 서버 프로브 기능(550)은 "태스크 구성을 제시하라(show task configuration)"는 명령을 노트 수집 에이전트(912)로 전송한다. "태스크 구성을 제시하라"는 명령은 그 태스크(913-916)가 활성화되어야 하는 목표 애플리케이션 서버(50-70) 내의 NOTES.INI 파일로부터 포착된다. 블록(1020)에서, 서버 프로브 기능(550)은 "활성 태스크를 제시하라(show active tasks)"는 명령을 목표 애플리케이션 서버(50-70)로 전송한다. "활성 태스크를 제시하라"는 명령은 목표 애플리케이션 서버(50-70) 상에서 활성화되는 태스크(913-916)를 포착한다. 블록(1030)에서, 서버 프로브 기능(550)은 태스크 구성을 활성 태스크와 비교한다. 만일 태스크 구성이 활성 태스크와 동일하면, 서버 프로브 기능(550)은 블록(1080)에서 종료된다. 만일 태스크 구성이 활성 태스크와 상이하면, 이것은 하나 이상의 태스크(913-916)에 고장이 있다는 것을 나타내며, 그러면, 블록(1040)에서, 서버 프로브 기능(550)은 재개시 카운트가 고장이 있는 태스크의 재개시를 위한 시도의 소정의 임계치와 동일한지 판단한다. 만일 그렇다면, 블록(1050)에서, 서버 프로브 기능(550)은 관리 단말기(20)로 제공하기 위한 경보 메시지를 발생한다. 그러나, 만일 그렇지 않다면, 블록(1060)에서, 서버 프로브 기능(550)은 재개시 카운트를 증가시키고, 블록(1070)에서, 비활성 상태로서 보고되었던 태스크 구성에 명시된 태스크를 재개시하기 위해 시도한다. 서버 프로브 기능(550)은 모든 필요한 태스크가 활성 상태로 되거나 또는 임계치를 초과할 때까지 블록(1020,1030,1040,1060,1070)에 의해 정의된 루프를 돌아 계속된다.
E-메일 프로브 기능
E-메일 프로브 기능(560)은 소정의 임계치에 대하여 리플렉트하는(reflecting) 서버(50-70)로의 복귀 트립(return trip)을 완료하기 위해 로터스 노트 문서 형태의 테스트 메시지에 걸리는 시간을 측정함으로써, 노트 애플리케이션 서버(50-70)의 네트워크에서 메일 루트를 테스트한다. E-메일 프로브 기능(560)에 의해 발생되는 테스트 리포트의 일례가 부록 A에 제공되어 있다. E-메일 프로브 기능(560)은 임계치가 초과되는 경우에 경보를 발생한다. 또한, E-메일 프로브 기능(560)은 도중에 각각의 E-메일 애플리케이션 서버를 통해 경과된 시간을 포함하는 리포트를 발생한다. 특히, E-메일 프로브는 들어갈 때 및 빠저나올 때 각각의 서버(50-70)로부터 국부적인(local) 날짜 및 시간을 포착한다. 각각의 서버에 대한 들어가고 나오는 날짜 및 시간(entry and exit local date and time)은 테스트 메시지를 형성하는 노트 문서에 기록된다. 소정의 메일 애플리케이션에서는, 메일을 배달하기 위해 걸리는 시간 및 메일 배달 문제점이 있는지에 대해 관리 스태프가 알고 있는 것은 중요하다. E-메일 프로브 기능은 노트 메일 네트워크에서 발생하는 문제점을 관리 단말기(20)로 전송하기 위한 경보로 변환한다. E-메일 프로브 기능(560)은 또한, 자동적으로 메일 트래킹 리포트를 발생한다.
복제 트래킹 기능(Replication Tracking Function)
일부 노트 애플리케이션에서는, 데이터베이스에 저장된 데이터가 상이한 애플리케이션 서버(50-70) 사이에서 차폐[shadowed]되는 것이 중요하다. 이 차폐는 노트 복제 태스크(914)를 통해 실현될 수 있다. DSM 서버(10)의 노트 복제 트래킹 기능(570)은 노트 복제 태스크(914)가 2개 또는 그 이상의 노트 애플리케이션 서버(50-70)에 의해 실행된 이후에 동기되어 있는지 확인하기 위해 애플리케이션 서버(40-70) 상의 데이터베이스를 검사한다. 만일 데이터베이스가 동기되어 있지 않으면, DSM 서버(10)는 관리 단말기(20)로 경보를 전송한다. 노트 복제 트래킹 기능(570)은 노트 복제 서버 액티비티가 발생한 이후에 그 동일한 복제 ID의 데이터베이스가 동일한 내용을 갖고 있는지 검증한다.
예를 들어, 도 1을 참조하여, 데이터베이스 ABC.NSF가 애플리케이션 서버(50)에 저장되어, 복제 트래킹 태스크(914)를 통해 애플리케이션 서버(60) 상에 복제된 것으로 가정하자. 그러면, 애플리케이션 서버(50)와 애플리케이션서버(60)는 모두 ABC.NSF의 카피를 저장하고 있는 것이다. 이제, 애플리케이션 서버(50)에 접속된 클라이언트 이용자가 그 애플리케이션 서버(50) 상에 저장된 ABC.NSF의 카피를 수정하고 있고, 이와 동시에, 애플리케이션 서버(60)에 접속된 클라이언트 이용자가 그 애플리케이션 서버(60) 상에 저장된 ABC.NSF의 카피를 수정하고 있는 것으로 가정하자. 그러면, 애플리케이션 서버(50) 상의 복제 태스크(914)는 애플리케이션 서버(60) 상의 ABC.NSF의 수정된 카피를 주기적으로 복제한다. 마찬가지로, 애플리케이션 서버(60) 상의 복제 태스크(914)는 애플리케이션 서버(50) 상의 ABC.NSF의 수정된 카피를 주기적으로 복제한다. 복제가 이루어지는 빈도수는 이용자 요구에 따라 미리 설정될 수 있다. 예를 들어, 만일 데이터베이스가 클라이언트 이용자에 의해 빈번하게 수정되는 비교적 중요한 정보를 포함하고 있으면, 그에 대응하여 빈번하게 이루어지는 복제 액티비티가 적절할 수 있다. 이와 반대로, 만일 데이터베이스에 포함된 정보가 덜 중요하면, 복제도 덜 빈번하게 이루어지도록 설정될 수 있다. 시스템 관리 관점에서 보면, 애플리케이션 서버(50,60) 상의 복제 태스크는 애플리케이션 서버(50,60)의 최종 이용자 클라이언트가 ABC.NSF를 독립적으로 수정하는 정규성(regularity)을 수용하기에 충분한 빈도로 ABC.NSF의 복제를 수행하도록 설정되는 것을 보장하는 것이 바람직하다. 이러한 문제는 DSM 서버(10)의 복제 트래킹 기능(570)에 의해 해결된다.
도 9를 참조하면, 동작중에, 복제 트래킹 기능(570)은 블록(1100)에서, 샘플링 간격(SAMPLING INTERVAL)을 애플리케이션 서버(50,60) 상의 ABC.NSF의 카피에 사용될 원하는 샘플의 수로 설정하고, 목표 카운트(TARGET COUNT)를 애플리케이션서버(50,60) 상의 ABC.NSF의 카피 내의 샘플링 간격에서 발견될 부합의 수로 설정하고, 실행중인 총 히트 카운트(HIT COUNT)와 샘플 카운트(SAMPLE COUNT)를 제로로 리셋함으로써 초기화된다. 블록(1110)에서, 복제 트래킹 기능(570)은 애플리케이션(50)에 저장된 ABC.NSF와 애플리케이션(60)에 저장된 ABC.NSF를 둘다 샘플링한다. 블록(1120)에서, 복제 트래킹 기능(570)은 이들 2개의 샘플을 비교한다. 만일 2개의 샘플이 부합하면, 블록(1130)에서 복제 트래킹 기능(570)은 히트 카운트를 증가시키고, 블록(1140)으로 진행한다. 만일 2개의 샘플이 부합하지 않으면, 복제 트래킹 기능(1140)은 직접 블록(1140)으로 진행하며, 여기서는 샘플 카운트가 증가된다. 블록(1150)에서, 복제 트래킹 기능(570)은 샘플 카운트를 샘플링 간격과 비교한다. 만일 샘플 카운트가 샘플링 간격과 동일하지 않으면, 복제 트래킹 기능(570)은 블록(1110)으로 복귀하여 그 다음 쌍의 샘플을 수집한다. 만일 샘플 카운트가 샘플링 간격에 도달하면, 복제 트래킹 기능(570)은 블록(1160)에서, 히트 카운트를 목표 카운트와 비교한다. 만일 히트 카운트가 목표 카운트 보다 적으면, 블록(1170)에서, 복제 트래킹 기능(570)은 애플리케이션 서버(50,60)에 저장된 ABC.NSF의 카피가 동기되지 않았다는 것을 나타내는 경보를 관리 단말기로 발생한다. 만일 그렇지 않다면, 복제 트래킹 기능(570)은 종료된다.
복제 트래킹 기능(570)은 하나 이상의 데이터베이스의 복제를 추적하기 위해 사용될 수 있다는 것을 이해할 것이다. 마찬가지로, 복제 트래킹 기능(570)은 각각의 데이터베이스의 2개 이상의 카피의 복제를 추적하기 위해 사용될 수도 있다는 것을 이해할 것이다. 또한, 복제 트래킹 기능(570)은 상이한 테스트 파라미터(예,샘플링 간격, 목표 카운트)를 상이한 데이터베이스 또는 데이터베이스 그룹에 적용할 수 있다는 것도 이해할 것이다. 또한, 고객의 요구조건에 따라, 비교적 짧은 시간 주기에 걸쳐 샘플링 간격을 형성하는 샘플을 취하거나 또는 비교적 긴 시간 주기에 걸쳐 취할 수도 있다는 것을 이해할 것이다.
애플리케이션 서버 로그 데이터 기억장치
본 발명의 실시예에서, 로그 파일은 애플리케이션 서버(40-70)가 아닌 DSM 서버(10)의 대용량 기억장치(230)에 의해 유지되기 때문에, 애플리케이션 서버(40-70)는 보다 많은 자원을 클라이언트 액티비티에 전용할 수 있다.
DSM 서버 계층 구조 및 확장성
DSM 서버(10)는 모듈로서 동작할 수 있다. 그러므로, 많은 수의 상이한 애플리케이션 서버를 수용하기 위해, 상이한 그룹의 애플리케이션 서버에 각각 서비스하는 복수의 DSM 서버가 사용될 수 있다. 이제, 도 10를 참조하면, 이와 같은 구성의 예에는, 다수의 애플리케이션 서버(400-450)와 다수의 DSM 서버(460-480)가 제공된다. 각각의 DSM 서버(460-480)는 상이한 그룹의 애플리케이션 서버(400-450)에 접속된다. DSM 서버(460-480)는 DSM 마스터 서버(490)에 각각 접속된다. 동작중에, 애플리케이션 서버(400-450)와의 모든 MTA 통신은 DSM 서버(460-480)에 의해 처리되지만, DSM 서버(460-480)는 노트 MTA 만을 통해 마스터 DSM 서버(490)와 통신한다. 도 10을 참조하여 전술한 본 발명의 예에서는, 3개의 DSM 서버(460-480)가 존재한다. 그러나, 본 발명의 다른 실시예에서는, 마스터 DSM 서버(490)에 보고하는 2개의 DSM 서버만이 존재할 수도 있다. 이와 마찬가지로, 본 발명의 다른 실시예에서는, 마스터 DSM 서버(490)에 보고하거나, 또는 마스터 DSM 서버(490)에서 끝나는 계층 구조로 배열된 하나 이상의 다른 계층의 중간 DSM 서버에 보고하는 3개의 이상의 DSM 서버가 존재할 수도 있다.
통상적으로, 운영 센터는 비용을 위해 하나 또는 2개의 지리적 영역으로 통합된다. 이것은 비교적 적은 수의 운영 센터로부터, 비교적 큰 지역에 걸쳐 시스템 관리 제어가 수행된다는 것을 의미한다. 도 10에 도시된 구성은 이러한 시나리오에 특히 적합하다.
요약하면, 본 발명의 예를 이용하여 전술한 것은 네트워크를 통해 상호접속된 복수의 애플리케이션 서버 컴퓨터 시스템을 구비한 분산 데이터 처리 시스템을 관리하기 위한 장치이며, 여기서, 각각의 애플리케이션 서버는 데이터베이스를 포함하는 데이터베이스 애플리케이션을 구비하고 있으며, 데이터베이스로부터 네트워크를 통해 복수의 클라이언트 컴퓨터 시스템 및 다른 애플리케이션 서버로 데이터를 통신하고, 상기 데이터 통신의 어커런스(occurrences)를 기록하는 로그 파일을 생성한다. 이 장치는 네트워크를 통해 애플리케이션 서버로부터 수신되는 로그 파일을 메모리에 저장하고, 저장된 로그 파일에서의 경보 상태 검출시 제1 이벤트 메시지를 발생하고, 하나 이상의 애플리케이션 서버 내의 데이터베이스 애플리케이션에 의한 데이터베이스 복제가 없다는 것을 검출하는 경우에 제2 이벤트 메시지를 발생하고, 하나 이상의 애플리케이션 서버 내의 데이터베이스 애플리케이션에서 고장 상태의 검출시 제3 이벤트 메시지를 발생하고, 애플리케이션 서버 사이의 하나 이상의 접속에서의 고장 상태 검출시 제4 이벤트 메시지를 발생한다.
전술한 바와 같은 본 발명에 따른 분산 데이터 처리 시스템 관리 장치 및 방법에 있어서는, 애플리케이션 서버 고장을 제거하거나 또는 적어도 감소시킬 수 있으며, 분산 환경에서 서버 관리의 자동화를 개선할 수 있는 효과가 있다.

Claims (12)

  1. 데이터베이스를 포함하는 데이터베이스 애플리케이션, 상기 데이터베이스로부터 네트워크를 통해 복수의 클라이언트 컴퓨터 시스템 및 다른 애플리케이션 서버로 데이터를 통신하기 위한 수단 및 상기 데이터 통신의 어커런스(occurrences)를 기록하는 로그 파일을 생성하기 위한 수단을 각각 구비하며, 상기 네트워크를 통해 상호 접속된 복수의 애플리케이션 서버 컴퓨터 시스템을 구비하는 분산 데이터 처리 시스템 관리 장치로서,
    기억 수단과,
    상기 네트워크를 통해 상기 애플리케이션 서버로부터 수신된 로그 파일을 상기 기억 수단에 저장하고 상기 저장된 로그 파일에서 경보 상태 검출시 제1 이벤트 메시지를 발생하기 위한 모니터 수단과,
    하나 이상의 상기 애플리케이션 서버에서 상기 데이터베이스 애플리케이션에 의한 데이터베이스 복제가 없다는 것을 검출하는 경우에 제2 이벤트 메시지를 발생하기 위한 복제 트래킹 수단과,
    하나 이상의 상기 애플리케이션 서버의 상기 데이터베이스 애플리케이션에서 고장 상태의 검출시 제3 이벤트 메시지를 발생하기 위한 서버 프로브 수단과,
    상기 애플리케이션 서버 사이의 하나 이상의 접속에서 고장 상태 검출시 제4 이벤트 메시지를 발생하기 위한 메일 프로브 수단을 포함하는 분산 데이터 처리 시스템 관리 장치.
  2. 제1항에 있어서, 상기 제1, 제2, 제3 및 제4 이벤트 메시지를 디스플레이하기 위한 수단을 구비한 관리 단말기를 더 포함하는 분산 데이터 처리 시스템 관리 장치.
  3. 제2항에 있어서, 상기 모니터 수단은 상기 이벤트 메시지들을 상기 관리 단말기로 선택적으로 통신하기 위한 필터를 포함하는 분산 데이터 처리 시스템 관리 장치.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 복제 트래킹 수단은
    각각의 애플리케이션 서버의 데이터베이스를 샘플링하기 위한 샘플링 수단과,
    대응하는 샘플이 서로 부합(match)하는지 판단하기 위한 제1 비교 수단과,
    상기 제1 비교 수단에 의해 식별된 부합의 수가 소정의 수용 임계치 이하인 경우에 상기 제2 이벤트 메시지를 발생하기 위한 제2 비교 수단을 포함하는 분산 데이터 처리 시스템 관리 장치.
  5. 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 서버 프로브 수단은 상기 고장 상태를 해결하도록 순차 시도하기 위한 재개시 수단과, 소정의 다수의 실패된 시도 이후에 상기 고장 상태를 해결하도록 상기 재개시 수단에 의해 상기 제3 이벤트 메시지를 발생하기 위한 수단을 포함하는 분산 데이터 처리 시스템 관리 장치.
  6. 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 메일 프로브 수단은
    상기 애플리케이션 서버 중 리플렉트하는 서버로 상기 다른 애플리케이션 서버를 통해 테스트 메시지를 전송하기 위한 수단과,
    상기 애플리케이션 서버 중 상기 리플렉트하는 서버로부터 상기 다른 애플리케이션 서버를 통해 테스트 메시지를 수신하기 위한 수단과,
    테스트 메시지가 상기 애플리케이션 서버 중 상기 리플렉트하는 서버를 통과하는데 걸리는 시간 및 상기 애플리케이션 서버 중 상기 리플렉트하는 서버로 오고 가는 도중에 각각의 애플리케이션 서버를 통과하는데 걸리는 시간을 기록하기 위한 수단을 포함하는 분산 데이터 처리 시스템 관리 장치.
  7. 분산 데이터 처리 시스템으로서,
    상기 분산 데이터 처리 시스템은 데이터베이스를 포함하는 데이터베이스 애플리케이션, 상기 데이터베이스로부터 네트워크를 통해 복수의 클라이언트 컴퓨터 시스템 및 다른 애플리케이션 서버로 데이터를 통신하기 위한 수단 및 상기 데이터 통신의 어커런스(occurrences)를 기록하는 로그 파일을 생성하기 위한 수단을 각각 구비하며, 상기 네트워크를 통해 상호 접속된 복수의 애플리케이션 서버 컴퓨터 시스템과 상기 분산 데이터 처리 시스템을 관리하기 위한 장치를 구비하며,
    상기 분산 데이터 처리 시스템을 관리하기 위한 장치는
    기억 수단과,
    상기 네트워크를 통해 상기 애플리케이션 서버로부터 수신되는 로그 파일을 상기 기억 수단에 저장하고, 상기 저장된 로그 파일에서 경보 상태 검출시 제1 이벤트 메시지를 발생하기 위한 모니터 수단과,
    하나 이상의 상기 애플리케이션 서버에서 상기 데이터베이스 애플리케이션에 의한 데이터베이스 복제가 없다는 것을 검출하는 경우에 제2 이벤트 메시지를 발생하기 위한 복제 트래킹 수단과,
    하나 이상의 상기 애플리케이션 서버의 상기 데이터베이스 애플리케이션에서 고장 상태의 검출시 제3 이벤트 메시지를 발생하기 위한 서버 프로브 수단과,
    상기 애플리케이션 서버 사이의 하나 이상의 접속에서 고장 상태 검출시 제4 이벤트 메시지를 발생하기 위한 메일 프로브 수단을 포함하는 것인 분산 데이터 처리 시스템.
  8. 데이터베이스를 포함하는 데이터베이스 애플리케이션, 상기 데이터베이스로부터 네트워크를 통해 복수의 클라이언트 컴퓨터 시스템 및 다른 애플리케이션 서버로 데이터를 통신하기 위한 수단 및 상기 데이터 통신의 어커런스(occurrences)를 기록하는 로그 파일을 생성하기 위한 수단을 각각 구비하며, 상기 네트워크를 통해 상호 접속된 복수의 애플리케이션 서버 컴퓨터 시스템을 구비하는 분산 데이터 처리 시스템 관리 방법으로서,
    (가) 상기 네트워크를 통해 상기 애플리케이션 서버로부터 수신된 로그 파일을 관리 서버 컴퓨터 시스템의 기억 수단에 저장하는 단계와,
    (나) 상기 저장된 로그 파일에서 경보 상태 검출시 제1 이벤트 메시지를 상기 관리 서버에 의해 발생하는 단계와,
    (다) 하나 이상의 상기 애플리케이션에서 상기 데이터베이스 애플리케이션에 의한 데이터베이스 복제가 없다는 것을 검출하는 경우에 제2 이벤트 메시지를 상기 관리 서버에 의해 발생하는 단계와,
    (라) 하나 이상의 상기 애플리케이션 서버의 상기 데이터베이스 애플리케이션에서 고장 상태의 검출시 제3 이벤트 메시지를 상기 관리 서버에 의해 발생하는 단계와,
    (마) 상기 애플리케이션 서버 사이의 하나 이상의 접속에서 고장 상태 검출시 제4 이벤트 메시지를 상기 관리 서버에 의해 발생하는 단계를 포함하는 방법.
  9. 제8항에 있어서, 상기 단계 (나)는
    (바) 데이터 파일에서 경보 상태를 필터링하는 단계를 포함하는 방법.
  10. 제8항 또는 제9항에 있어서, 상기 단계 (다)는
    (사) 상기 데이터베이스의 각각의 카피를 샘플링하는 단계와,
    (아) 대응하는 샘플이 서로 부합(match)하는지 판단하는 단계와,
    (자) 제1 비교 수단에 의해 식별된 부합의 수가 소정의 수용 임계치 이하인 경우에 제2 이벤트 메시지를 발생하는 단계를 포함하는 방법.
  11. 제8항 또는 제9항에 있어서, 상기 단계 (라)는
    (차) 상기 고장 상태를 해결하도록 순차 시도하는 단계와,
    (카) 소정의 다수의 실패된 시도 이후에 상기 고장 상태를 해결하도록 제3 이벤트 메시지를 발생하는 단계를 포함하는 방법.
  12. 제8항 또는 제9항에 있어서, 상기 단계 (마)는
    (타) 상기 애플리케이션 서버 중 리플렉트하는 서버로 상기 다른 애플리케이션 서버를 통해 테스트 메시지를 전송하는 단계와,
    (파) 상기 애플리케이션 서버 중 상기 리플렉트하는 서버로부터 상기 다른 애플리케이션 서버를 통해 테스트 메시지를 수신하는 단계와,
    (하) 테스트 메시지가 상기 애플리케이션 서버 중 상기 리플렉트하는 서버를 통과하는데 걸리는 시간 및 상기 애플리케이션 서버 중 상기 리플렉트하는 서버로 오고 가는 도중에 각각의 애플리케이션 서버를 통해 통과하는데 걸리는 시간을 기록하는 단계를 포함하는 방법.
KR1019980026491A 1997-07-26 1998-07-01 분산데이터처리시스템관리방법및장치 KR100308678B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB9715760A GB2328043A (en) 1997-07-26 1997-07-26 Managing a distributed data processing system
GB9715760.6 1997-07-26

Publications (2)

Publication Number Publication Date
KR19990013520A KR19990013520A (ko) 1999-02-25
KR100308678B1 true KR100308678B1 (ko) 2001-10-19

Family

ID=10816478

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980026491A KR100308678B1 (ko) 1997-07-26 1998-07-01 분산데이터처리시스템관리방법및장치

Country Status (2)

Country Link
KR (1) KR100308678B1 (ko)
GB (1) GB2328043A (ko)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5968116A (en) * 1996-03-27 1999-10-19 Intel Corporation Method and apparatus for facilitating the management of networked devices
GB2350983B (en) * 1999-06-10 2001-10-03 3Com Corp Network problem indication
KR100609552B1 (ko) * 1999-10-11 2006-08-04 엘지엔시스(주) 금융업무 분산처리장치 및 분산처리방법
FR2806494B1 (fr) * 2000-03-16 2005-01-21 Bull Sa Procede de transformation, de transport et d'analyse de fichiers de journaux d'evenements (logs)
KR100365007B1 (ko) * 2000-05-30 2002-12-16 오병기 네트워크를 이용한 에이에스피 통합관리 방법 및 그 장치
KR20020012855A (ko) * 2000-08-09 2002-02-20 전창오 통합로그 분석 및 관리 시스템 및 그 방법
US7296070B2 (en) 2000-12-22 2007-11-13 Tier-3 Pty. Ltd. Integrated monitoring system
US7464154B2 (en) * 2001-05-18 2008-12-09 Network Resonance, Inc. System, method and computer program product for analyzing data from network-based structured message stream
US7451110B2 (en) 2001-05-18 2008-11-11 Network Resonance, Inc. System, method and computer program product for providing an efficient trading market
US7124299B2 (en) 2001-05-18 2006-10-17 Claymore Systems, Inc. System, method and computer program product for auditing XML messages in a network-based message stream
US7936693B2 (en) 2001-05-18 2011-05-03 Network Resonance, Inc. System, method and computer program product for providing an IP datalink multiplexer
US6874089B2 (en) 2002-02-25 2005-03-29 Network Resonance, Inc. System, method and computer program product for guaranteeing electronic transactions
US7769997B2 (en) 2002-02-25 2010-08-03 Network Resonance, Inc. System, method and computer program product for guaranteeing electronic transactions
GB0208711D0 (en) * 2002-04-16 2002-05-29 Neural Technologies Ltd A hierarchical system for analysing data streams
JP5111340B2 (ja) 2008-11-20 2013-01-09 株式会社日立製作所 情報処理システムを構成している装置の監視方法、情報処理装置、及び情報処理システム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2270779B (en) * 1992-09-17 1996-01-10 Fexco Initiative Limited Improvements in and relating to back-up database systems

Also Published As

Publication number Publication date
KR19990013520A (ko) 1999-02-25
GB2328043A (en) 1999-02-10
GB9715760D0 (en) 1997-10-01

Similar Documents

Publication Publication Date Title
US6253211B1 (en) Replication tracking method and apparatus for a distributed data processing system
US6167431A (en) Server probe method and apparatus for a distributed data processing system
KR100308678B1 (ko) 분산데이터처리시스템관리방법및장치
US7685269B1 (en) Service-level monitoring for storage applications
US6832341B1 (en) Fault event management using fault monitoring points
US7231403B1 (en) System and method for transformation and analysis of messaging data
EP0968589B1 (en) Systems and methods for monitoring distributed applications
US7426652B2 (en) System and method for application monitoring and automatic disaster recovery for high-availability
US8887176B2 (en) Network management system event notification shortcut
US7406473B1 (en) Distributed file system using disk servers, lock servers and file servers
US7577701B1 (en) System and method for continuous monitoring and measurement of performance of computers on network
JP4776404B2 (ja) ストレージシステムを遠隔的に監査するためのシステムと方法
US7734951B1 (en) System and method for data protection management in a logical namespace of a storage system environment
US8060630B1 (en) Creating and configuring virtual fabrics in storage area networks
US20080155091A1 (en) Remote monitoring in a computer network
WO1998042103A9 (en) Systems and methods for monitoring distributed applications
JP2003186564A (ja) ストレージリソース測定システム
JP2004021549A (ja) ネットワーク監視システムおよびプログラム
US8429273B2 (en) Network management system accelerated event desktop client
US7870045B2 (en) Computer system for central management of asset information
US5682523A (en) System and method for collecting and retrieving network problem determination data with a generic collection subsystem reporting to an agent on demand
US20030208622A1 (en) Method and system for multiple vendor, multiple domain router configuration backup
US8051135B2 (en) Server availability reporting using asynchronous e-mail message
CN108599978B (zh) 一种云监控方法和装置
GB2327780A (en) Mail probe for timing mail routes

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee