KR100992417B1 - Monitoring method for unified management system, system for the same, and recording medium storing a program thereof - Google Patents

Monitoring method for unified management system, system for the same, and recording medium storing a program thereof Download PDF

Info

Publication number
KR100992417B1
KR100992417B1 KR1020100022142A KR20100022142A KR100992417B1 KR 100992417 B1 KR100992417 B1 KR 100992417B1 KR 1020100022142 A KR1020100022142 A KR 1020100022142A KR 20100022142 A KR20100022142 A KR 20100022142A KR 100992417 B1 KR100992417 B1 KR 100992417B1
Authority
KR
South Korea
Prior art keywords
agent
integrated management
management server
performance data
data
Prior art date
Application number
KR1020100022142A
Other languages
Korean (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 주식회사 위엠비
Priority to KR1020100022142A priority Critical patent/KR100992417B1/en
Application granted granted Critical
Publication of KR100992417B1 publication Critical patent/KR100992417B1/en

Links

Images

Classifications

    • 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/024Standardisation; Integration using relational databases for representation of network management data, e.g. managing via structured query language [SQL]

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)

Abstract

PURPOSE: A monitoring method for a unified management system, a system for the same, and a recording medium storing a program thereof are provided to minimize the management load by collectively monitoring the performance information, statistical information and failure information, which happen in a management target server, through an integrated management server in real time. CONSTITUTION: A first worker thread(ws1) is generated for each performance information kind and collects the performance information in multithread manner according to collection period in order to create and store a performance data file. The first worker thread transmits individual performance data to an integrated management server. A second worker thread(ws2) generates the statistical data from the data stored in the performance data file according to the statistical period, stores the generated statistical data as a statistical data file, and transmits the statistical data to the integrated management server.

Description

통합관리방법 및 통합관리시스템, 그 기록매체{Monitoring method for unified management system, System for the same, and Recording medium storing a program thereof} Monitoring method for unified management system, System for the same, and Recording medium storing a program approximately}

본 발명은 통합관리방법 및 통합관리시스템, 그 기록매체에 관한 것으로서, 더욱 상세하게는, 관리대상서버에서 발생하는 성능, 통계, 장애 등에 대한 정보를 통합관리서버에서 근실시간으로 통합 모니터링하고, 관리부하를 최소화할 수 있는 통합관리방법 및 통합관리시스템, 그 기록매체에 관한 것이다. The present invention relates to an integrated management method, an integrated management system, and a recording medium. More specifically, the integrated management server monitors and manages information on performance, statistics, and faults occurring in a managed server in a near-real time. The present invention relates to an integrated management method, an integrated management system, and a recording medium for minimizing load.

일반적으로, 정보기술(Information Technology, IT) 관리란 네트워크(Network) 관리, 시스템(System) 관리, 응용프로그램(Application) 관리, 데이터베이스(Database, DB) 관리를 통칭하는 것이다. In general, information technology (IT) management refers to network management, system management, application management, and database management.

한편, 정보기술(IT)의 관리의 일반적인 방식은, 통합관리서버가 다수의 관리대상서버에 각각 설치된 에이전트로부터 성능정보를 수집하고, 이렇게 수집된 각 관리대상서버의 성능정보를 관리자가 파악할 수 있도록 정보를 제공하는 방식이다. On the other hand, the general method of the management of information technology (IT), the integrated management server collects the performance information from the agents installed on each of the plurality of managed servers, so that the administrator can grasp the performance information of each managed server thus collected It's a way of providing information.

이러한 통합관리서버는 각 에이전트에서 수집한 성능정보의 값이 사전에 사용자에 의해 설정된 임계값을 초과하는 상황이 발생되면, 해당 임계값을 초과한 성능정보에 대해 관리자에게 알리고, 성능정보의 값이 사전에 사용자에 의해 설정된 장애허용한계(Fault Tolerance)값을 초과하게 되면 장애를 알리게 된다. When the situation where the value of the performance information collected by each agent exceeds the threshold set by the user in advance occurs, the integrated management server notifies the administrator about the performance information that exceeds the threshold, and the value of the performance information is If the fault tolerance value set by the user is exceeded in advance, the fault is notified.

예를 들어, 대한민국 등록특허 제10-0869902호(등록일자 2008.11.14)는 통합관리 시스템 환경에서의 장애 및 성능정보 통합모니터링 방법 및 그 시스템에 대하여 개시하고 있다. For example, Korean Patent Registration No. 10-0869902 (Registration Date 2008.11.14) discloses a method and system for integrated monitoring of failure and performance information in an integrated management system environment.

그러나, 예시된 기술을 포함한 종래의 통합모니터링 방법 및 시스템은, 통합관리서버의 관리 부하 등을 고려하여 장애 및 성능정보를 모니터링하는 주기가 대략 20초 또는 그 이상으로 동작되어야 하는 한계를 갖고 있었다. However, the conventional integrated monitoring method and system including the illustrated technology has a limitation in that the period for monitoring the failure and performance information should be operated for about 20 seconds or longer in consideration of the management load of the integrated management server.

이로 인해, 모니터링 주기의 단위시간 사이에 발생하는 장애나 성능정보를 통합관리서버가 실시간으로 전송받지 못한다는 문제점이 있었다. As a result, there was a problem that the integrated management server does not receive the failure or performance information that occurs between the unit time of the monitoring cycle in real time.

상기 종래 기술에 따른 문제점을 해결하기 위한 본 발명의 목적은, 관리대상서버에서 발생하는 성능, 통계, 장애 등에 대한 정보를 통합관리서버에서 근실시간으로 통합 모니터링할 수 있고, 이에 따른 관리부하를 최소화할 수 있는 통합관리방법 및 통합관리시스템, 그 기록매체를 제공함에 있다. An object of the present invention for solving the problems according to the prior art, can be integrated monitoring in real time in the integrated management server information on the performance, statistics, failures, etc. occurring in the management target server, thereby minimizing the management load To provide an integrated management method, an integrated management system, and a recording medium.

상기 기술적 과제를 해결하기 위한 본 발명의 제1측면은, 적어도 하나의 관리대상서버에 설치된 에이전트를 통한 통합관리서버의 관리방법으로서, 상기 에이전트가, 내부 스케쥴러의 수집주기에 따라 각 성능정보 종류별로 생성된 워커스레드(workerthread)를 통해 멀티스레드(multithread) 방식으로 해당 성능정보를 수집하여 성능데이터파일을 생성 및 저장하는 단계; 상기 통합관리서버가, 상기 에이전트로부터 상기 성능데이터를 개별 데이터 단위로 전송받아 DBMS 및 WAS메모리에 동시 저장하는 단계;를 포함하는 성능정보 처리 과정; 및 상기 에이전트가, 내부 스케쥴러의 통계주기에 따라 상기 성능데이터파일을 읽고 통계데이터를 생성하여 통계데이터파일로 저장하는 단계; 상기 통합관리서버가, 상기 에이전트로부터 상기 통계데이터에 대한 전송허락 요청을 전송받아 상기 DBMS의 요청큐(request queue)에 저장하는 단계; 상기 통합관리서버가, 상기 요청큐에 저장된 각 통계데이터 전송허락 요청에 대해 순차적으로 해당 에이전트에 전송승락을 전송하고 해당 에이전트로부터 통계데이터를 전송받아 상기 DBMS에 저장하는 단계;를 포함하는 통계정보 처리 과정;을 포함하여 구성된다. The first aspect of the present invention for solving the technical problem is a management method of the integrated management server through the agent installed in at least one management target server, the agent for each type of performance information according to the collection cycle of the internal scheduler Generating and storing a performance data file by collecting corresponding performance information in a multithreaded manner through a generated worker thread; Receiving, by the integrated management server, the performance data from the agent in individual data units and simultaneously storing the performance data in a DBMS and WAS memory; And reading, by the agent, the performance data file according to a statistical period of an internal scheduler, generating statistical data, and storing the statistical data file as a statistical data file. Receiving, by the integrated management server, a transmission permission request for the statistical data from the agent and storing the request in the request queue of the DBMS; And transmitting, by the integrated management server, the transmission permission to the corresponding agent in sequence for each statistical data transmission permission request stored in the request queue, and receiving the statistical data from the corresponding agent and storing the received statistical data in the DBMS. Process; is configured to include.

바람직하게, 상기 성능정보 처리 과정에서, 상기 에이전트는, text log file, URL, DB접속, TCP/IP 프로토콜 중 적어도 어느 하나의 형식을 갖는 성능정보를 상기 관리대상서버로부터 제공받아, text log file 형식의 성능데이터파일을 상기 관리대상서버에 생성 및 저장할 수 있다. Preferably, in the performance information processing process, the agent receives the performance information having at least one of the format of the text log file, URL, DB connection, TCP / IP protocol from the management server, the text log file format The performance data file can be generated and stored in the management server.

바람직하게, 상기 통합관리서버는, 상기 성능데이터 및/또는 통계데이터를 HTTP(HyperText Transfer Protocol) 방식으로 전송받을 수 있다. Preferably, the integrated management server, the performance data and / or statistical data may be transmitted in the HTTP (HyperText Transfer Protocol) method.

바람직하게, 상기 성능정보 처리 과정에서, 상기 통합관리서버는, 상기 에이전트가 수집한 개별 성능데이터를 직접 전송받거나 상기 성능데이터파일로부터 읽혀진 성능데이터를 개별 데이터 단위로 전송받을 수 있다. Preferably, in the performance information processing process, the integrated management server may directly receive individual performance data collected by the agent or receive performance data read from the performance data file in individual data units.

바람직하게, 상기 통계정보 처리 과정에서, 상기 통합관리서버는, 상기 에이전트로부터 상기 통계데이터를 해당 에이전트의 버퍼 크기로 분할하여 전송받을 수 있다. Preferably, in the process of processing the statistical information, the integrated management server, the statistical data can be received by dividing the statistical data into the buffer size of the agent.

바람직하게, 상기 통합관리서버와 접속된 클라이언트의 실시간 성능데이터 요청시 상기 WAS메모리에 저장된 성능데이터를 XML, HTML, SGML 중 어느 하나의 마크업 언어 형식으로 가공하여 URL로 제공할 수 있다. Preferably, when requesting real-time performance data of the client connected to the integrated management server, the performance data stored in the WAS memory may be processed into a markup language format among XML, HTML, and SGML, and provided as a URL.

바람직하게, 상기 통합관리서버와 접속된 클라이언트의 연속된 성능데이터에 대한 추이(推移) 요청시 상기 DBMS에 저장된 성능데이터를 이용하여 연속된 성능데이터를 제공할 수 있다. Preferably, when the transition request for the continuous performance data of the client connected to the integrated management server may provide continuous performance data using the performance data stored in the DBMS.

바람직하게, 상기 통계데이터는, 분(minute), 시(hour), 일(day) 중 적어도 어느 하나의 통계주기 단위에 대한 상기 성능데이터의 평균값, 최대값, 최소값 중 적어도 어느 하나일 수 있다. Preferably, the statistical data may be at least one of an average value, a maximum value, and a minimum value of the performance data for at least one of a statistical period unit among minutes, hours, and days.

바람직하게, 상기 통합관리서버가, 상기 에이전트의 상태를 전송받아 관리콘솔에 주기적으로 제공하는 단계; 상기 통합관리서버가, 상기 관리콘솔로부터 제어가 필요한 에이전트에 대한 제어명령을 전송받고, 해당 제어명령을 상기 DBMS의 제어큐(control queue)에 저장하는 단계; 상기 에이전트가, 상기 DBMS의 제어큐에 저장된 제어명령을 주기적으로 확인하여 해당 에이전트에 대한 제어명령이 있을시 그 제어명령을 실행하는 단계;를 포함하는 제어정보 처리 과정;을 더 포함할 수 있다. Preferably, the integrated management server, receiving the status of the agent periodically providing to the management console; Receiving, by the integrated management server, a control command for an agent requiring control from the management console, and storing the control command in a control queue of the DBMS; The agent may periodically check the control command stored in the control queue of the DBMS and execute the control command when there is a control command for the corresponding agent.

