KR102556788B1 - Machine learning method for performance monitoring and events for multiple web applications - Google Patents

Machine learning method for performance monitoring and events for multiple web applications Download PDF

Info

Publication number
KR102556788B1
KR102556788B1 KR1020230070789A KR20230070789A KR102556788B1 KR 102556788 B1 KR102556788 B1 KR 102556788B1 KR 1020230070789 A KR1020230070789 A KR 1020230070789A KR 20230070789 A KR20230070789 A KR 20230070789A KR 102556788 B1 KR102556788 B1 KR 102556788B1
Authority
KR
South Korea
Prior art keywords
instance
performance
agent
information
unit
Prior art date
Application number
KR1020230070789A
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 KR1020230070789A priority Critical patent/KR102556788B1/en
Application granted granted Critical
Publication of KR102556788B1 publication Critical patent/KR102556788B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/301Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is a virtual computing platform, e.g. logically partitioned systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/321Display for diagnostics, e.g. diagnostic result display, self-test user interface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/541Interprogram communication via adapters, e.g. between incompatible applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/875Monitoring of systems including the internet

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법이 개시된다. 본 바람의 바람직한 실시 예에 따른 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법은 PaaS 환경에 설치된 애플리케이션에 상주하며 개별 인스턴스에 대한 성능정보를 관제하고, 인스턴스의 생성 및 삭제를 감지하는 에이전트를 제어하는 에이전트관리부와 상기 에이전트관리부에서 수집된 애플리케이션 구성정보와 성능정보를 관리하고 시각화하는 애플리케이션매니저부와 수집된 데이터를 기반으로 애플리케이션의 성능을 분석하고, 분석정보를 통해 이벤트 및 장애 발생을 관리하는 데이터분석부와 상기 애플리케이션매니저부와 데이터분석부에서 분석 및 시각화한 데이터를 웹브라우저를 통해 사용자에게 제공하는 웹서버부를 포함할 수 있다.A machine learning learning method for performance monitoring and event prediction for multiple web applications is disclosed. The machine learning learning method for performance monitoring and event prediction for multiple web applications according to a preferred embodiment of the present invention resides in an application installed in a PaaS environment, controls performance information for individual instances, and controls creation and deletion of instances. The agent management unit that controls the agent to be detected, the application manager unit that manages and visualizes the application configuration information and performance information collected from the agent management unit, and analyzes the performance of the application based on the collected data, and analyzes events and failures through the analysis information. It may include a data analysis unit that manages generation and a web server unit that provides the data analyzed and visualized by the application manager unit and the data analysis unit to a user through a web browser.

Description

다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법{Machine learning method for performance monitoring and events for multiple web applications}Machine learning method for performance monitoring and events for multiple web applications

본 발명은 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법에 관한 것으로, 보다 상세하게는 PaaS 환경에 설치된 애플리케이션들에 상주하며 인스턴스 생성 및 삭제에 대응해 에이전트를 설치, 삭제하고 설치된 에이전트를 통해 인스턴스의 구성 및 성능정보를 수집하여 실시간 성능정보를 시각화해 제공하고, 수집된 애플리케이션의 성능정보를 머신러닝 기반으로 분석 및 학습하고, 이를 빅데이터 모델로 구성해 이후 수집되는 성능정보와의 분석 및 비교를 통해 장애이벤트 발생에 대한 기조를 사전 예측해 사용자에게 제시하는 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법에 관한 것이다.The present invention relates to a machine learning learning method for performance monitoring and event prediction for multiple web applications, and more particularly, resides in applications installed in a PaaS environment and installs and deletes agents in response to instance creation and deletion Real-time performance information is visualized and provided by collecting instance configuration and performance information through installed agents, analyzing and learning the collected application performance information based on machine learning, and configuring it into a big data model to collect performance information afterwards. It is about a machine learning learning method for performance monitoring and event prediction for multiple web applications that predicts the occurrence of failure events in advance through analysis and comparison with and presents them to users.

인프라 구성의 흐름이 온프레미스에서 클라우드 형태로 옮겨는 추세이며, 이러한 클라우드 플랫폼에서의 애플리케이션 서비스는 시스템 사용율에 따라 운영을 위한 인스턴스에 대한 자동화된 규모 변경이 이루어 진다. 기존 웹 애플리케이션 모니터링 시스템은 WAS의 인스턴스를 대상으로 성능을 수집하는데 그쳐 인스턴스의 변화와 전체 웹서비스 운영의 흐름을 파악하는데는 부족함이 있다. 때문에, 인스턴스의 설치 및 삭제에 대응하고, 웹서비스의 성능의 전체적인 흐름과 사전에 장애 발생을 예측에 사용자가 대비할 수 있도록 제공할 수 있는 기술이 필요한 실정이다.The flow of infrastructure configuration tends to move from on-premise to cloud, and application services in these cloud platforms automatically change the size of instances for operation according to system utilization. Existing web application monitoring system only collects the performance of WAS instance, so it is insufficient to grasp the change of instance and the flow of overall web service operation. Therefore, there is a need for a technology capable of responding to installation and deletion of instances and providing a way for users to prepare for the overall flow of web service performance and prediction of occurrence of failures in advance.