바람직하게, 상기 에이전트가, 기설정된 임계치와 수집한 성능데이터를 비교하여 임계치 초과 여부를 판단하고, 상기 통합관리서버가, 상기 에이전트로부터 전송되는 성능데이터와 함께 상기 판단결과를 수신하되 상기 임계치를 초과한 판단결과가 수신된 경우에 이벤트를 발생하여 장애관제시스템으로 전송하는 장애정보 처리 과정;을 더 포함할 수 있다. Preferably, the agent compares a predetermined threshold with collected performance data to determine whether a threshold is exceeded, and the integrated management server receives the determination result together with the performance data transmitted from the agent, but exceeds the threshold. And a failure information processing process of generating an event and transmitting the event to a failure control system when the determination result is received.

상기 기술적 과제를 해결하기 위한 본 발명의 제2측면은, 상술한 바와 같이 이뤄진 통합관리방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다. The second aspect of the present invention for solving the above technical problem provides a computer readable recording medium having recorded thereon a program for executing the integrated management method made as described above.

상기 기술적 과제를 해결하기 위한 본 발명의 제3측면은, 적어도 하나의 관리대상서버에 설치된 에이전트 및 이와 연동되는 통합관리서버를 포함하는 통합관리시스템으로서, 각 성능정보 종류별로 생성되며, 내부 스케쥴러의 수집주기에 따라 멀티스레드(multithread) 방식으로 해당 성능정보를 수집하여 성능데이터파일을 생성 및 저장하고, 상기 성능데이터를 상기 통합관리서버로 전송하는 적어도 하나의 제1워커스레드(workerthread); 내부 스케쥴러의 통계주기에 따라 상기 성능데이터파일을 읽고 통계데이터를 생성하여 통계데이터파일로 저장하고, 상기 통계데이터를 상기 통합관리서버로 전송하는 제2워커스레드;를 포함하는 에이전트와, 상기 에이전트에서 전송하는 성능데이터를 저장하는 WAS메모리; 상기 에이전트에서 전송하는 성능데이터 및 통계데이터를 저장하는 DBMS;를 포함하되, 상기 에이전트로부터 상기 통계데이터 전송허락 요청을 전송받아 상기 DBMS의 요청큐(request queue)에 저장하고, 상기 요청큐에 저장된 상기 통계데이터 전송허락 요청에 대해 순차적으로 해당 에이전트에 전송승락을 전송하여 해당 에이전트로부터 상기 통계데이터를 전송받는 통합관리서버;를 포함한다. The third aspect of the present invention for solving the above technical problem is an integrated management system including an agent installed in at least one management target server and an integrated management server linked to it, is generated for each type of performance information, At least one first worker thread for collecting and storing corresponding performance information in a multithreaded manner according to a collection cycle, and generating and storing a performance data file and transmitting the performance data to the integrated management server; A second worker thread that reads the performance data file according to a statistics cycle of an internal scheduler, generates statistical data, stores the statistical data as a statistical data file, and transmits the statistical data to the integrated management server. A WAS memory for storing performance data to be transmitted; And a DBMS for storing performance data and statistical data transmitted from the agent, receiving the statistical data transmission permission request from the agent, storing the performance data and statistical data in a request queue of the DBMS, and storing the received data in the request queue. And an integrated management server that transmits the transmission permission to the corresponding agent in sequence for the statistical data transmission permission request and receives the statistical data from the corresponding agent.

바람직하게, 상기 에이전트는, text log file, URL, DB접속, TCP/IP 프로토콜 중 적어도 어느 하나의 형식을 갖는 성능정보를 상기 관리대상서버로부터 제공받아, text log file 형식의 성능데이터파일을 상기 관리대상서버에 생성 및 저장할 수 있다. Preferably, the agent receives the performance information having at least one of a format of a text log file, a URL, a DB connection, and a TCP / IP protocol from the management server, and manages the performance data file in a text log file format. Can be created and stored on the target server.

바람직하게, 상기 에이전트는, 상기 성능데이터 및/또는 통계데이터를 HTTP(HyperText Transfer Protocol) 방식으로 전송할 수 있다. Preferably, the agent may transmit the performance data and / or statistical data in a HyperText Transfer Protocol (HTTP) scheme.

바람직하게, 상기 에이전트는, 수집한 개별 성능데이터를 직접 전송하거나 상기 성능데이터파일로부터 읽혀진 성능데이터를 개별 데이터 단위로 전송할 수 있다. Preferably, the agent may directly transmit collected individual performance data or transmit performance data read from the performance data file in individual data units.

바람직하게, 상기 통합관리서버는, 상기 에이전트로부터 상기 통계데이터를 해당 에이전트의 버퍼 크기로 분할하여 전송받을 수 있다. Preferably, the integrated management server, the statistical data from the agent may be received by dividing the buffer size of the agent.

바람직하게, 상기 통합관리서버는, 접속된 클라이언트의 실시간 성능데이터 요청시 상기 WAS메모리에 저장된 성능데이터를 XML, HTML, SGML 중 어느 하나의 마크업 언어 형식으로 가공하여 URL로 제공할 수 있다. Preferably, the integrated management server may process the performance data stored in the WAS memory in the markup language format of any one of XML, HTML, SGML, and provide it as a URL when requesting real-time performance data of a connected client.

바람직하게, 상기 통합관리서버는, 접속된 클라이언트의 연속된 성능데이터에 대한 추이(推移) 요청시 상기 DBMS에 저장된 성능데이터를 이용하여 연속된 성능데이터를 제공할 수 있다. Preferably, the integrated management server may provide continuous performance data using the performance data stored in the DBMS when a transition request for the continuous performance data of the connected client is requested.

바람직하게, 상기 통계데이터는, 분(minute), 시(hour), 일(day) 중 적어도 어느 하나의 통계주기 단위에 대한 상기 성능데이터의 평균값, 최대값, 최소값 중 적어도 어느 하나일 수 있다. Preferably, the statistical data may be at least one of an average value, a maximum value, and a minimum value of the performance data for at least one of a statistical period unit among minutes, hours, and days.

바람직하게, 상기 통합관리서버는, 상기 에이전트의 상태를 전송받아 접속된 관리콘솔에 주기적으로 제공하고, 상기 관리콘솔로부터 제어가 필요한 에이전트에 대한 제어명령을 전송받으며, 해당 제어명령을 상기 DBMS의 제어큐(control queue)에 저장하고, 상기 에이전트는, 상기 DBMS의 제어큐에 저장된 제어명령을 주기적으로 확인하여 해당 에이전트에 대한 제어명령이 있을시 그 제어명령을 실행할 수 있다. Preferably, the integrated management server, receiving the status of the agent periodically provided to the connected management console, receives a control command for the agent to control from the management console, the control command of the DBMS control Stored in a control queue, the agent may periodically check the control command stored in the control queue of the DBMS to execute the control command when there is a control command for the agent.

바람직하게, 상기 에이전트는, 기설정된 임계치와 수집한 성능데이터를 비교하여 임계치 초과 여부를 판단하고, 상기 통합관리서버는, 상기 에이전트로부터 전송되는 성능데이터와 함께 상기 판단결과를 수신하되 상기 임계치를 초과한 판단결과가 수신된 경우에 이벤트를 발생하여 장애관제시스템으로 전송할 수 있다. Preferably, the agent compares a predetermined threshold with collected performance data to determine whether a threshold is exceeded, and the integrated management server receives the determination result together with the performance data transmitted from the agent, but exceeds the threshold. When a decision result is received, an event may be generated and transmitted to the failure control system.

상술한 바와 같은 본 발명은, 다양한 관리대상서버에서 발생하는 성능, 통계, 장애 등에 대한 정보를 수집 및 제공함에 있어서, 에이전트 및 이와 연동되는 통합관리서버, DBMS의 관리부하를 최소화하여 5초 주기 이하의 근실시간 모니터링이 가능하도록 하는 장점이 있다. The present invention as described above, in collecting and providing information on the performance, statistics, failures, etc. occurring in the various management target server, less than 5 seconds cycle by minimizing the management load of the agent and the integrated management server, DBMS linked to it There is an advantage to enable real-time monitoring of.

특히, 에이전트에서 수집한 성능데이터를 통합관리서버에 개별 데이터 단위로 전송하고 이를 DBMS 및 WAS메모리에 동시 저장한 후, 실시간 성능정보 제공과 연속된 추이 정보 제공을 별도의 방식으로 효율적으로 제공함에 따라 관련 동작에 따른 시스템 부하를 최소화하는 장점이 있다. In particular, after transmitting the performance data collected by the agent to the integrated management server as individual data units and storing them in the DBMS and WAS memory at the same time, providing the real-time performance information and continuous trend information efficiently in a separate way. This has the advantage of minimizing the system load due to the associated operation.

또한, 각 에이전트 별로 통계데이터파일을 분산 생성하고, 이를 일괄처리 방식으로 통합관리서버로 전송하되 분할 전송 방식을 취하기 때문에, 통계데이터의 생성 및 전송 시의 부하도 최소화할 수 있다는 장점이 있다. In addition, since distributed statistical data files are generated for each agent and transmitted to the integrated management server in a batch processing method, but divided transmission method is used, there is an advantage that the load on the generation and transmission of statistical data can be minimized.

또한, 제어명령 전송 시에도, DBMS의 제어큐에 저장된 제어명령을 해당 에이전트에 전송하는 방식을 취하기 때문에, 별도의 제어포트를 사용하지 않고 기 사용 중인 데이터 전송 포트를 그대로 사용할 수 있어, 신규 포트를 열어서 발생될 수 있는 보안상의 취약점을 최소화할 수 있다는 장점이 있다.
In addition, the control command stored in the control queue of the DBMS is also transmitted to the corresponding agent when the control command is transmitted. Therefore, the existing data transmission port can be used as it is without using a separate control port. This has the advantage of minimizing security vulnerabilities that can be opened.

도 1은 본 발명의 일실시예에 따른 통합관리시스템을 보여주는 구성도.
도 2는 본 발명의 일실시예에 따른 통합관리시스템을 구성하는 에이전트의 내부 구성도.
도 3은 본 발명의 일실시예에 따른 통합관리방법의 성능정보 처리 과정을 보여주는 흐름도.
도 4는 본 발명의 일실시예에 따른 통합관리방법의 통계정보 처리 과정을 보여주는 흐름도.
도 5는 본 발명의 일실시예에 따른 통합관리방법의 제어정보 처리 과정을 보여주는 흐름도.
도 6은 본 발명의 일실시예에 따른 통합관리방법의 장애정보 처리 과정을 보여주는 흐름도.
1 is a block diagram showing an integrated management system according to an embodiment of the present invention.
2 is an internal configuration diagram of an agent constituting the integrated management system according to an embodiment of the present invention.
3 is a flow chart showing a performance information processing process of the integrated management method according to an embodiment of the present invention.
4 is a flow chart showing a statistical information processing process of the integrated management method according to an embodiment of the present invention.
5 is a flowchart showing a control information processing process of the integrated management method according to an embodiment of the present invention.
Figure 6 is a flow chart showing a failure information processing process of the integrated management method according to an embodiment of the present invention.

본 발명은 그 기술적 사상 또는 주요한 특징으로부터 벗어남이 없이 다른 여러가지 형태로 실시될 수 있다. 따라서, 본 발명의 실시예들은 모든 점에서 단순한 예시에 지나지 않으며 한정적으로 해석되어서는 안된다.The present invention can be embodied in many other forms without departing from the spirit or main features thereof. Therefore, the embodiments of the present invention are merely examples in all respects and should not be interpreted limitedly.

제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.The terms first, second, etc. may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.When a component is referred to as being "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that other components may be present in between. Should be. On the other hand, when a component is said to be "directly connected" or "directly connected" to another component, it should be understood that there is no other component in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구비하다", "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise", "comprise", "have", and the like are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification. Or other features or numbers, steps, operations, components, parts or combinations thereof in any way should not be excluded in advance.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art, and are not construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.

이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 대응하는 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings, and the same or corresponding components will be denoted by the same reference numerals regardless of the reference numerals and redundant description thereof will be omitted. In the following description of the present invention, if it is determined that the detailed description of the related known technology may obscure the gist of the present invention, the detailed description thereof will be omitted.

도 1은 본 발명의 일실시예에 따른 통합관리시스템을 보여주는 구성도이고, 도 2는 본 발명의 일실시예에 따른 통합관리시스템을 구성하는 에이전트의 내부 구성도이다. 1 is a block diagram showing an integrated management system according to an embodiment of the present invention, Figure 2 is an internal configuration diagram of an agent constituting the integrated management system according to an embodiment of the present invention.

본 발명의 일실시예에 따른 통합관리시스템은, 적어도 하나의 관리대상서버(100)에 설치된 에이전트(110) 및 이와 연동되는 통합관리서버(200)를 포함하는 통합관리시스템으로서, 도 1에 도시된 바와 같이, 에이전트(110), 통합관리서버(200), 관리콘솔(400), 클라이언트(500), 장애관제시스템(600)을 포함하여 구성된다.
The integrated management system according to an embodiment of the present invention is an integrated management system including an agent 110 installed in at least one management target server 100 and an integrated management server 200 linked thereto, as shown in FIG. 1. As shown, it comprises an agent 110, integrated management server 200, the management console 400, the client 500, the failure control system 600.

여기서, 관리대상서버(100)는 정보기술 인프라(IT Infra), 예를 들면, 서버/하드웨어(Server/Hardware), 네트워크(Network), 데이터베이스(Database, DB) 또는 정보기술(IT) 인프라를 바탕으로 서비스를 제공하는 응용프로그램(Application) 등을 포함할 수 있다. 이러한 관리대상서버는 예를 들어, EMS(Enterprise Management System), SMS(System Management System/Software/Service), NMS(Network Management System), AMS(Application Management System), FMS(Facility Management System), ITSM(IT service management) 등이 될 수 있다.
Here, the management target server 100 is based on information technology infrastructure (IT Infra), for example, server / hardware (Server / Hardware), network (Network), database (Database, DB) or information technology (IT) infrastructure It may include an application (Application) providing a service. Such managed servers are, for example, Enterprise Management System (EMS), System Management System / Software / Service (SMS), Network Management System (NMS), Application Management System (AMS), Facility Management System (FMS), ITSM ( IT service management).

상기 에이전트(110)는 상술한 관리대상서버(100)에 각각 설치되어 동작하는 프로그램의 형태로 구현되며, 일정한 주기별로 성능데이터와 통계데이터를 생성하여 상기 통합관리서버(200)로 전송하는 기능을 수행한다. The agent 110 is implemented in the form of a program installed and operated in each of the above-described management target server 100, the function of generating performance data and statistical data at regular intervals to transmit to the integrated management server 200 To perform.

상기 에이전트(110)는 다수의 관리대상서버(100a, 100b, …, 100n)에 각각 설치될 수 있으며, 도 1에 도시된 바와 같이, 제1관리대상서버(100a)에 제1에이전트(110a)가 설치되고, 제2관리대상서버(100b)에 제2에이전트(110b)가 설치되며, …, 제n관리대상서버(100n)에 제n에이전트(110n)가 각각 설치된다. The agent 110 may be installed in each of a plurality of management target servers 100a, 100b,..., 100n, and as shown in FIG. 1, the first agent 110a in the first management target server 100a. Is installed, the second agent 110b is installed on the second management target server 100b,. The nth agent 110n is installed in the nth management target server 100n, respectively.

한편, 도 2에 도시된 바와 같이, 각 에이전트(110)에는 각 성능정보 종류별로 또는 수행 기능별로 제1워커스레드(ws1, workerthread), 제2워커스레드(ws2), …, 제n워커스레드(ws3)와 같이 다수의 워커스레드(ws1, ws2, …, ws3)가 구비되며, 각 워커스레드는 동작을 위한 각각의 내부 스케쥴러(s1, s2, s3)를 구비할 수 있다. On the other hand, as shown in Figure 2, each agent 110 has a first worker thread (ws1, workerthread), second worker thread (ws2), ... for each performance information type or performance function. Like the nth worker thread ws3, a plurality of worker threads ws1, ws2, ..., ws3 are provided, and each worker thread may have respective internal schedulers s1, s2, and s3 for operation. .

상기 제1워커스레드(ws1)는, 예를 들어, 근실시간 성능정보 수집/전송 스레드가 될 수 있다. 이때, 제1워커스레드(ws1)는 각 성능정보 종류별로 적어도 하나 이상으로 생성되며, 내부 스케쥴러(s1)의 수집주기에 따라 멀티스레드 방식으로 해당 성능정보를 수집하여 성능데이터파일을 생성 및 저장하고, 상기 성능데이터를 상기 통합관리서버(200)로 전송할 수 있다. The first worker thread ws1 may be, for example, a near real time performance information collection / transmission thread. At this time, at least one first worker thread ws1 is generated for each type of performance information, and generates and stores a performance data file by collecting corresponding performance information in a multi-threaded manner according to a collection cycle of the internal scheduler s1. The performance data may be transmitted to the integrated management server 200.

상기 제2워커스레드(ws2)는, 예를 들어, 통계정보 생성/전송 스레드가 될 수 있다. 이때, 제2워커스레드(ws2)는 내부 스케쥴러(s2)의 통계주기에 따라 상기 성능데이터파일을 읽고 통계데이터를 생성하여 통계데이터파일로 저장하고, 상기 통계데이터를 상기 통합관리서버(200)로 전송할 수 있다. 또한, 상기 제2워커스레드(ws2)는, 상기 에이전트와 상기 통합관리서버가 통신불가시 전송하지 못한 성능정보를 통신이 가능한 때에 모아서 전송할 수 있다. The second worker thread ws2 may be, for example, a statistical information generation / transmission thread. At this time, the second worker thread (ws2) reads the performance data file according to the statistics cycle of the internal scheduler (s2), generates statistical data and stores it as a statistical data file, and stores the statistical data to the integrated management server (200). Can transmit In addition, the second worker thread ws2 may collect and transmit performance information that the agent and the integrated management server could not transmit when communication is impossible.

제3워커스레드(ws3)는, 예를 들어, 명령수행 스레드가 될 수 있다. 이때, 제3워커스레드(ws3)는 상기 제1워커스레드가 성능정보를 수집할 수 있도록 필요에 따라 쉘스크립트를 수행하여 성능데이터 생성을 위한 OS command 등의 명령을 수행할 수 있다. The third worker thread ws3 may be, for example, an instruction execution thread. In this case, the third worker thread ws3 may execute a shell script as needed so that the first worker thread may collect performance information, and perform a command such as an OS command for generating performance data.

제4워커스레드는, 예를 들어, 로그파일을 관리하기 위한 스레드가 될 수 있다. 이때, 제4워커스레드는 에이전트와 통합관리서버가 서로 통신이 불가함에 따라 에이전트에서 통합관리서버로 전송하지 못한 성능데이터를 설정에 의해 자동으로 삭제하여 디스크가 풀(full)이 되는 현상을 방지하도록 하는 기능을 수행한다. For example, the fourth worker thread may be a thread for managing a log file. At this time, the fourth worker thread automatically deletes the performance data that the agent could not transfer from the agent to the integrated management server by setting as the agent and the integrated management server cannot communicate with each other, thereby preventing the disk from becoming full. It performs the function.

상술한 바와 같은 워커스레드는 필요에 따라 3~4개에서 많게는 20개 이상으로도 구성될 수 있으며, 예를 들어, 수집해야 할 성능정보의 항목이 많아지면 성능정보를 수집하는 제1워커스레드가 여러개로 구성될 수 있다. The worker threads as described above may be configured from 3 to 4 or more than 20 as needed. For example, when there are more items of performance information to be collected, the first worker thread collecting performance information may be used. It may consist of several.

워커스레드(workerthread)는 멀티스레드(multithread) 방식으로 성능정보를 수집하기 위해서 공통으로 필요한 메소드(Method) 등을 정의해 놓은 최상위 모듈로서, 개별적으로 실행될 수 있으며, 수집하는 성능항목에 따라서 세부 내용은 변경이 가능하다. A worker thread is a top-level module that defines methods commonly required to collect performance information in a multithreaded manner, and can be executed separately. You can change it.

다른 관점에서, 워커스레드는 객체지향언어에서 부모 클래스 역할을 수행하는 상위 클래스 중 스레드 기능을 가진 성능수집모듈로 볼 수도 있으며, 예를 들면, 서버성능수집 워커스레드, Glance 성능 수집 워커스레드, DBMS Table space 상태 수집 워커스레드 등 다양한 워커스레드가 있을 수 있다.
In other respects, worker threads can be viewed as a thread-capable performance gathering module among parent classes that act as parent classes in object-oriented languages. For example, server performance gathering worker threads, Glance performance gathering worker threads, and DBMS tables. There can be various worker threads, including the space state collection worker thread.

상기 통합관리서버(200)는 관리대상서버(100)로부터 전송된 성능데이터와 통계데이터를 통합적으로 관리하기 위한 서버로서, 데이터 저장을 위한 WAS(Web Application Server)메모리(210)와 DBMS(Data Base Management System, 300)를 포함하여 구성된다. The integrated management server 200 is a server for integrally managing the performance data and statistical data transmitted from the management target server 100, WAS (Web Application Server) memory 210 and DBMS (Data Base) for data storage Management System, 300) is included.

상기 WAS메모리(210)와 DBMS(300)는 상기 통합관리서버(200)와 연동가능한 상태로 구성되며, 상기 통합관리서버(200)의 내부 또는 외부에 선택적으로 구성될 수 있음은 물론이다. The WAS memory 210 and the DBMS 300 are configured to be interoperable with the integrated management server 200, and may be selectively configured inside or outside the integrated management server 200.

상기 WAS메모리(210)는 상기 에이전트(110)에서 전송하는 성능데이터를 전송받아 저장하고, 상기 DBMS(300)는 상기 에이전트(110)에서 전송하는 성능데이터 및 통계데이터를 전송받아 저장한다. The WAS memory 210 receives and stores performance data transmitted from the agent 110, and the DBMS 300 receives and stores performance data and statistical data transmitted from the agent 110.

WAS메모리(210)는 예를 들어, WAS(Web Application Server)가 실행되고 있는 자바 가상머신(Java Virtual Machine)의 힙 메모리(heap memory)로 구현될 수 있다. The WAS memory 210 may be implemented as, for example, a heap memory of a Java virtual machine on which a web application server (WAS) is running.

한편, 상기 통합관리서버(200)는 상기 성능데이터 및 통계데이터를 상기 장애관제시스템(600)으로 제공하는 기능, 상기 에이전트(110)로부터 전송되는 임계치 초과여부 판단정보에 따라 이벤트를 발생시키고 장애관제시스템(600)으로 전송하는 기능을 수행한다.
On the other hand, the integrated management server 200 generates an event according to the function of providing the performance data and statistical data to the failure control system 600, the threshold exceeded determination information transmitted from the agent 110 and the failure control Transmits to the system 600.

상기 관리콘솔(400)은 상기 에이전트(110)를 제어하기 위해 상기 통합관리서버(200)와 접속가능하도록 구성되며, 상기 통합관리서버(200)로부터 상기 에이전트(110)의 상태를 주기적으로 전송받는다. The management console 400 is configured to be connected to the integrated management server 200 to control the agent 110, and receives the status of the agent 110 from the integrated management server 200 periodically. .