본 발명이 해결하고자 하는 과제는 인프라 운영이 자유로운 클라우드 환경에서 다양한 웹애플리케이션의 인스턴스의 성능정보와 대상 인스턴스의 오토스케일링에 따라 반응할 수 있는 자동화된 성능모니터링 방안을 제안하는 것이다. The problem to be solved by the present invention is to propose an automated performance monitoring method that can react according to performance information of various web application instances and auto-scaling of target instances in a cloud environment where infrastructure operation is free.

또한 학습된 인스턴스의 성능정보를 바탕으로 웹서비스 장애 발생 전 예측할 수 있도록 장애 예측 정보를 사용자에게 제공하는 것이다.In addition, based on the performance information of the learned instance, failure prediction information is provided to the user so that it can be predicted before a web service failure occurs.

상기 기술적 과제를 달성하기 위하여, 본 발명의 일 실시 예에 따른 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법은 PaaS 환경에 설치된 애플리케이션에 상주하며 개별 인스턴스에 대한 성능정보를 관제하고, 인스턴스의 생성 및 삭제를 감지하는 에이전트를 제어하는 에이전트관리부와; 상기 에이전트관리부에서 수집된 애플리케이션 구성정보와 성능정보를 관리하고 시각화하는 애플리케이션매니저부와; 수집된 데이터를 기반으로 애플리케이션의 성능을 분석하고, 분석정보를 통해 이벤트 및 장애 발생을 관리하는 데이터분석부와; 상기 애플리케이션매니저부와 데이터분석부에서 분석 및 시각화한 데이터를 웹브라우저를 통해 사용자에게 제공하는 웹서버부;를 포함할 수 있다.In order to achieve the above technical problem, a machine learning learning method for performance monitoring and event prediction for multiple web applications according to an embodiment of the present invention resides in an application installed in a PaaS environment and controls performance information for individual instances. and an agent management unit for controlling agents that detect creation and deletion of instances; an application manager that manages and visualizes application configuration information and performance information collected by the agent manager; a data analysis unit that analyzes application performance based on the collected data and manages events and failures through analysis information; It may include a web server unit that provides the data analyzed and visualized by the application manager unit and the data analysis unit to the user through a web browser.

또한 상기 기술적 과제를 달성하기 위한 본 발명의 다른 실시 예에 따른 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법에 있어 상기 에이전트관리부는 관제환경에 설치된 각 애플리케이션 하위에 있는 인스턴스에 에이전트를 상주시켜 애플리케이션과 인스턴스의 구성 및 성능정보를 수집하여 상기 애플리케이션매니저부에 전달하고, 애플리케이션 하위 인스턴스가 생성되는 경우 해당 인스턴스에 ID를 부여하고 인스턴스와 연동된 에이전트를 동일한 ID로 추가해 구성 및 성능정보를 수집하고, 설치된 관제 인스턴스와 매시간 N회(N은 1 이상의 자연수) 이상의 통신이 연결되지 않은 경우 인스턴스가 삭제된 것으로 판단해 해당 인스턴스와 연관된 에이전트를 삭제하는 것;을 포함할 수 있다.In addition, in the machine learning learning method for performance monitoring and event prediction for multiple web applications according to another embodiment of the present invention for achieving the above technical problem, the agent management unit operates in an instance under each application installed in a control environment. Agent resides, collects configuration and performance information of applications and instances, and delivers them to the application manager. When an application sub-instance is created, an ID is assigned to the instance and an agent linked with the instance is added with the same ID to configure and perform Collecting information, and deleting an agent associated with the instance by determining that the instance is deleted if communication with the installed control instance is not connected more than N times (N is a natural number of 1 or more) every hour.

또한 상기 기술적 과제를 달성하기 위한 본 발명의 다른 실시 예에 따른 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법에 있어 상기 에이전트관리부에서 관제대상 인스턴스와 에이전트를 관리(설치~삭제)하는 방법은, 상기 에이전트관리부에서 관제 환경의 애플리케이션 내 인스턴스 생성여부를 판단하는 단계와; 인스턴스 생성 감지 시 해당 인스턴스에 관리ID를 부여하는 단계(ID는 중복되지 않음)와; 관리ID와 동일한 ID가 설정된 에이전트를 설치하는 단계와; 설치된 에이전트를 통해 관제 인스턴스의 성능 및 구성정보를 수집하는 단계와; 인스턴스와 에이전트가 매 시간 지정 횟수(1 이상의 자연수) 이상의 연결이 완료되지 않은 경우, 관제대상 인스턴스가 삭제된 것으로 판단하는 단계와; 인스턴스가 삭제된 것으로 판단되는 경우, 연동된 에이전트를 삭제하고 해당 ID로 수집한 정보를 별개 항목으로 분류 및 저장하는 단계;를 포함할 수 있다.In addition, in the machine learning learning method for performance monitoring and event prediction for multiple web applications according to another embodiment of the present invention for achieving the above technical problem, the agent management unit manages (installs ~ deletes) controlled instances and agents. ) method, the agent management unit determining whether an instance is created in an application in a control environment; assigning a management ID to the instance upon detection of instance creation (IDs are not duplicated); installing an agent having the same ID as the management ID; Collecting performance and configuration information of the control instance through the installed agent; determining that the instance to be controlled is deleted if the connection between the instance and the agent is not completed a specified number of times (a natural number of 1 or more) every hour; When it is determined that the instance has been deleted, deleting the interlocked agent and classifying and storing the information collected with the corresponding ID as a separate item; may include.

또한 상기 기술적 과제를 달성하기 위한 본 발명의 다른 실시 예에 따른 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법에 있어 상기 애플리케이션매니저부는, 상기 에이전트관리부에서 수집한 성능정보를 관제환경-각 애플리케이션-해당 인스턴스 순으로 구분하고 인스턴스에서 발생한 트랜잭션 성능정보에 sub_key를 부여하고 실시간으로 수집되는 트랜잭션을 시각화해 사용자에게 제공하며, 상기 데이터분석부에서 sub_key별 분석한 정보를 사용자가 지정한 항목에 따라 시각화 가공하여 제공할 수 있다.In addition, in the machine learning learning method for performance monitoring and event prediction for multiple web applications according to another embodiment of the present invention for achieving the above technical problem, the application manager unit controls the performance information collected by the agent management unit. It is classified in the order of environment - each application - corresponding instance, assigns a sub_key to the transaction performance information generated in the instance, visualizes transactions collected in real time and provides them to the user, and the information analyzed by sub_key in the data analysis unit is specified by the user. It can be provided by visualization processing according to.

또한 상기 기술적 과제를 달성하기 위한 본 발명의 다른 실시 예에 따른 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법에 있어 상기 애플리케이션 매니저부는, 상기 에이전트관리부로부터 수집한 성능정보를 관리ID별로 구분해 시스템 시간 기준 운영되는 인스턴스의 성능정보는 활성화 데이터베이스로, 삭제된 인스턴스의 성능정보는 말소 데이터베이스로 분류하여 저장;할 수 있다.In addition, in the machine learning learning method for performance monitoring and event prediction for multiple web applications according to another embodiment of the present invention for achieving the above technical problem, the application manager unit manages the performance information collected from the agent management unit. Classified by ID, the performance information of instances operated based on the system time is classified into an activation database, and the performance information of a deleted instance is classified into an erasure database and stored.

또한 상기 기술적 과제를 달성하기 위한 본 발명의 다른 실시 예에 따른 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법에 있어 상기 데이터분석부는, 상기 애플리케이션매니저부에서 분류한 인스턴스의 성능정보를 가져와, 인스턴스별 수집된 정보를 수집항목별로 분석해 실시간 결과값이 임계치를 초과한 경우 이벤트를 발생시켜 관리자에게 통보하고, 이벤트발생 시점 기준 이전 N시간(N은 0 이상의 자연수)의 성능 및 구성정보를 데이터모델로 구성하고, 구성된 데이터모델들을 학습해 장애발생 시점을 예측;할 수 있다.In addition, in the machine learning learning method for performance monitoring and event prediction for multiple web applications according to another embodiment of the present invention for achieving the above technical problem, the data analysis unit performs performance of instances classified by the application manager unit. It imports information and analyzes the collected information by instance by collection item. If the real-time result value exceeds the threshold, an event is generated to notify the manager. Performance and configuration of N hours (N is a natural number greater than 0) prior to the time of event occurrence It is possible to configure information into data models and predict the time of failure by learning the configured data models.

또한 상기 기술적 과제를 달성하기 위한 본 발명의 또 다른 실시 예에 따른 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법에 있어 상기 데이터분석부는, 데이터모델의 이벤트 발생 시점을 기준으로 이전 N시간(N은 0 이상의 자연수)의 성능 데이터의 흐름을 학습하고, 각 데이터모델을 하나의 일괄데이터모델로 병합하여 성능데이터 추이의 평균치, 최대치, 최소치를 계산해 이벤트 발생 전의 성능흐름을 발생예측모델로 생성해 예측모델의 흐름과 N%(N은 1 이상의 자연수) 이상 유사한 성능흐름 발생 시 사용자에게 제공할 수 있다.In addition, in the machine learning learning method for performance monitoring and event prediction for multiple web applications according to another embodiment of the present invention for achieving the above technical problem, the data analysis unit, based on the event occurrence time of the data model Prediction of the performance flow before an event occurs by learning the performance data flow of the previous N hours (N is a natural number greater than or equal to 0) and merging each data model into one batch data model to calculate the average, maximum, and minimum values of the performance data trend It can be created as a model and provided to the user when a performance flow similar to the flow of the prediction model and more than N% (N is a natural number greater than 1) occurs.