상기 관리콘솔(400)은 상기 통합관리서버(200)로부터 전송받은 상기 에이전트(110)의 상태를 통해 에이전트(110)의 상태를 감시할 수 있다. The management console 400 may monitor the state of the agent 110 through the state of the agent 110 received from the integrated management server 200.

이때, 에이전트(110)의 제어가 필요한 경우에 제어를 필요로 하는 해당 에이전트(110)에 대한 제어명령을 통합관리서버(200)에 전송하여 해당 에이전트(110)가 제어를 수행할 수 있도록 한다.
In this case, when control of the agent 110 is required, the control agent 110 transmits a control command for the corresponding agent 110 requiring control to the integrated management server 200 so that the agent 110 may perform control.

클라이언트(500)는 상기 관리대상서버(100)의 성능데이터, 통계데이터를 제공받을 수 있도록 상기 통합관리서버(200)와 접속가능하도록 구성된다. The client 500 is configured to be accessible to the integrated management server 200 to receive the performance data and statistical data of the management target server 100.

클라이언트(500)가 상기 통합관리서버(200)에 접속된 상태에서, 상기 클라이언트(500)가 상기 관리대상서버(100)의 성능데이터를 요청하면, 상기 통합관리서버(200)는 상기 WAS메모리(210)에 저장된 성능데이터를 XML(Extensible Markup Language), HTML(Hypertext Markup Language), SGML(Standard Generalized Markup Language) 중 어느 하나의 마크업 언어 형식으로 가공하여 URL(Uniform Resource Locator)로 제공한다. When the client 500 is connected to the integrated management server 200, when the client 500 requests the performance data of the management target server 100, the integrated management server 200 is the WAS memory ( The performance data stored in 210 is processed into any one markup language format among XML (Extensible Markup Language), HTML (Hypertext Markup Language), and SGML (Standard Generalized Markup Language) and provided as a Uniform Resource Locator (URL).

한편, 클라이언트(500)가 상기 통합관리서버(200)에 접속된 상태에서, 관리대상서버(100)의 성능정보의 연속된 추이 데이터를 요청하면, 상기 통합관리서버(200)는 DBMS(300)에 저장된 해당 관리대상서버(100)의 성능데이터를 이용하여 사용자 UI를 통해 차트와 같은 형태로 구현된 성능정보의 연속 추이 데이터를 제공한다.
On the other hand, when the client 500 is connected to the integrated management server 200, and requests continuous trend data of the performance information of the management target server 100, the integrated management server 200 is DBMS (300) Using the performance data of the corresponding management target server 100 stored in the user UI provides a continuous trend data of the performance information implemented in the form of a chart.

상기 장애관제시스템(600)은 상기 통합관리서버(200)로부터 전송되는 성능데이터 및 통계데이터를 제공받아 모니터링을 수행하며, 예를 들면, 종합상황판(대시보드), 웹보고서와 같은 웹브라우저에서 실행되는 웹프로그램과 PC에서 독립적으로 실행되는 데스크톱 성능조회 응용프로그램(Application) 등으로 구현될 수 있다. The failure control system 600 receives and monitors performance data and statistical data transmitted from the integrated management server 200, and executes the web browser such as a comprehensive status board (dashboard) or a web report. It can be implemented as a web program and a desktop performance query application that is executed independently on a PC.

또한, 상기 장애관제시스템(600)은 상기 통합관리서버(200)로부터 전송되는 이벤트 정보를 수신하는 기능을 수행한다.
In addition, the failure control system 600 performs a function of receiving the event information transmitted from the integrated management server 200.

이하에서는, 상술한 바와 같이, 에이전트, 통합관리서버, 관리콘솔, 클라이언트, 장애관제시스템을 포함하여 구성된 통합관리시스템에 의한 통합관리방법에 대하여 설명하도록 한다. Hereinafter, as described above, the integrated management method by the integrated management system including the agent, the integrated management server, the management console, the client, and the failure control system will be described.

도 3은 본 발명의 일실시예에 따른 통합관리방법의 성능정보 처리 과정을 보여주는 흐름도로서, 도 3을 참조하여 통합관리방법 중 성능정보 처리 과정에 대하여 설명하도록 한다. 3 is a flowchart illustrating a performance information processing process of the integrated management method according to an exemplary embodiment of the present invention. Referring to FIG. 3, the performance information processing process of the integrated management method will be described.

상기 성능정보 처리 과정은, 크게, 상기 에이전트가 상기 관리대상서버의 성능정보를 수집하여 성능데이터파일을 생성 및 저장하는 단계와, 상기 통합관리서버가 상기 성능데이터를 전송받아 저장하는 단계로 이뤄진다. The performance information processing process is largely comprised of the agent collecting performance information of the management target server to generate and store a performance data file, and the integrated management server receiving and storing the performance data.

상기 에이전트가 상기 관리대상서버의 성능정보를 수집하는 것은, 각 관리대상서버에서 제공되는 다양한 형식의 성능정보를 수집함으로써 이뤄질 수 있다. The agent collecting performance information of the management target server may be achieved by collecting performance information of various types provided by each management target server.

각 관리대상서버에서 타시스템에 성능정보를 제공해주는 방식은 각 관리대상서버별로 다양하게 제공되고 있으며, 그 일반적인 형식은 text log file, URL, DB접속, TCP/IP 프로토콜 등이 있다. There are various ways to provide performance information to each system in each managed server, and the general format is text log file, URL, DB connection, TCP / IP protocol, etc.

즉, 각 관리대상서버에서 text log file, URL, DB접속, TCP/IP 프로토콜 등의 형식으로 성능정보가 생성(S101)되고, 이렇게 생성된 성능정보를 에이전트가 수집(S103)하게 된다. That is, the performance information is generated in the form of text log file, URL, DB access, TCP / IP protocol, etc. in each managed server (S101), and the agent collects the generated performance information (S103).

즉, 관리대상서버에서 생성된 성능정보를 에이전트가 수집주기에 따라 주기적으로 수집하며, 이때, 관리대상서버에서 생성된 Log File을 읽거나, DB에 접속해서 Select SQL을 실행하거나, URL을 호출하여서 출력되는 데이터를 분석하거나, Socket 통신하여 이진데이터를 전송받아서 이를 분석하여 수집하게 된다. That is, the agent periodically collects the performance information generated by the managed server according to the collection cycle.In this case, by reading the log file generated by the managed server, connecting to a DB, executing Select SQL, or calling a URL It analyzes the output data or receives binary data through socket communication and collects it by analyzing it.

상술한 바와 같이, 상기 에이전트가 text log file, URL, DB접속, TCP/IP 프로토콜 등과 같은 다양한 형식의 성능정보를 수집할 수 있으므로, 서로 다른 형식을 제공하는 다양한 관리대상서버와 연동하여 통합적인 성능정보의 수집을 할 수 있게 된다. As described above, since the agent may collect performance information in various formats such as text log file, URL, DB access, TCP / IP protocol, etc., the integrated performance is linked with various management target servers providing different formats. Information can be collected.

한편, 상기 에이전트가 각 관리대상서버의 성능정보를 수집하는 것은, 내부 스케쥴러의 수집주기에 따라 주기적으로 각 성능정보 종류별로 생성된 워커스레드(workerthread)를 통해 멀티스레드(multithread) 방식으로 이뤄질 수 있다. Meanwhile, the agent collecting performance information of each management target server may be performed in a multithreaded manner through a worker thread generated for each type of performance information periodically according to a collection cycle of an internal scheduler. .

한편, 각각의 워커스레드가 멀티스레드 방식으로 이뤄지는 것은, 상기 스케쥴러에서 5초 단위의 수집주기마다 CPU성능정보 수집작업과 Memory성능정보 수집작업을 수행하는 경우를 예로 들어 설명할 수 있다. On the other hand, each worker thread is made in a multi-threaded manner, it can be described as an example of performing the CPU performance information collection task and the memory performance information collection task every 5 seconds collection cycle in the scheduler.

싱글스레드(Single-Thread) 방식으로 위 2가지 수집작업을 수행하는 경우에는, 09시00분00초에 1차로 CPU성능정보 수집작업을 수행하고, 이러한 CPU성능정보 수집작업이 완료되면 2차로 Memory성능정보 수직작업을 수행하게 되는데, 이러한 싱글스레드 방식은 수집해야할 성능정보들이 더 있다면 마지막 작업까지 끝마치는데 대기(Waiting)가 길어지게 되며, 그 결과 09시00분5초까지 작업이 끝나지 않을 수도 있게 되는 단점이 있다. In the case of performing the above two collection tasks in a single-threaded manner, the CPU performance information is collected first at 09:00:00, and when the CPU performance information collection is completed, the memory is secondarily. Performance information Vertical work is performed. If there is more performance information to be collected, this single-thread method waits longer to finish the last work. As a result, the work may not be completed until 09: 00: 5. There is a drawback to this.

이와 대비되는 멀티스레드 방식으로 위 2가지 수집작업을 수행하는 경우에는, 09시00분00초에 CPU성능정보 수집작업을 수행하면서 동시에 Memory성능정보 수집작업을 독립적으로 수행하게 되므로, 수집해야할 성능정보들이 선행작업이 끝나는 것과 상관없이 수행된다. 즉, 멀티스레드 방식은 여러 개의 작업이 동시에 수행될 수 있도록 해주어 대기가 짧아지는 장점이 있다. In the case of performing the above two collection tasks in a multi-threaded manner, the CPU performance information collection task is performed at 09:00:00 seconds while the memory performance information collection task is performed independently. Are performed regardless of whether the predecessor is finished. In other words, the multi-threaded method allows several tasks to be performed simultaneously, which shortens the wait.

또한, 5초 단위의 수집주기마다 물리적으로 다른 서버에 있는 성능정보를 수집해야할 경우에 네트워크 장애나 다른 장애요인에 의해서 처음의 수집주기에서 지연이 발생하여 5초 안에 데이터를 못 가져올 경우, 다음번 수집주기(5초 후)에 데이터를 가져올 수 없게 되는데, 이 경우 멀티스레드 방식에 의해 데이터를 가져오는 모듈을 독립적인 스레드로 별도 실행하여, 데이터 손실을 막을 수 있게 되는 장점도 있다. In addition, when it is necessary to collect performance information on another server physically every 5 seconds, if the data is not acquired within 5 seconds due to a delay in the initial collection cycle due to network failure or other obstacles, the next collection The data cannot be retrieved in a cycle (after 5 seconds). In this case, a module that imports data by a multithreaded method can be executed separately as an independent thread, thereby preventing data loss.

상기 에이전트가 각 성능정보별로 워커스레드를 생성하는 것은, 수집할 성능항목을 설정파일에 작성을 하고, 에이전트가 실행되면 설정파일에 설정된 정보를 로딩하여 각각의 워커스레드를 생성함에 따라 이뤄질 수 있고, 실행된 각각의 워커스레드가 성능정보를 수집하게 된다. The agent may create a worker thread for each performance information by writing a performance item to be collected in a configuration file, and when the agent is executed, load the information set in the configuration file to create each worker thread. Each worker thread executed will collect performance information.

한편, 에이전트에서 수집해야할 새로운 성능정보가 필요하다면, 새로운 워커스레드를 상기 에이전트에 추가하여 새로운 성능정보를 수집할 수 있게 된다. On the other hand, if new performance information needs to be collected from the agent, a new worker thread can be added to the agent to collect new performance information.

이때, 성능정보를 제공받을 수 있는 관리대상서버가 추가되고, 이를 통합관리해야할 필요성이 있다면, 새로운 성능정보에 대한 데이터의 구조를 분석하고, 그 데이터 구조에 맞는 새로운 워커스레드 모듈을 개발한 후 개발된 워커스레드 모듈을 해당 에이전트에 배포하여 업데이트시키며, 환경설정 파일에 새로 추가된 워커스레드 모듈의 정보를 입력하고 에이전트를 재시작함에 따라 새로운 성능정보를 수집할 수 있다. At this time, if a management target server that can receive performance information is added, and there is a need for integrated management, it analyzes the data structure of new performance information, develops a new worker thread module suitable for the data structure, and then develops it. Deploy and update the worker thread module to the agent, and input new worker thread module information in the configuration file and collect new performance information as the agent is restarted.

한편, 상기 에이전트는 수집된 성능정보로부터 text log file 형식의 성능데이터파일을 미리 정해진 형식대로 생성하여 상기 관리대상서버에 저장(S105)한다. 이때, 미리 정해진 형식은 데이터의 개수와 순서가 될 수 있다. On the other hand, the agent generates a performance data file of the text log file format from the collected performance information in a predetermined format and stores it in the management target server (S105). In this case, the predetermined format may be the number and order of data.

상기 성능데이터파일은, 이후의 통계데이터를 생성하는데 주로 사용되며, 이 외에도, 통합관리서버로 성능데이터의 전송이 실패했을 경우에 데이터 복원에도 사용될 수 있다. The performance data file is mainly used to generate statistical data thereafter, and in addition, it may be used to restore data when transmission of performance data to the integrated management server fails.

상기 성능데이터파일은 예를 들어, 에이전트가 설치되어 있는 해당 관리대상서버의 하드디스크에 text log file 형식으로 저장이 될 수 있고, 저장 이전의 성능데이터를 상기 에이전트가 통합관리서버로 직접 HTTP 방식으로 전송하거나, text log file에 저장된 성능데이터를 개별 단위로 읽어서 통합관리서버로 HTTP 방식으로 전송한다. The performance data file may be stored, for example, in a text log file format on a hard disk of a corresponding management target server on which an agent is installed, and the performance data before storage is directly transmitted to the integrated management server by an HTTP method. Alternatively, the performance data stored in the text log file can be read in individual units and transmitted to the integrated management server via HTTP.

이때, text log file을 1줄씩 읽어서 전송하는 것이 바람직하며, text log file의 1줄이 수집한 성능정보 1개의 개별 데이터 단위가 된다. 단, 성능정보 1개의 데이터에는 여러 개의 데이터가 포함될 수 있으며, 예를 들면, CPU사용율, 메모리사용량, 메모리사용률, 프로세스개수, 가상메모리사용량, 가상메모리사용률 등이 포함될 수 있다. In this case, it is preferable to read the text log file by one line and transmit it. One line of the text log file becomes one individual data unit of the collected performance information. However, one piece of performance information may include a plurality of data, for example, CPU usage, memory usage, memory usage, number of processes, virtual memory usage, virtual memory usage.

여기서, 상기 에이전트의 내부에서 동작하는 각각의 워커스레드가 개별적으로 HTTP(HyperText Transfer Protocol) 방식을 통하여 통합관리서버로 성능데이터를 전송(S106)한다. Here, each worker thread operating in the agent individually transmits performance data to the integrated management server through HTTP (HyperText Transfer Protocol) method (S106).

한편, 에이전트와 통합관리서버가 HTTP 방식을 이용함에 따라 통합관리서버의 부하가 줄어들게 된다. On the other hand, as the agent and the integrated management server uses the HTTP method, the load on the integrated management server is reduced.

HTTP(HyperText Transfer Protocol)는 상호 간의 연결 상태를 유지하지 않는 프로토콜로서, 일반적으로 클라이언트 쪽의 요청(request)에 의해 송수신을 위한 TCP의 연결을 설정하고 요청 메시지를 보내면, 서버 쪽은 요청된 메시지에 대한 응답을 보내는 것으로서 연결을 해제하는 방식을 취한다. HyperText Transfer Protocol (HTTP) is a protocol that does not maintain a mutual connection state. Generally, when a client-side request establishes a TCP connection for sending and receiving and sends a request message, the server side attaches to the requested message. It takes a way to disconnect by sending a response.

따라서, 지속적인 연결 상태를 유지하지 않는다는 점에서 관리서버의 부하가 줄어들게 되며, 에이전트의 수가 증가하여도 통합관리서버의 부하는 크게 증가하지 않는 이점이 있다. Therefore, the load of the management server is reduced in that it does not maintain a continuous connection state, there is an advantage that the load of the integrated management server does not increase significantly even if the number of agents increases.

상술한 바와 같이, 상기 통합관리서버는 상기 에이전트로부터 개별 데이터 단위로 전송받은 성능데이터를 DBMS와 WAS메모리에 동시 저장(S107)하게 된다. As described above, the integrated management server simultaneously stores the performance data received from the agent in individual data units in the DBMS and the WAS memory (S107).

상기 WAS메모리에 저장된 성능데이터는 종합상황판 등과 같은 장애관제시스템으로 전송(S108)될 수 있으며, 이를 통해 상기 장애관제시스템에서 상기 관리대상서버의 성능데이터를 모니터링(S109)할 수 있게 된다. The performance data stored in the WAS memory may be transmitted to a failure control system such as a comprehensive situation board (S108), through which the performance data of the management target server may be monitored (S109).

한편, 클라이언트가 상기 통합관리서버와 접속된 상태에서 상기 관리대상서버의 실시간 성능데이터를 요청(S111)하는 경우에, 상기 통합관리서버는 상기 WAS메모리에 저장된 성능데이터를 XML, HTML, SGML 중 어느 하나의 마크업 언어 형식으로 가공하여 URL(uniform resource locator)로 제공(S113)하며, 이를 통해 클라이언트가 관리대상서버의 실시간 성능데이터를 모니터링(S115)할 수 있게 된다. Meanwhile, when the client requests the real-time performance data of the management target server while the client is connected with the integrated management server (S111), the integrated management server sends the performance data stored in the WAS memory to any one of XML, HTML, and SGML. Processed in one markup language format is provided as a URL (uniform resource locator) (S113), through which the client can monitor the real-time performance data of the managed server (S115).

예를 들어, 상기 클라이언트가 상기 통합관리서버에 URL을 호출하면, WAS메모리에 저장된 성능데이터를 XML 형태로 웹페이지 상에 출력이 되며, 이러한 XML 데이터를 사용하여 클라이언트에서 여러 형태의 데이터로 가공하여 사용한다. 클라이언트에서 호출하는 URL의 경로 또는 파라메터 값에 의해서 다양한 정보를 보내주는 것이 가능하다. For example, when the client calls the URL to the integrated management server, the performance data stored in the WAS memory is output on the web page in XML form, and the XML data is processed into various types of data by the client. use. It is possible to send various information by the path or parameter value of the URL called by the client.

클라이언트에게 URL 형태로 제공하는 것은 통합관리서버의 부하를 줄이기 위한 것으로, 일반적으로 웹사이트에서 웹페이지를 동시에 여러 사용자에게 제공하는 원리와 동일하다. 즉, 10개의 클라이언트가 DBMS에 직접 접속하여 10번의 데이터를 가져오는 것보다 10개의 클라이언트가 웹페이지를 10번 조회하는 것이 부하를 줄일 수 있는 것이다. Providing the client in the form of URL is to reduce the load of the integrated management server, and it is generally the same as the principle of providing web pages to multiple users at the same time. In other words, ten clients can view the web page ten times rather than ten clients directly access the DBMS to retrieve ten times of data.

예를 들어 설명한 바와 같이, WAS메모리에 저장된 실시간 성능데이터를 클라이언트에게 XML 형식으로 가공하여 URL로 제공함에 따라 통합관리서버의 물리적인 부하를 줄이고, 빠른 응답이 가능하게 된다. For example, as described above, by processing the real-time performance data stored in the WAS memory in the XML format to the client as a URL to reduce the physical load of the integrated management server, it is possible to respond quickly.

한편, 클라이언트가 상기 통합관리서버와 접속된 상태에서 상기 관리대상서버의 연속된 성능데이터에 대한 추이(推移) 요청(S117)하는 경우에, 상기 통합관리서버는 상기 DBMS에 저장된 성능데이터를 이용하여 연속된 성능데이터를 제공(S119)하며, 이를 통해 클라이언트가 관리대상서버의 연속된 성능데이터를 모니터링(S121)할 수 있게 된다. 상기 연속된 성능데이터는, 예를 들어, 그래프 또는 테이블 등 차트 형태의 성능데이터가 될 수 있다. On the other hand, when a client requests a transition (推移) for the continuous performance data of the management server in the state connected to the integrated management server (S117), the integrated management server uses the performance data stored in the DBMS Providing the continuous performance data (S119), through which the client can monitor the continuous performance data of the management target server (S121). The continuous performance data may be, for example, performance data in the form of a chart such as a graph or a table.

상기 클라이언트는, 사용자 PC에서 구동되는 응용프로그램으로 이뤄질 수 있으며, 예를 들면, 종합적인 성능데이터를 실시간으로 감시할 수 있는 종합상황판(대시보드), 웹보고서와 같이 웹브라우저에서 실행되는 웹프로그램, 사용자 PC에서 독립적으로 실행되는 데스크톱 성능조회 응용프로그램 등이 있을 수 있다.
The client may be composed of an application program running on a user PC, for example, a comprehensive status board (dashboard) capable of real-time monitoring of comprehensive performance data, a web program executed in a web browser such as a web report, There may be a desktop performance query application that runs independently on the user's PC.

도 4는 본 발명의 일실시예에 따른 통합관리방법의 통계정보 처리 과정을 보여주는 흐름도로서, 도 4를 참조하여 통합관리방법 중 통계정보 처리 과정에 대하여 설명하도록 한다. 4 is a flowchart illustrating a statistical information processing process of the integrated management method according to an embodiment of the present invention. Referring to FIG. 4, the statistical information processing process of the integrated management method will be described.

상기 통계정보 처리 과정은, 크게, 상기 에이전트가 상기 성능데이터파일을 읽고 통계데이터를 생성하여 통계데이터파일로 저장하는 단계와, 상기 통합관리서버가 상기 통계데이터파일을 전송받아 저장하는 단계로 이뤄진다. The statistical information processing process is largely performed by the agent reading the performance data file, generating statistical data and storing the statistical data file, and the integrated management server receiving and storing the statistical data file.

상기 에이전트가 상기 성능데이터파일을 읽고 생성하는 통계데이터는, 분(minute), 시(hour), 일(day) 중 적어도 어느 하나의 통계주기 단위에 대한 상기 성능데이터의 평균값, 최대값, 최소값 중 적어도 어느 하나로 이뤄질 수 있다. Statistical data that the agent reads and generates the performance data file is one of an average value, a maximum value, and a minimum value of the performance data for at least one statistical period unit among minutes, hours, and days. At least one can be done.

즉, 상기 에이전트가 text Log File 형태로 상기 관리대상서버에 저장된 성능데이터파일을 읽고, 상기 성능데이터파일로부터 통계데이터를 생성하여 text Log File 형태의 통계데이터파일을 관리대상서버에 저장(S201)한다. That is, the agent reads the performance data file stored in the management target server in the form of a text log file, generates statistical data from the performance data file, and stores the statistical data file in the form of a text log file in the management target server (S201). .

예를 들어, 상기 통계데이터는 각 성능항목 분단위 최소·최대·평균치, 시단위 최소·최대·평균치, 일단위 최소·최대·평균치 등이 될 수 있다. For example, the statistical data may be the minimum, maximum, average, minute, maximum, average, hourly, minimum, maximum, average of each performance item.

이때, 상기 통계데이터는 에이전트 내부에 생성된 워커스레드에 의해 독립적으로 생성될 수 있다. In this case, the statistical data may be independently generated by a worker thread generated inside the agent.

상세하게, 상기 에이전트 내부에서 통계데이터 생성을 담당하는 워커스레드의 스케쥴러에 의해 통계데이터 생성 시간이 되면, text Log File 형식의 성능데이터파일의 데이터를 개별 단위(예를 들어, 1줄씩)로 읽어서 배열로 저장한 후, 배열의 크기만큼 루프(Loop)를 돌면서 분/시/일 단위의 통계데이터를 생성하여 text Log File 형태의 통계데이터파일을 관리대상서버에 저장한다. In detail, when the statistics data generation time is reached by the worker thread scheduler in charge of generating the statistics data in the agent, the data of the performance data file in the text Log File format is read and arranged in individual units (for example, one line). After saving as, create statistical data in minute / hour / day by looping as much as the size of the array and save the statistical data file in text log file format on the server to be managed.

상기 통합관리서버가 상기 통계데이터파일을 전송받아 저장하는 단계는, 구체적으로, 상기 통합관리서버가 상기 에이전트로부터 상기 통계데이터에 대한 전송허락 요청을 전송받아 상기 DBMS의 요청큐(request queue)에 저장하고, 그런 다음, 상기 통합관리서버가 상기 요청큐에 저장된 각 통계데이터 전송허락 요청에 대해 순차적으로 해당 에이전트에 전송승락을 전송하고 해당 에이전트로부터 통계데이터를 전송받아 상기 DBMS에 저장하여 이뤄질 수 있다. In the receiving and storing the statistical data file by the integrated management server, specifically, the integrated management server receives a transmission permission request for the statistical data from the agent and stores it in a request queue of the DBMS. Then, the integrated management server may be made by sequentially transmitting the transmission approval to the corresponding agent for each statistical data transmission permission request stored in the request queue, and receives the statistical data from the agent to store in the DBMS.

상세하게, 상기 에이전트가 상기 통계데이터를 상기 통합관리서버에 전송하기 위해 상기 통합관리서버에 전송허락 요청(S203)을 하고, 상기 통합관리서버가 상기 에이전트의 전송허락 요청을 DBMS의 요청큐에 저장(S205)을 하며, 상기 통합관리서버가 상기 요청큐에 저장된 에이전트의 전송허락 요청을 주기적으로 확인(S207)하여 순차적으로 해당 에이전트에 통계데이터 전송승락을 전송(S209)한다.In detail, the agent makes a transmission permission request (S203) to the integrated management server to transmit the statistical data to the integrated management server, and the integrated management server stores the transmission permission request of the agent in a request queue of a DBMS. (S205), the integrated management server periodically checks the transmission permission request of the agent stored in the request queue (S207) and sequentially transmits the statistical data transmission acceptance to the corresponding agent (S209).

그런 다음, 상기 에이전트가 주기적으로 상기 전송승락을 확인(S211)하고, 상기 통합관리서버의 전송승락을 전송받은 해당 에이전트가 통계데이터를 상기 통합관리서버에 전송(S213)하게 되며, 이때 상기 통계데이터는 성능데이터와 마찬가지로 HTTP(HyperText Transfer Protocol) 방식으로 전송되어 상기 통합관리서버의 DBMS에 저장(S215)된다. Then, the agent periodically checks the transmission acceptance (S211), and the agent receiving the transmission acceptance of the integrated management server transmits statistical data to the integrated management server (S213), wherein the statistical data Like the performance data is transmitted in HTTP (HyperText Transfer Protocol) method is stored in the DBMS of the integrated management server (S215).

여기서, 상술한 바와 같이, 상기 통합관리서버가 상기 에이전트의 요청에 따라 순차적으로 통계데이터를 전송받도록 하는 것은, 통합관리서버의 관리부하를 줄이기 위한 것이다. Here, as described above, it is to reduce the management load of the integrated management server so that the integrated management server receives the statistical data sequentially in response to the request of the agent.

관리대상서버가 소수일 때는 문제가 되지 않지만 수십 대 이상이 되는 경우에, 다수의 에이전트에서 동시에 통계데이터 전송시 통합관리서버에는 많은 부하가 걸려 다른 작업을 수행할 수 없게 되는 문제가 있게 되므로, 위와 같은 방식으로, 각 관리대상서버의 통계데이터는 해당 관리대상서버에서 에이전트에 의해 개별적으로 생성되어 저장되고, 이러한 통계데이터가 상기 통합관리서버로 순차적으로 전송되도록 하여 통합관리서버의 관리부하를 줄일 수 있게 된다. This is not a problem when the number of managed servers is small, but when there are more than a few dozens, there is a problem that the integrated management server takes a lot of load and cannot perform other tasks when transmitting statistical data from many agents at the same time. In the same way, the statistical data of each managed server is individually generated and stored by the agent in the managed server, and the statistical data is sequentially transmitted to the integrated management server to reduce the management load of the integrated management server. Will be.

한편, 상기 통합관리서버가 상기 에이전트로부터 상기 통계데이터를 전송받을 시 상기 통계데이터는 해당 에이전트의 버퍼 크기로 분할하여 전송받는 것이 바람직하다. Meanwhile, when the integrated management server receives the statistical data from the agent, the statistical data is preferably divided into buffer sizes of the corresponding agent and transmitted.

예를 들어, 통계데이터를 전송하는 워커스레드가 text log file 형식의 통계데이터파일을 1줄씩 읽어서 에이전트의 버퍼(메모리)에 담아 두었다가 일정한 크기가 되면 통합관리서버로 전송하게 되고, 전송이 완료된 후 버퍼를 초기화하여 상기 전송과정을 반복하게 되며, text log file 형식의 통계데이터파일의 내용을 모두 읽어서 전송할 때까지 반복하게 된다. 상기 버퍼의 크기는 관리대상서버의 사양에 따라서 변경될 수 있다. For example, a worker thread that sends statistical data reads a statistical data file in text log file format line by line, puts it in the buffer (memory) of the agent, and transfers it to the integrated management server when it reaches a certain size. By repeating the transmission process is repeated, it is repeated until all the contents of the statistical data file of the text log file format is read and transmitted. The size of the buffer may be changed according to the specification of the server to be managed.

실시간으로 수집된 성능정보는 그 당시 수집된 성능데이터를 전송하기 때문에 전송할 데이터의 양이 많지 않지만, 통계데이터는 다량의 성능데이터를 통해 평균치, 최대값, 최소값을 배치(Batch)로 한번에 생성하기 때문에 통합관리서버로 전송할 데이터의 양이 상대적으로 크게 되기 때문에 분할 전송하는 방식을 이용한다. Since the performance information collected in real time transmits the performance data collected at that time, the amount of data to be transmitted is not large.However, since statistical data generates average, maximum, and minimum values at once through a large amount of performance data, Since the amount of data to be transmitted to the integrated management server becomes relatively large, a split transmission method is used.

상술한 바와 같이, 상기 통합관리서버가 상기 통계데이터를 분할하여 전송받도록 함에 따라 통합관리서버의 관리부하를 줄일 수 있게 된다. As described above, the management load of the integrated management server can be reduced by allowing the integrated management server to receive the divided statistical data.

상기 DBMS에 저장된 통계데이터는 종합상황판 등과 같은 장애관제시스템으로 전송(S217)될 수 있으며, 이를 통해 상기 장애관제시스템에서 상기 관리대상서버의 통계데이터를 모니터링(S219)할 수 있게 된다. The statistical data stored in the DBMS may be transmitted to a failure control system such as a comprehensive situation board (S217), through which the statistical data of the management target server may be monitored (S219) in the failure control system.

또한, 상기 통합관리서버와 접속가능한 클라이언트가, 상기 통합관리서버와 접속된 상태에서 상기 관리대상서버의 통계데이터를 요청(S221)하는 경우에, 상기 통합관리서버는 상기 DBMS에 저장된 통계데이터를 제공(S223)하며, 이를 통해 상기 클라이언트가 관리대상서버의 통계데이터를 모니터링(S225)할 수 있게 된다.
In addition, when a client accessible to the integrated management server requests statistical data of the management target server in a state of being connected with the integrated management server (S221), the integrated management server provides statistical data stored in the DBMS. (S223), through which the client can monitor the statistical data of the management target server (S225).

도 5는 본 발명의 일실시예에 따른 통합관리방법의 제어정보 처리 과정을 보여주는 흐름도로서, 도 5를 참조하여 통합관리방법 중 제어정보 처리 과정에 대하여 설명하도록 한다. FIG. 5 is a flowchart illustrating a control information processing process of an integrated management method according to an embodiment of the present invention. Referring to FIG. 5, the control information processing process of the integrated management method will be described.

상기 제어정보 처리 과정은, 상기 통합관리서버가 상기 에이전트의 상태를 전송받아 관리콘솔에 주기적으로 제공하는 단계, 상기 통합관리서버가 상기 관리콘솔로부터 제어가 필요한 에이전트에 대한 제어명령을 전송받고 해당 제어명령을 상기 DBMS의 제어큐(control queue)에 저장하는 단계, 상기 에이전트가 상기 DBMS의 제어큐에 저장된 제어명령을 주기적으로 확인하여 해당 에이전트에 대한 제어명령이 있을시 그 제어명령을 실행하는 단계;를 포함하여 이뤄진다. The control information processing process, the integrated management server to receive the status of the agent periodically provided to the management console, the integrated management server receives a control command for the agent that needs to control from the management console and the corresponding control Storing a command in a control queue of the DBMS, and periodically checking the control command stored in the control queue of the DBMS and executing the control command when there is a control command for the agent; This is done, including.

상세하게는, 상기 에이전트는 상기 관리대상서버에서 동작하는 자신의 상태에 대한 정보를 상기 통합관리서버에 전송(S301)하게 되고, 상기 에이전트의 상태에 대한 정보를 전송받은 통합관리서버는 상기 에이전트의 상태에 대한 정보를 관리콘솔에 주기적으로 제공(S303)한다. In detail, the agent transmits information on its own state operating in the management target server to the integrated management server (S301), and the integrated management server receiving the information on the state of the agent transmits the information of the agent. Information about the status is periodically provided to the management console (S303).

이에 따라, 상기 관리콘솔은 상기 에이전트의 상태를 파악하여 감시(S305)할 수 있게 된다. Accordingly, the management console can monitor the status of the agent (S305).

이때, 상기 관리콘솔은 에이전트의 상태에 따라 제어가 필요한 에이전트에 제어명령(S307)을 할 수 있으며, 상기 통합관리서버가 상기 관리콘솔로부터 제어가 필요한 에이전트에 대한 제어명령을 전송받고 해당 제어명령을 상기 DBMS의 제어큐(control queue)에 저장(S309)하게 된다. At this time, the management console may make a control command (S307) to the agent that needs control according to the state of the agent, the integrated management server receives a control command for the agent that needs control from the management console and receives the control command It is stored in the control queue of the DBMS (S309).

상기 에이전트는 상기 DBMS의 제어큐를 주기적으로 확인(S311)하고, 상기 DBMS의 제어큐에 자신에 대한 제어명령이 있을 경우에, 그 제어명령을 수신(S313)하여 실행(S315)하게 된다. The agent periodically checks the control queue of the DBMS (S311), and when there is a control command for itself in the control queue of the DBMS, the agent receives the control command (S313) and executes (S315).

즉, 상기 통합관리서버가 상기 에이전트에 제어명령을 제공(push)하는 방식이 아니고 상기 에이전트가 상기 통합관리서버의 DBMS의 제어큐에 저장된 제어명령을 주기적으로 확인하는 방식으로 이뤄짐에 따라 상기 통합관리서버의 관리부하가줄어들 수 있게 된다. That is, the integrated management server is not a method of providing a control command to the agent (push), but the agent is made in a manner of periodically checking the control command stored in the control queue of the DBMS of the integrated management server the integrated management The administrative load on the server can be reduced.

이때, 에이전트의 상태에 대한 정보를 상기 통합관리서버에 전송하는 것과, 상기 DBMS의 제어큐를 주기적으로 확인하는 것, 해당 제어명령이 있을시 그 제어명령을 수신하여 실행하는 것은 해당 에이전트에 의해 이루어질 수 있다. In this case, transmitting information on the status of the agent to the integrated management server, periodically checking the control queue of the DBMS, receiving and executing the control command when the control command is present is performed by the agent. Can be.

한편, 상기 에이전트와 통합관리서버 간의 제어 명령에 대한 규약이 있고, 관리콘솔에서 관리대상서버의 에이전트를 제어하기 위해서 관리대상서버의 IP를 고유한 Key로 사용할 수 있다. On the other hand, there is a protocol for the control command between the agent and the integrated management server, in order to control the agent of the management server in the management console can use the IP of the management server as a unique key.

예를 들어, 상기 에이전트가 주기적으로 통합관리서버의 제어큐에 제어명령이 있는지 유무를 확인하고, 상기 에이전트가 설치된 관리대상서버의 IP와 동일한 IP로 제어명령이 제어큐에 존재하면 그 제어명령을 수신하고 실행하여 에이전트가 제어될 수 있게 된다.
For example, the agent periodically checks whether there is a control command in the control queue of the integrated management server, and if the control command exists in the control queue with the same IP as the IP of the management target server where the agent is installed, the control command is executed. Receipt and execution allow the agent to be controlled.

도 6은 본 발명의 일실시예에 따른 통합관리방법의 장애정보 처리 과정을 보여주는 흐름도로서, 도 6을 참조하여 통합관리방법 중 장애정보 처리 과정에 대하여 설명하도록 한다. FIG. 6 is a flowchart illustrating a process for processing failure information of the integrated management method according to an exemplary embodiment of the present invention. Referring to FIG.

상기 장애정보 처리 과정은, 상기 에이전트가, 기설정된 임계치와 수집한 성능데이터를 비교하여 임계치 초과 여부를 판단(S401)하고, 상기 통합관리서버가, 상기 에이전트로부터 상기 판단결과를 수신하고 상기 판단결과가 상기 임계치를 초과한 경우에 이벤트를 발생하여 장애관제시스템으로 전송하는 과정이다. In the failure information processing, the agent compares a predetermined threshold with collected performance data to determine whether a threshold is exceeded (S401), and the integrated management server receives the determination result from the agent and determines the determination result. If is exceeded the threshold is a process of generating an event and transmitting to the failure control system.

상기 도 3에 도시된 바와 같은 성능정보 처리 과정에 의해서, 상기 통합관리서버는 관리대상서버의 성능데이터를 전송(S402)받게 되는데, 이때, 임계치 초과 여부에 대판 에이전트의 판단결과에 대한 정보도 상기 성능데이터와 함께 전송받게 된다. By the performance information processing process as shown in FIG. 3, the integrated management server receives the performance data of the management target server (S402). At this time, the information on the determination result of the large agent is also determined whether the threshold value is exceeded. It is sent along with the performance data.

상기 통합관리서버는 에이전트에서 판단한 임계치 초과여부에 대한 정보를 전송받고, 이를 근거로 하여 임계치 초과시 이벤트를 발생한다. The integrated management server receives information on whether the threshold is exceeded determined by the agent, and generates an event when the threshold is exceeded based on the information.

이벤트가 발생한 경우에, 상기 통합관리서버는 장애관제시스템 또는 관리담당자에게 즉각적인 통보(S405)를 하며, 예를 들면, 휴대폰 문자전송, 종합상황판으로 이벤트 내용 전송 등을 통하여 관리담당자가 이벤트를 즉각적으로 알 수 있도록 한다. When an event occurs, the integrated management server immediately informs the failure control system or the administrator in charge (S405), and for example, the administrator in charge immediately sends the event through a text message sent to the comprehensive situation board, the event contents, etc. Make sure you know.

예를 들어, "20%미만 Normal, 20%이상 40%미만 Warning, 40%이상 60%미만 Minor, 60%이상 80미만 Major, 80%이상 Critical"과 같이 5단계로 임계치가 설정되어 있는 경우에, 상기 통합관리서버는 각각의 임계치에 해당하는 이벤트의 내용을 장애관제시스템으로 전송하거나 관리담당자에게 휴대폰 문자를 전송할 수 있다. For example, if the threshold is set in 5 steps, such as "Less than 20% Normal, More than 20% and less than 40% Warning, More than 40% and less than 60% Minor, More than 60% and less than 80 Major, More than 80% and Critical" In addition, the integrated management server may transmit the contents of the event corresponding to each threshold to the failure control system or transmit a mobile phone text to the management personnel.

한편, 상술한 바와 같이, 이벤트가 발생한 경우, 상기 이벤트의 내용이 text log file의 형식으로 상기 통합관리서버에 저장될 수 있다. 예를 들어, text log file에는 이벤트 발생일자, 발생 시스템, 어플리케이션, 등급, 이벤트 내용 등을 포함할 수 있다. On the other hand, as described above, when the event occurs, the content of the event may be stored in the integrated management server in the form of a text log file. For example, the text log file may include an event occurrence date, an occurrence system, an application, a rating, and an event content.

본 발명은 첨부된 도면을 참조하여 바람직한 실시예를 중심으로 기술되었지만 당업자라면 이러한 기재로부터 본 발명의 범주를 벗어남이 없이 많은 다양하고 자명한 변형이 가능하다는 것은 명백하다. 따라서 본 발명의 범주는 이러한 많은 변형예들을 포함하도록 기술된 특허청구범위에 의해서 해석돼야 한다.Although the present invention has been described with reference to the preferred embodiments thereof with reference to the accompanying drawings, it will be apparent to those skilled in the art that many other obvious modifications can be made therein without departing from the scope of the invention. Accordingly, the scope of the present invention should be interpreted by the appended claims to cover many such variations.

100:관리대상서버 110:에이전트
200:통합관리서버 210:WAS메모리
300:DBMS 400:관리콘솔
500:클라이언트 600:장애관제시스템
ws:워커스레드 s:스케쥴러
100: managed server 110: agent
200: integrated management server 210: WAS memory
300: DBMS 400: Management Console
500: Client 600: Fault Control System
ws: Workers Red s: Scheduler

Claims (21)

적어도 하나의 관리대상서버에 설치된 에이전트를 통한 통합관리서버의 관리방법으로서,
상기 에이전트가, 각 성능정보 종류별로 생성된 워커스레드를 통해 해당 워커스레드에 구비된 내부 스케쥴러의 수집주기에 따라 멀티스레드(multithread) 방식으로 해당 성능정보를 수집하여 성능데이터파일을 생성 및 저장하는 단계;
상기 통합관리서버가, 상기 에이전트로부터 HTTP(HyperText Transfer Protocol) 방식으로 상기 에이전트가 수집한 개별 성능데이터를 저장 이전에 직접 전송받거나 상기 저장된 성능데이터파일로부터 읽혀진 성능데이터를 개별 데이터 단위로 전송받아 DBMS 및 WAS메모리에 동시 저장하는 단계;를 포함하는 성능정보 처리 과정; 및
상기 에이전트가, 통계데이터 생성을 담당하는 워커스레드에 구비된 내부 스케쥴러의 통계주기에 따라 상기 성능데이터파일에 저장된 데이터로부터 통계데이터를 생성하여 통계데이터파일로 저장하는 단계;
상기 통합관리서버가, 상기 에이전트로부터 상기 통계데이터에 대한 전송허락 요청을 전송받아 상기 DBMS의 요청큐(request queue)에 저장하는 단계;
상기 통합관리서버가, 상기 요청큐에 저장된 각 통계데이터 전송허락 요청에 대해 순차적으로 해당 에이전트에 전송승락을 전송하고 해당 에이전트로부터 통계데이터를 HTTP 방식으로 전송받아 상기 DBMS에 저장하는 단계;를 포함하는 통계정보 처리 과정;을 포함하여 구성되며,
상기 통합관리서버와 접속된 클라이언트의 실시간 성능데이터 요청시 상기 WAS메모리에 저장된 성능데이터를 XML 형식으로 가공하여 URL로 제공하는 것을 특징으로 하는 통합관리방법.
A method for managing an integrated management server through an agent installed on at least one managed server,
Generating, and storing, the performance data file by collecting the performance information in a multithreaded manner according to the collection cycle of the internal scheduler provided in the worker thread through the worker thread generated for each type of performance information; ;
The integrated management server directly receives the individual performance data collected by the agent from the agent in HTTP (HyperText Transfer Protocol) method before being stored, or receives the performance data read from the stored performance data file in individual data units. Simultaneously storing the information in a WAS memory; And
Generating, by the agent, statistical data from data stored in the performance data file according to a statistical period of an internal scheduler of a worker thread in charge of generating statistical data and storing the statistical data as a statistical data file;
Receiving, by the integrated management server, a transmission permission request for the statistical data from the agent and storing the request in the request queue of the DBMS;
And transmitting, by the integrated management server, a transmission permission to the corresponding agent in sequence for each statistical data transmission permission request stored in the request queue, and receiving statistical data from the corresponding agent in an HTTP manner and storing the received data in the DBMS. Statistical information processing process;
When the real-time performance data request of the client connected to the integrated management server, the integrated management method characterized in that the processing of the performance data stored in the WAS memory in XML format to provide as a URL.
제1항에 있어서,
상기 성능정보 처리 과정에서, 상기 에이전트는,
text log file, URL, DB접속, TCP/IP 프로토콜 중 적어도 어느 하나의 형식을 갖는 성능정보를 상기 관리대상서버로부터 제공받아, text log file 형식의 성능데이터파일을 상기 관리대상서버에 생성 및 저장하는 것을 특징으로 하는 통합관리방법.
The method of claim 1,
In the performance information processing process, the agent,
Receiving performance information having at least one of a text log file, a URL, a DB connection, and a TCP / IP protocol from the management server, and generating and storing a performance data file in a text log file format in the management server. Integrated management method characterized in that.
삭제delete 삭제delete 제1항에 있어서,
상기 통계정보 처리 과정에서, 상기 통합관리서버는,
상기 에이전트로부터 상기 통계데이터를 해당 에이전트의 버퍼 크기로 분할하여 전송받는 것을 특징으로 하는 통합관리방법.
The method of claim 1,
In the statistical information processing, the integrated management server,
Integrated management method, characterized in that for receiving the statistical data divided by the agent buffer size of the agent.
삭제delete 제1항에 있어서,
상기 통합관리서버와 접속된 클라이언트의 연속된 성능데이터에 대한 추이(推移) 요청시 상기 DBMS에 저장된 성능데이터를 이용하여 연속된 성능데이터를 제공하는 것을 특징으로 하는 통합관리방법.
The method of claim 1,
Integrated management method characterized in that to provide a continuous performance data using the performance data stored in the DBMS when the transition request for the continuous performance data of the client connected to the integrated management server.
제1항에 있어서,
상기 통계데이터는, 분(minute), 시(hour), 일(day) 중 적어도 어느 하나의 통계주기 단위에 대한 상기 성능데이터의 평균값, 최대값, 최소값 중 적어도 어느 하나인 것을 특징으로 하는 통합관리방법.
The method of claim 1,
The statistical data is integrated management, characterized in that at least any one of the average value, the maximum value, the minimum value of the performance data for at least one of the statistical period unit of minutes, hours, days (day) Way.
제1항에 있어서,
상기 통합관리서버가, 상기 에이전트의 상태를 전송받아 관리콘솔에 주기적으로 제공하는 단계; 상기 통합관리서버가, 상기 관리콘솔로부터 제어가 필요한 에이전트에 대한 제어명령을 전송받고, 해당 제어명령을 상기 DBMS의 제어큐(control queue)에 저장하는 단계; 상기 에이전트가, 상기 DBMS의 제어큐에 저장된 제어명령을 주기적으로 확인하여 해당 에이전트에 대한 제어명령이 있을시 그 제어명령을 실행하는 단계;를 포함하는 제어정보 처리 과정;을 더 포함하는 것을 특징으로 하는 통합관리방법.
The method of claim 1,
Receiving, by the integrated management server, the status of the agent and periodically providing it to a management console; Receiving, by the integrated management server, a control command for an agent requiring control from the management console, and storing the control command in a control queue of the DBMS; And periodically checking, by the agent, a control command stored in the control queue of the DBMS, and executing the control command when there is a control command for the corresponding agent. Integrated management method.
제1항에 있어서,
상기 에이전트가, 기설정된 임계치와 수집한 성능데이터를 비교하여 임계치 초과 여부를 판단하고,
상기 통합관리서버가, 상기 에이전트로부터 전송되는 성능데이터와 함께 상기 판단결과를 수신하되 상기 임계치를 초과한 판단결과가 수신된 경우에 이벤트를 발생하여 장애관제시스템으로 전송하는 장애정보 처리 과정;을 더 포함하는 것을 특징으로 하는 통합관리방법.
The method of claim 1,
The agent compares the preset threshold with the collected performance data to determine whether the threshold is exceeded,
A failure information processing process of receiving, by the integrated management server, the determination result together with the performance data transmitted from the agent, and generating an event when the determination result exceeding the threshold is transmitted to the failure control system; Integrated management method comprising the.
제1항, 제2항, 제5항, 제7항, 제8항, 제9항, 제10항 중 어느 하나의 항에 기재된 방법의 각 단계를 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체. A computer readable program having recorded a program for executing each step of the method according to any one of claims 1, 2, 5, 7, 8, 9, and 10. Record carrier. 적어도 하나의 관리대상서버에 설치된 에이전트 및 이와 연동되는 통합관리서버를 포함하는 통합관리시스템으로서,
각 성능정보 종류별로 생성되며, 해당 워커스레드에 구비된 내부 스케쥴러의 수집주기에 따라 멀티스레드(multithread) 방식으로 해당 성능정보를 수집하여 성능데이터파일을 생성 및 저장하고, HTTP(HyperText Transfer Protocol) 방식으로 수집한 개별 성능데이터를 저장 이전에 상기 통합관리서버로 직접 전송하거나 상기 성능데이터파일로부터 읽혀진 성능데이터를 개별 데이터 단위로 상기 통합관리서버로 전송하는 적어도 하나의 제1워커스레드(workerthread);
해당 워커스레드에 구비된 내부 스케쥴러의 통계주기에 따라 상기 성능데이터파일에 저장된 데이터로부터 통계데이터를 생성하여 통계데이터파일로 저장하고, 상기 통계데이터를 상기 통합관리서버로 HTTP 방식으로 전송하는 제2워커스레드;를 포함하는 에이전트와,
상기 에이전트에서 전송하는 성능데이터를 저장하는 WAS메모리;
상기 에이전트에서 전송하는 성능데이터 및 통계데이터를 저장하는 DBMS;를 포함하되,
상기 에이전트로부터 상기 통계데이터 전송허락 요청을 전송받아 상기 DBMS의 요청큐(request queue)에 저장하고, 상기 요청큐에 저장된 상기 통계데이터 전송허락 요청에 대해 순차적으로 해당 에이전트에 전송승락을 전송하여 해당 에이전트로부터 상기 통계데이터를 전송받으며, 접속된 클라이언트의 실시간 성능데이터 요청시 상기 WAS메모리에 저장된 성능데이터를 XML 형식으로 가공하여 URL로 제공하는 통합관리서버;를 포함하는 것을 특징으로 하는 통합관리시스템.
An integrated management system comprising an agent installed on at least one managed server and an integrated management server linked to the at least one managed server,
It is generated for each type of performance information, and generates and stores performance data files by collecting the performance information in a multithreaded manner according to the collection cycle of the internal scheduler provided in the worker thread, and HTTP (HyperText Transfer Protocol) method. At least one first worker thread for directly transmitting the collected individual performance data to the integrated management server or storing the performance data read from the performance data file to the integrated management server in individual data units;
A second worker for generating statistical data from the data stored in the performance data file according to the statistics cycle of the internal scheduler provided in the worker thread, storing the statistical data as a statistical data file, and transmitting the statistical data to the integrated management server by HTTP; An agent comprising a thread;
A WAS memory for storing performance data transmitted from the agent;
Includes; DBMS for storing the performance data and statistical data transmitted from the agent
The agent receives the statistical data transmission permission request from the agent and stores it in a request queue of the DBMS, and sequentially transmits a transmission permission to the corresponding agent for the statistical data transmission permission request stored in the request queue. And an integrated management server receiving the statistical data from the client and processing the performance data stored in the WAS memory in an XML format and providing a URL as a request for real-time performance data of a connected client.
제12항에 있어서,
상기 에이전트는,
text log file, URL, DB접속, TCP/IP 프로토콜 중 적어도 어느 하나의 형식을 갖는 성능정보를 상기 관리대상서버로부터 제공받아, text log file 형식의 성능데이터파일을 상기 관리대상서버에 생성 및 저장하는 것을 특징으로 하는 통합관리시스템.
The method of claim 12,
The agent,
Receiving performance information having at least one of a text log file, a URL, a DB connection, and a TCP / IP protocol from the management server, and generating and storing a performance data file in a text log file format in the management server. Integrated management system, characterized in that.
삭제delete 삭제delete 제12항에 있어서,
상기 통합관리서버는,
상기 에이전트로부터 상기 통계데이터를 해당 에이전트의 버퍼 크기로 분할하여 전송받는 것을 특징으로 하는 통합관리시스템.
The method of claim 12,
The integrated management server,
Integrated management system, characterized in that for receiving the statistical data divided by the agent buffer size of the agent.
삭제delete 제12항에 있어서,
상기 통합관리서버는,
접속된 클라이언트의 연속된 성능데이터에 대한 추이(推移) 요청시 상기 DBMS에 저장된 성능데이터를 이용하여 연속된 성능데이터를 제공하는 것을 특징으로 하는 통합관리시스템.
The method of claim 12,
The integrated management server,
Integrated management system, characterized in that to provide a continuous performance data using the performance data stored in the DBMS when the transition request for the continuous performance data of the connected client.
제12항에 있어서,
상기 통계데이터는,
분(minute), 시(hour), 일(day) 중 적어도 어느 하나의 통계주기 단위에 대한 상기 성능데이터의 평균값, 최대값, 최소값 중 적어도 어느 하나인 것을 특징으로 하는 통합관리시스템.
The method of claim 12,
The statistical data is,
And at least one of an average value, a maximum value, and a minimum value of the performance data for at least one of a statistical period unit among minutes, hours, and days.
제12항에 있어서,
상기 통합관리서버는, 상기 에이전트의 상태를 전송받아 접속된 관리콘솔에 주기적으로 제공하고, 상기 관리콘솔로부터 제어가 필요한 에이전트에 대한 제어명령을 전송받으며, 해당 제어명령을 상기 DBMS의 제어큐(control queue)에 저장하고,
상기 에이전트는, 상기 DBMS의 제어큐에 저장된 제어명령을 주기적으로 확인하여 해당 에이전트에 대한 제어명령이 있을시 그 제어명령을 실행하는 것을 특징으로 하는 통합관리시스템.
The method of claim 12,
The integrated management server periodically receives the status of the agent and provides it to the connected management console, receives a control command for the agent that needs control from the management console, and sends the control command to the control queue of the DBMS. queue)
And the agent periodically checks the control command stored in the control queue of the DBMS and executes the control command when there is a control command for the corresponding agent.
제12항에 있어서,
상기 에이전트는, 기설정된 임계치와 수집한 성능데이터를 비교하여 임계치 초과 여부를 판단하고,
상기 통합관리서버는, 상기 에이전트로부터 전송되는 성능데이터와 함께 상기 판단결과를 수신하되 상기 임계치를 초과한 판단결과가 수신된 경우에 이벤트를 발생하여 장애관제시스템으로 전송하는 것을 특징으로 하는 통합관리시스템.
The method of claim 12,
The agent compares the preset threshold with the collected performance data to determine whether the threshold is exceeded,
The integrated management server receives the determination result together with the performance data transmitted from the agent, but generates an event and transmits the event to the failure control system when the determination result exceeding the threshold is received. .
KR1020100022142A 2010-03-12 2010-03-12 Monitoring method for unified management system, system for the same, and recording medium storing a program thereof KR100992417B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100022142A KR100992417B1 (en) 2010-03-12 2010-03-12 Monitoring method for unified management system, system for the same, and recording medium storing a program thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100022142A KR100992417B1 (en) 2010-03-12 2010-03-12 Monitoring method for unified management system, system for the same, and recording medium storing a program thereof