본 발명에 따른 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법은 다음과 같은 효과가 있다.The machine learning learning method for performance monitoring and event prediction for multiple web applications according to the present invention has the following effects.

본 발명은 PaaS 환경에서 이루어진 애플리케이션의 인스턴스 인, 아웃에 따른 자동화된 성능정보 관제를 제공할 수있다.The present invention can provide automated performance information control according to instance in/out of an application made in a PaaS environment.

본 발명은 애플리케이션 이벤트 학습을 통한 성능분석으로 장애 발생 전 사전 예측할 수 있는 장점이 있다.The present invention has the advantage of predicting failures in advance through performance analysis through application event learning.

도 1은 본 발명의 바람직한 실시 예에 따른 머신러닝을 통한 PaaS 환경에서의 애플리케이션 다중 모니터링 및장애예측을 위한 방법을 나타내는 블록도
도 2는 도 1의 에이전트관리부에서 인스턴스와 에이전트를 관리하는 방법을 나타내는 흐름도
도 3은 도 1의 애플리케이션매니저부의 시각화 예시를 나타내는 도면
1 is a block diagram showing a method for multi-application monitoring and failure prediction in a PaaS environment through machine learning according to a preferred embodiment of the present invention.
2 is a flowchart illustrating a method of managing instances and agents in the agent management unit of FIG. 1;
3 is a diagram showing an example of visualization of the application manager of FIG. 1

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다. Advantages and features of the present invention, and methods for achieving them, will become clear with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but may be implemented in various different forms, and only these embodiments make the disclosure of the present invention complete, and common knowledge in the art to which the present invention belongs It is provided to fully inform the holder of the scope of the invention, and the present invention is only defined by the scope of the claims. Like reference numbers designate like elements throughout the specification.

이하에서는 본 발명의 바람직한 실시 예들에 따른 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법을 상세히 설명하기로 한다. 참고로 본 발명을 설명함에 있어서 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.Hereinafter, a machine learning learning method for performance monitoring and event prediction for multiple web applications according to preferred embodiments of the present invention will be described in detail. For reference, in describing the present invention, if it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the subject matter of the present invention, the detailed description will be omitted.

도 1은 본 발명의 바람직한 실시 예에 따른 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법을 나타내는 블록도이다.1 is a block diagram illustrating a machine learning learning method for performance monitoring and event prediction for multiple web applications according to a preferred embodiment of the present invention.

도 1에서 도시된 바와 같이, 본 발명의 일 실시 예에 따른 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법은 PaaS 환경에 설치된 애플리케이션에 상주하며 개별 인스턴스에 대한 성능정보를 관제하고, 인스턴스의 생성 및 삭제를 감지하는 에이전트를 제어하는 에이전트관리부(100)와; 상기 에이전트관리부(100)에서 수집된 애플리케이션 구성정보와 성능정보를 관리하고 시각화하는 애플리케이션매니저부(200)와; 수집된 데이터를 기반으로 애플리케이션의 성능을 분석하고, 분석정보를 통해 이벤트 및 장애 발생을 관리하는 데이터분석부(300)와; 상기 애플리케이션매니저부(200)와 데이터분석부(300)에서 분석 및 시각화한 데이터를 웹브라우저를 통해 사용자에게 제공하는 웹서버부(400);를 포함;할 수 있다.As shown in FIG. 1, the machine learning learning method for performance monitoring and event prediction for multiple web applications according to an embodiment of the present invention resides in an application installed in a PaaS environment and controls performance information for individual instances. an agent management unit 100 for controlling an agent that detects creation and deletion of an instance; an application manager unit 200 that manages and visualizes application configuration information and performance information collected by the agent management unit 100; a data analysis unit 300 that analyzes application performance based on the collected data and manages events and failures through analysis information; It may include; a web server unit 400 that provides the data analyzed and visualized by the application manager unit 200 and the data analysis unit 300 to the user through a web browser.

상기 에이전트관리부(100)는 관제환경에 설치된 각 애플리케이션 하위에 있는 인스턴스에 에이전트를 상주시켜 애플리케이션과 인스턴스의 구성 및 성능정보를 수집하여 상기 애플리케이션매니저부(200);에 전달하고, 애플리케이션 하위 인스턴스가 생성되는 경우 해당 인스턴스에 ID를 부여하고 인스턴스와 연동된 에이전트를 동일한 ID로 추가해 구성 및 성능정보를 수집하고, 설치된 관제 인스턴스와 매시간 N회(N은 1 이상의 자연수) 이상의 통신이 연결되지 않은 경우 인스턴스가 삭제된 것으로 판단해 해당 인스턴스와 연관된 에이전트를 삭제하는 것;을 포함;할 수 있다.The agent management unit 100 resides an agent in an instance under each application installed in the control environment, collects configuration and performance information of applications and instances, transfers the information to the application manager unit 200, and creates sub-instances of the application. In this case, an ID is given to the instance, and an agent linked with the instance is added with the same ID to collect configuration and performance information. Deleting the agent associated with the corresponding instance by determining that the instance has been deleted.

상기 애플리케이션매니저부(200)는, 상기 에이전트관리부(100);에서 수집한 성능정보를 관제환경-각 애플리케이션-해당 인스턴스 순으로 구분하고 인스턴스에서 발생한 트랜잭션 성능정보에 sub_key를 부여하고 실시간으로 수집되는 트랜잭션을 시각화해 사용자에게 제공하며, 상기 데이터분석부에서 sub_key별 분석한 정보를 사용자가 지정한 항목에 따라 시각화 가공하여 제공;할 수 있다.The application manager unit 200 classifies the performance information collected by the agent management unit 100 in the order of control environment - each application - corresponding instance, assigns a sub_key to the transaction performance information generated in the instance, and assigns a sub_key to the transaction performance information generated in the instance, and the transactions collected in real time. is visualized and provided to the user, and information analyzed by sub_key in the data analysis unit is visualized and processed according to an item specified by the user and provided;

상기 애플리케이션매니저부(200)는, 상기 에이전트관리부(100);로부터 수집한 성능정보를 관리ID별로 구분해 시스템 시간 기준 운영되는 인스턴스의 성능정보는 활성화 데이터베이스로, 삭제된 인스턴스의 성능정보는 말소 데이터베이스로 분류하여 저장;할 수 있다.The application manager unit 200 classifies the performance information collected from the agent management unit 100 by management ID, and the performance information of an instance operated based on system time is an activation database, and the performance information of a deleted instance is a deletion database. Can be classified and saved as;

상기 데이터분석부(300)는, 상기 애플리케이션매니저부(200)에서 분류한 인스턴스의 성능정보를 가져와, 인스턴스별 수집된 정보를 수집항목별로 분석해 실시간 결과값이 임계치를 초과한 경우 이벤트를 발생시켜 관리자에게 통보하고, 이벤트발생 시점 기준 이전 N시간(N은 0 이상의 자연수)의 성능 및 구성정보를 데이터모델로 구성하고, 구성된 데이터모델들을 학습해 장애발생 시점을 예측;할 수 있다.The data analysis unit 300 brings the performance information of the instances classified by the application manager unit 200, analyzes the collected information for each instance for each collection item, and generates an event when the real-time result value exceeds a threshold value to the manager , configure performance and configuration information of N hours before the event occurrence (N is a natural number greater than 0) as a data model, and predict the time of failure by learning the configured data models.

상기 데이터분석부(300)는, 데이터모델의 이벤트 발생 시점을 기준으로 이전 N시간(N은 0 이상의 자연수)의 성능 데이터의 흐름을 학습하고, 각 데이터모델을 하나의 일괄데이터모델로 병합하여 성능데이터 추이의 평균치, 최대치, 최소치를 계산해 이벤트 발생 전의 성능흐름을 발생예측모델로 생성해 예측모델의 흐름과 N%(N은 1 이상의 자연수) 이상 유사한 성능흐름 발생 시 사용자에게 제공;할 수 있다.The data analysis unit 300 learns the flow of performance data for the previous N hours (N is a natural number greater than or equal to 0) based on the event occurrence time of the data model, and merges each data model into one batch data model to perform performance By calculating the average, maximum, and minimum values of the data trend, the performance flow before the event occurs is created as an occurrence prediction model, and when a performance flow similar to the flow of the prediction model by N% (N is a natural number of 1 or more) or more occurs, it can be provided to the user.

도 2는 도 1의 에이전트관리부(100)에서 인스턴스와 에이전트를 관리하는 방법을 나타내는 흐름도이다.FIG. 2 is a flowchart illustrating a method of managing instances and agents in the agent management unit 100 of FIG. 1 .

도 2에서 도시된 바와 같이, 상기 에이전트관리부(100)에서 관제대상 인스턴스와 에이전트를 관리(설치~삭제)하는 방법은, 상기 에이전트관리부(100)에서 관제 환경의 애플리케이션 내 인스턴스 생성여부를 판단하는 단계와; 인스턴스 생성 감지 시 해당 인스턴스에 관리ID를 부여하는 단계(ID는 중복되지 않음)와; 관리ID와 동일한 ID가 설정된 에이전트를 설치하는 단계와; 설치된 에이전트를 통해 관제 인스턴스의 성능 및 구성정보를 수집하는 단계와; 인스턴스와 에이전트가 매 시간 지정 횟수(1 이상의 자연수) 이상의 연결이 완료되지 않은 경우, 관제대상 인스턴스가 삭제된 것으로 판단하는 단계와; 인스턴스가 삭제된 것으로 판단되는 경우, 연동된 에이전트를 삭제하고 해당 ID로 수집한 정보를 별개 항목으로 분류 및 저장하는 단계;를 포함할 수 있다.As shown in FIG. 2, the agent management unit 100 manages (installs and deletes) instances and agents to be controlled, and the agent management unit 100 determines whether an instance is created in an application in a controlled environment. and; assigning a management ID to the instance upon detection of instance creation (IDs are not duplicated); installing an agent having the same ID as the management ID; Collecting performance and configuration information of the control instance through the installed agent; determining that the instance to be controlled is deleted if the connection between the instance and the agent is not completed a specified number of times (a natural number of 1 or more) every hour; When it is determined that the instance has been deleted, deleting the interlocked agent and classifying and storing the information collected with the corresponding ID as a separate item; may include.