Publications (1)

Publication Number Publication Date
KR100992417B1 true KR100992417B1 (en) 2010-11-05

Family

ID=43409387

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100022142A KR100992417B1 (en) 2010-03-12 2010-03-12 Monitoring method for unified management system, system for the same, and recording medium storing a program thereof

Country Status (1)

Country Link
KR (1) KR100992417B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101368500B1 (en) 2012-04-26 2014-02-28 주식회사 엘지씨엔에스 Method for providing database history management and the database management system thereof
KR101582139B1 (en) * 2015-05-08 2016-01-05 주식회사 디유 Monitoring method for prevent of overloading of server
KR101949761B1 (en) * 2018-07-25 2019-02-20 (주)데이타뱅크시스템즈 Integrated replication system
KR20190054660A (en) * 2017-11-14 2019-05-22 이인철 Remote monitoring system and method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
한국과학기술정보연구원 연구보고서 (엄영익 등 공저, "에이전트 기술을 이용한 웹기반 서버 관리 시스템 개발 연구", 2003.12.15일 출간)*

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101368500B1 (en) 2012-04-26 2014-02-28 주식회사 엘지씨엔에스 Method for providing database history management and the database management system thereof
KR101582139B1 (en) * 2015-05-08 2016-01-05 주식회사 디유 Monitoring method for prevent of overloading of server
KR20190054660A (en) * 2017-11-14 2019-05-22 이인철 Remote monitoring system and method
KR102005636B1 (en) * 2017-11-14 2019-08-06 이인철 Remote monitoring system and method
KR101949761B1 (en) * 2018-07-25 2019-02-20 (주)데이타뱅크시스템즈 Integrated replication system