도 3은 도 1의 애플리케이션매니저(200)의 시각화 예시를 나타내는 도면이다.FIG. 3 is a diagram illustrating an example of visualization of the application manager 200 of FIG. 1 .

이상 첨부된 도면을 참조하여 본 발명의 실시 예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등개념으로부터 도출되는 모든 변경 또는 변형된 형태 가 본 발명의 범위에 포함되는 것으로 해석하여야 한다.Although the embodiments of the present invention have been described with reference to the accompanying drawings, those skilled in the art to which the present invention pertains can be implemented in other specific forms without changing the technical spirit or essential features of the present invention. you will be able to understand Therefore, the embodiments described above should be understood as illustrative in all respects and not limiting. The scope of the present invention is indicated by the claims to be described later rather than the detailed description above, and all changes or modifications derived from the meaning and scope of the claims and equivalent concepts thereof should be construed as being included in the scope of the present invention. do.

100: 에이전트 관리부
101: 에이전트
200: 애플리케이션매니저부
300: 데이터분석부
400: 웹서버부
100: agent management unit
101: agent
200: application manager unit
300: data analysis unit
400: web server unit

Claims (7)

PaaS 환경에 설치된 애플리케이션에 상주하며 개별 인스턴스에 대한 성능정보를 관제하고, 인스턴스의 생성 및 삭제를 감지하는 에이전트를 제어하는 에이전트관리부;
상기 에이전트관리부에서 수집된 애플리케이션 구성정보와 성능정보를 관리하고 시각화하는 애플리케이션매니저부;
수집된 데이터를 기반으로 애플리케이션의 성능을 분석하고, 분석정보를 통해 이벤트 및 장애 발생을 관리하는 데이터분석부;
상기 애플리케이션매니저부와 데이터분석부에서 분석 및 시각화한 데이터를 웹브라우저를 통해 사용자에게 제공하는 웹서버부;를 포함하는 것을 특징으로 하는 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법
An agent management unit that resides in an application installed in the PaaS environment, controls performance information for individual instances, and controls agents that detect creation and deletion of instances;
an application manager unit that manages and visualizes application configuration information and performance information collected by the agent management unit;
A data analysis unit that analyzes application performance based on the collected data and manages events and failures through analysis information;
A web server unit providing the data analyzed and visualized by the application manager unit and data analysis unit to the user through a web browser; machine learning learning for performance monitoring and event prediction for multiple web applications comprising method
제 1항에 있어서,
상기 에이전트관리부는 관제환경에 설치된 각 애플리케이션 하위에 있는 인스턴스에 에이전트를 상주시켜 애플리케이션과 인스턴스의 구성 및 성능정보를 수집하여 상기 애플리케이션매니저부에 전달하고, 애플리케이션 하위 인스턴스가 생성되는 경우 해당 인스턴스에 ID를 부여하고 인스턴스와 연동된 에이전트를 동일한 ID로 추가해 구성 및 성능정보를 수집하고, 설치된 관제 인스턴스와 매시간 N회(N은 1 이상의 자연수) 이상의 통신이 연결되지 않은 경우 인스턴스가 삭제된 것으로 판단해 해당 인스턴스와 연관된 에이전트를 삭제하는 것;을 특징으로 하는 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법
According to claim 1,
The agent management unit resides an agent in an instance under each application installed in the control environment, collects configuration and performance information of applications and instances, and delivers the information to the application manager unit. and collect configuration and performance information by adding an agent linked with the instance with the same ID, and if communication with the installed control instance is not connected more than N times (N is a natural number greater than 1) every hour, the instance is determined to be deleted and the instance is deleted. Machine learning learning method for performance monitoring and event advance prediction for multiple web applications, characterized by deleting an agent associated with
제 2항에 있어서,
상기 에이전트관리부에서 관제대상 인스턴스와 에이전트를 관리(설치~삭제)하는 방법에 있어서,
상기 에이전트관리부에서 관제 환경의 애플리케이션 내 인스턴스 생성여부를 판단하는 단계;
인스턴스 생성 감지 시 해당 인스턴스에 관리ID를 부여하는 단계(ID는 중복되지 않음);
관리ID와 동일한 ID가 설정된 에이전트를 설치하는 단계;
설치된 에이전트를 통해 관제 인스턴스의 성능 및 구성정보를 수집하는 단계;
인스턴스와 에이전트가 매 시간 지정 횟수(1 이상의 자연수) 이상의 연결이 완료되지 않은 경우, 관제대상 인스턴스가 삭제된 것으로 판단하는 단계;
인스턴스가 삭제된 것으로 판단되는 경우, 연동된 에이전트를 삭제하고 해당 ID로 수집한 정보를 별개 항목으로 분류 및 저장하는 단계;를 포함하는 것을 특징으로 하는 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법
According to claim 2,
In the method of managing (installation-deletion) the control target instance and agent in the agent management unit,
determining whether an instance is created in an application in a control environment by the agent management unit;
Granting a management ID to the instance upon detection of instance creation (ID is not duplicated);
Installing an agent having the same ID as the management ID;
Collecting performance and configuration information of the control instance through the installed agent;
Determining that the instance to be controlled is deleted if the connection between the instance and the agent is not completed more than a specified number of times (a natural number of 1 or more) every hour;
When it is determined that the instance has been deleted, deleting the interlocked agent and classifying and storing the information collected with the corresponding ID as a separate item; performance monitoring and event prediction for multiple web applications, comprising: machine learning training methods for
제 1항에 있어서,
상기 애플리케이션매니저부는, 상기 에이전트관리부에서 수집한 성능정보를 관제환경-각 애플리케이션-해당 인스턴스 순으로 구분하고 인스턴스에서 발생한 트랜잭션 성능정보에 sub_key를 부여하고 실시간으로 수집되는 트랜잭션을 시각화해 사용자에게 제공하며, 상기 데이터분석부에서 sub_key별 분석한 정보를 사용자가 지정한 항목에 따라 시각화 가공하여 제공하는 것;을 특징으로 하는 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법
According to claim 1,
The application manager classifies the performance information collected by the agent management unit in the order of control environment - each application - corresponding instance, assigns a sub_key to the transaction performance information generated in the instance, visualizes the transactions collected in real time, and provides them to the user. A machine learning learning method for performance monitoring and event prediction for multiple web applications, characterized in that the information analyzed by the data analysis unit for each sub_key is visualized and processed according to a user-specified item.
제 4항에 있어서,
상기 애플리케이션 매니저부는, 상기 에이전트관리부로부터 수집한 성능정보를 관리ID별로 구분해 시스템 시간 기준 운영되는 인스턴스의 성능정보는 활성화 데이터베이스로, 삭제된 인스턴스의 성능정보는 말소 데이터베이스로 분류하여 저장하는 것;을 특징으로 하는 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법
According to claim 4,
The application manager classifies the performance information collected from the agent management unit by management ID, classifies performance information of an instance operated based on system time into an activation database, and classifies performance information of a deleted instance into an erasure database and stores the performance information; Machine learning learning method for performance monitoring and event prediction for multiple web applications
제 1항에 있어서,
상기 데이터분석부는, 상기 애플리케이션매니저부에서 분류한 인스턴스의 성능정보를 가져와, 인스턴스별 수집된 정보를 수집항목별로 분석해 실시간 결과값이 임계치를 초과한 경우 이벤트를 발생시켜 관리자에게 통보하고, 이벤트발생 시점 기준 이전 N시간(N은 0 이상의 자연수)의 성능 및 구성정보를 데이터모델로 구성하고, 구성된 데이터모델들을 학습해 장애발생 시점을 예측하는 것;을 특징으로 하는 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법
According to claim 1,
The data analysis unit brings the performance information of the instance classified by the application manager unit, analyzes the collected information for each instance for each collection item, generates an event when the real-time result value exceeds a threshold, and notifies the manager, and when the event occurs Configuring performance and configuration information of N hours prior to the reference (N is a natural number greater than or equal to 0) into a data model, and predicting the time of failure by learning the configured data models; performance monitoring and event for multiple web applications, characterized by Machine Learning Training Methods for Prediction
제 6항에 있어서,
상기 데이터분석부는, 데이터모델의 이벤트 발생 시점을 기준으로 이전 N시간(N은 0 이상의 자연수)의 성능 데이터의 흐름을 학습하고, 각 데이터모델을 하나의 일괄데이터모델로 병합하여 성능데이터 추이의 평균치, 최대치, 최소치를 계산해 이벤트 발생 전의 성능흐름을 발생예측모델로 생성해 예측모델의 흐름과 N%(N은 1 이상의 자연수) 이상 유사한 성능흐름 발생 시 사용자에게 제공하는 것;을 특징으로 하는 다중 웹애플리케이션에 대한 성능 모니터링 및 이벤트 사전 예측을 위한 머신러닝 학습 방법

According to claim 6,
The data analysis unit learns the flow of performance data for the previous N hours (N is a natural number greater than or equal to 0) based on the event occurrence time of the data model, merges each data model into one batch data model, and averages the performance data trend. , maximum and minimum values are calculated to create a performance flow before the event occurs as an occurrence prediction model, and provide the user with a performance flow similar to the flow of the prediction model by N% (N is a natural number of 1 or more) or more when it occurs. Machine learning training methods for performance monitoring and event prediction for applications

KR1020230070789A 2023-06-01 2023-06-01 Machine learning method for performance monitoring and events for multiple web applications KR102556788B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230070789A KR102556788B1 (en) 2023-06-01 2023-06-01 Machine learning method for performance monitoring and events for multiple web applications

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230070789A KR102556788B1 (en) 2023-06-01 2023-06-01 Machine learning method for performance monitoring and events for multiple web applications

Publications (1)

Publication Number Publication Date
KR102556788B1 true KR102556788B1 (en) 2023-07-20

Family

ID=87426210

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230070789A KR102556788B1 (en) 2023-06-01 2023-06-01 Machine learning method for performance monitoring and events for multiple web applications

Country Status (1)

Country Link
KR (1) KR102556788B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080044508A (en) * 2006-11-16 2008-05-21 삼성에스디에스 주식회사 System and method for management of performance fault using statistical analysis
KR100906440B1 (en) * 2008-05-07 2009-07-09 주식회사 엑셈 Apparatus for monitoring a performance of web applications by connecting was transaction with dbms session and method thereof
KR102307948B1 (en) * 2020-03-27 2021-10-05 주식회사 와탭랩스 Transaction Observation System by Deep Learning and controlling method
KR20220055151A (en) * 2020-10-26 2022-05-03 삼성에스디에스 주식회사 Method for generating identification id, and apparatus implementing the same method
KR102509380B1 (en) * 2022-05-04 2023-03-14 (주)와치텍 Methods for learning application transactions and predicting and resolving real-time failures through machine learning

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080044508A (en) * 2006-11-16 2008-05-21 삼성에스디에스 주식회사 System and method for management of performance fault using statistical analysis
KR100906440B1 (en) * 2008-05-07 2009-07-09 주식회사 엑셈 Apparatus for monitoring a performance of web applications by connecting was transaction with dbms session and method thereof
KR102307948B1 (en) * 2020-03-27 2021-10-05 주식회사 와탭랩스 Transaction Observation System by Deep Learning and controlling method
KR20220055151A (en) * 2020-10-26 2022-05-03 삼성에스디에스 주식회사 Method for generating identification id, and apparatus implementing the same method
KR102509380B1 (en) * 2022-05-04 2023-03-14 (주)와치텍 Methods for learning application transactions and predicting and resolving real-time failures through machine learning