Similar Documents

Publication Publication Date Title
CN112653586B (en) Time-space big data platform application performance management method based on full link monitoring
CN107766205B (en) A kind of monitoring system and method towards the tracking of micro services calling process
CN110069335A (en) Task processing system, method, computer equipment and storage medium
US7441024B2 (en) Method and apparatus for applying policies
KR101203224B1 (en) Scalable synchronous and asynchronous processing of monitoring rules
JP4609380B2 (en) Virtual server management system and method, and management server device
CN102130950B (en) Distributed monitoring method based on Hadoop cluster
US8997061B1 (en) Test scheduling based on historical test information
US8826286B2 (en) Monitoring performance of workload scheduling systems based on plurality of test jobs
US11526386B2 (en) System and method for automatically scaling a cluster based on metrics being monitored
US20150213087A1 (en) Scaling framework for querying
JP2011123881A (en) Performing workflow having a set of dependency-related predefined activities on a plurality of task servers
JP2007518169A (en) Maintaining application behavior within a sub-optimal grid environment
CN105745645A (en) Determining web page processing state
CN101252471A (en) Distributed automatization test system and method
CN110659307A (en) Event stream correlation analysis method and system
CN103188088A (en) Equipment information acquisition system and equipment information acquisition method
CN111124830B (en) Micro-service monitoring method and device
KR100992417B1 (en) Monitoring method for unified management system, system for the same, and recording medium storing a program thereof
CN112579288A (en) Cloud computing-based intelligent security data management system
Rodero et al. eNANOS grid resource broker
CN105069029B (en) A kind of real-time ETL system and method
JP5360000B2 (en) Virtual server management system and method, and management server device
US20080016192A1 (en) System and Method for Performing an Administrative Task upon the Occurrence of a Triggering Event
CN113672452A (en) Method and system for monitoring operation of data acquisition task

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20131015

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20161028

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20181031

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20191031

Year of fee payment: 10