Similar Documents

Publication Publication Date Title
US6327550B1 (en) Method and apparatus for system state monitoring using pattern recognition and neural networks
CN102449603B (en) Server control program, control server, virtual server distribution method
JP6025753B2 (en) Computer-implemented method, computer-readable storage medium, and system for monitoring performance metrics
CN108092836A (en) The monitoring method and device of a kind of server
KR102432284B1 (en) A system that automatically responds to event alarms or failures in IT management in real time and its operation method
KR102041545B1 (en) Event monitoring method based on event prediction using deep learning model, Event monitoring system and Computer program for the same
Gujrati et al. A meta-learning failure predictor for blue gene/l systems
CN108092813A (en) Data center's total management system server hardware Governance framework and implementation method
US20200174462A1 (en) Method and system for elimination of fault conditions in a technical installation
EP3499374B1 (en) An adaptive system and a method for application error prediction and management
Samir et al. A controller architecture for anomaly detection, root cause analysis and self-adaptation for cluster architectures
CN117692345B (en) IT operation method and system based on artificial intelligence
KR102079916B1 (en) System and method for cost-effective notification of home appliance usage considering billing rate and power consumption pattern
CN117453137A (en) Cloud intelligent operation and maintenance system data management system
KR20210147594A (en) Edge computing devices and methods that provide optimization for energy data collection and management
KR20230062761A (en) System hindrance integration management method
CN106899436A (en) A kind of cloud platform failure predication diagnostic system
CN116895046B (en) Abnormal operation and maintenance data processing method based on virtualization
KR102556788B1 (en) Machine learning method for performance monitoring and events for multiple web applications
US10511489B2 (en) Storage operational management service providing apparatus, storage operational management service providing method, and storage operational management system
KR101770066B1 (en) Method and system for real time tracking and analysing business transaction using application call log in distributed system
KR20220060871A (en) System for artificial intelligence integrated resource management of data cente
KR102509380B1 (en) Methods for learning application transactions and predicting and resolving real-time failures through machine learning
CN115333113B (en) Electric power allotment system based on machine learning
KR100496958B1 (en) System hindrance integration management method

Legal Events

Date Code Title Description
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant