KR102266416B1 - Method for failure prediction and apparatus implementing the same method - Google Patents

Method for failure prediction and apparatus implementing the same method Download PDF

Info

Publication number
KR102266416B1
KR102266416B1 KR1020200126576A KR20200126576A KR102266416B1 KR 102266416 B1 KR102266416 B1 KR 102266416B1 KR 1020200126576 A KR1020200126576 A KR 1020200126576A KR 20200126576 A KR20200126576 A KR 20200126576A KR 102266416 B1 KR102266416 B1 KR 102266416B1
Authority
KR
South Korea
Prior art keywords
failure
user
disability
data
access log
Prior art date
Application number
KR1020200126576A
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 KR1020200126576A priority Critical patent/KR102266416B1/en
Priority to KR1020210076172A priority patent/KR20220043844A/en
Application granted granted Critical
Publication of KR102266416B1 publication Critical patent/KR102266416B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3452Performance evaluation by statistical analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3438Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions

Abstract

A method performed by a computing device according to one embodiment of the present invention comprises: a step of generating activity record data for each user using an access log data; a step of classifying each of the users into a normal group or a failure experience group based on the activity record data; and a step of predicting an occurrence of a failure using a result of performing a statistical test to analyze a difference in the amount of activity between the normal group and the failure experience group.

Description

장애 예측 방법, 그리고 이를 구현하기 위한 장치{METHOD FOR FAILURE PREDICTION AND APPARATUS IMPLEMENTING THE SAME METHOD} A method for predicting failure, and an apparatus for implementing the method. {METHOD FOR FAILURE PREDICTION AND APPARATUS IMPLEMENTING THE SAME METHOD}

본 발명은 장애 예측 방법, 그리고 이를 구현하기 위한 장치에 관한 것으로서, 보다 자세하게는, 인터넷 서버에 기록되는 액세스 로그를 이용하여 서비스 장애를 예측하기 위한 장애 예측 방법, 그리고 이를 구현하기 위한 장치에 관한 것이다. The present invention relates to a failure prediction method, and an apparatus for implementing the same, and more particularly, to a failure prediction method for predicting a service failure using an access log recorded in an Internet server, and an apparatus for implementing the same. .

검색 사이트 등과 같이 사용자에게 다양한 인터넷 서비스를 제공하는 대용량 시스템에 있어, 처리해야 하는 데이터의 규모는 기하급수적으로 증가하고, 그만큼 필요한 서버 장비의 수나 시스템의 종류도 계속 늘어나게 된다. In a large-capacity system that provides various Internet services to users, such as a search site, the amount of data to be processed increases exponentially, and the number of necessary server equipment and types of systems continue to increase as well.

이처럼 수많은 사용자가 이용하는 인터넷 서비스는 매일 매시간 동안 서비스가 정상적으로 제공되어야 하는 특성을 가지므로, 장애에 민감하고 신뢰성이 매우 중요한 시스템의 특성을 가진다.As such, the Internet service used by many users has a characteristic that the service must be provided normally for every hour of every day, and thus has a characteristic of a system in which it is sensitive to failures and reliability is very important.

그러나, 시스템의 규모가 커질수록 복잡도가 높아지고 장애를 파악하기 위한 데이터의 모니터링 또한 어려워진다. 또한, 지진과 같은 재난이나 각종 사회, 경제, 문화적인 이슈로 인해 서비스 사용량이 폭증하는 경우 예측이 불가능하기 때문에 시스템의 입장에서 장애 발생을 미리 대비하기 어렵다.However, as the scale of the system increases, the complexity increases and it becomes difficult to monitor data to identify failures. In addition, it is difficult for the system to prepare for failures in advance because it is impossible to predict when the service usage increases due to disasters such as earthquakes or various social, economic, and cultural issues.

이와 같은 시스템의 장애 발생을 대비하기 위해, 일부 인터넷 서비스 기업은 시스템의 모니터링 환경에서 입수되는 데이터를 기반으로 시스템의 상태를 인지할 수 있는 가용성(Availability)을 수치화 하여 자체적으로 장애 발생을 탐지하고 있다.In order to prepare for such system failure, some Internet service companies detect the occurrence of failure by quantifying the availability to recognize the system status based on data obtained from the system monitoring environment. .

그러나, 이러한 장애 대응은 특정 서비스에 대한 시스템의 모니터링 환경에서 입수되는 데이터를 기반으로 만들어지므로, 다른 서비스에는 동일하게 적용할 수가 없다. However, since this failure response is made based on data obtained from the monitoring environment of the system for a specific service, it cannot be equally applied to other services.

또한, 대부분의 장애 발생 예측을 위해 시스템의 오류와 관련된 데이터들을 모니터링하고 있으나, 실제로는 사용자가 느끼는 서비스의 경험이 서비스 장애와 관련한 중요한 지표가 될 수 있다.In addition, although data related to system errors are monitored to predict the occurrence of most failures, in reality, the service experience felt by the user can be an important indicator related to the service failure.

따라서, 서비스의 특성에 관계없이 사용자의 서비스 경험과 관련된 데이터를 이용하여 장애 발생을 미리 예측하고 대비할 수 있는 프로세스가 요구된다. Therefore, there is a need for a process capable of predicting and preparing for a failure in advance using data related to the user's service experience regardless of the characteristics of the service.

등록특허공보 제10-1856543호(2018.05.03. 등록)Registered Patent Publication No. 10-1856543 (Registered on May 3, 2018)

본 발명이 해결하고자 하는 기술적 과제는, 서비스의 특성에 맞는 모니터링 데이터를 수집하는 과정 없이 액세스 로그만을 이용하여 서비스의 장애 발생을 예측할 수 있는 장애 예측 방법, 그리고 이를 구현하기 위한 장치를 제공하는 것이다.The technical problem to be solved by the present invention is to provide a failure prediction method capable of predicting the occurrence of a service failure using only an access log without a process of collecting monitoring data suitable for the characteristics of the service, and an apparatus for implementing the same.

본 발명이 해결하고자 하는 다른 기술적 과제는, 서비스의 특성에 따라 서로 다른 가용성 지표를 적용하지 않고도 서비스의 장애 발생을 예측할 수 있는 장애 예측 방법, 그리고 이를 구현하기 위한 장치를 제공하는 것이다.Another technical problem to be solved by the present invention is to provide a failure prediction method capable of predicting the occurrence of a failure of a service without applying different availability indicators according to the characteristics of the service, and an apparatus for implementing the same.

본 발명이 해결하고자 하는 또 다른 기술적 과제는, 시스템 상의 오류가 아닌 사용자의 서비스 경험에 기반하여 장애를 예측할 수 있는 장애 예측 방법, 그리고 이를 구현하기 위한 장치를 제공하는 것이다.Another technical problem to be solved by the present invention is to provide a failure prediction method capable of predicting a failure based on a user's service experience rather than a system error, and an apparatus for implementing the same.

본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 개시의 기술분야에서의 통상의 기술자에게 명확하게 이해될 수 있을 것이다. The technical problems of the present invention are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art from the following description.

상기 기술적 과제를 해결하기 위한, 본 발명의 일 실시예에 따른 컴퓨팅 장치에 의해 수행되는 방법은, 액세스 로그 데이터를 이용하여 사용자별 활동 기록 데이터를 생성하는 단계, 상기 활동 기록 데이터에 기반하여 상기 각각의 사용자를 정상 그룹 또는 장애 경험 그룹으로 구분하는 단계, 및 상기 정상 그룹과 상기 장애 경험 그룹 간 활동량의 차이의 통계적 유의성을 검증하는 통계적 검정을 수행한 결과를 이용하여 장애 발생을 예측하는 단계를 포함한다.In order to solve the above technical problem, a method performed by a computing device according to an embodiment of the present invention includes: generating activity record data for each user using access log data; based on the activity record data, each of the classifying the users into a normal group or a disability-experienced group, and predicting the occurrence of a disability using the results of performing a statistical test to verify the statistical significance of the difference in the amount of activity between the normal group and the disability-experienced group do.

일 실시예로서, 상기 액세스 로그 데이터를 이용하여 사용자별 활동 기록 데이터를 생성하는 단계는, 상기 사용자를 식별할 수 있는 사용자 식별자(UUID)를 생성하여 상기 사용자의 단말로 전송하는 단계, 및 상기 액세스 로그 데이터에 포함되는 상기 사용자 식별자(UUID)를 이용하여 활동 기록 데이터를 획득하는 단계를 포함할 수 있다.As an embodiment, the generating of activity record data for each user by using the access log data includes generating a user identifier (UUID) capable of identifying the user and transmitting the generated user identifier (UUID) to the user's terminal, and the access The method may include obtaining activity record data by using the user identifier (UUID) included in the log data.

일 실시예로서, 상기 액세스 로그 데이터를 이용하여 사용자별 활동 기록 데이터를 생성하는 단계는, 상기 액세스 로그 데이터 중 사용자의 위치 정보 및 단말 환경 정보를 이용하여 사용자 식별자(UUID)를 생성하는 단계를 포함할 수 있다.As an embodiment, the generating activity record data for each user by using the access log data includes generating a user identifier (UUID) using location information and terminal environment information of the user among the access log data. can do.

일 실시예로서, 상기 액세스 로그 데이터를 이용하여 사용자별 활동 기록 데이터를 생성하는 단계는, 상기 사용자 식별자(UUID)의 접속 기록이 세션 타임(session time) 동안 유지되는 경우 동일 사용자로 식별하는 단계를 포함할 수 있다.As an embodiment, the step of generating activity record data for each user using the access log data may include identifying the same user when the access record of the user identifier (UUID) is maintained for a session time. may include

일 실시예로서, 상기 액세스 로그 데이터를 이용하여 사용자별 활동 기록 데이터를 생성하는 단계는, 상기 활동 기록 데이터의 특성이 비정상적인 것으로 판단되는 경우, 상기 액세스 로그 데이터에 대한 이상 감지(Anomaly Detection) 데이터로 사용하는 단계를 포함할 수 있다.As an embodiment, the generating activity record data for each user by using the access log data may include, when it is determined that the characteristics of the activity record data are abnormal, as anomaly detection data for the access log data. It may include steps to use.

일 실시예로서, 상기 활동 기록 데이터에 기반하여 각각의 사용자를 정상 그룹 또는 장애 경험 그룹으로 구분하는 단계는, 상기 사용자에 대응하는 에러 코드 발생 건수 및 지연 처리 건수 중 적어도 하나가 기 설정된 기준치 이상인 경우 상기 사용자를 장애 경험 그룹으로 구분하는 단계를 포함할 수 있다.As an embodiment, in the step of classifying each user into a normal group or a disability experience group based on the activity record data, at least one of the number of occurrences of error codes and the number of delayed processing corresponding to the user is greater than or equal to a preset reference value It may include classifying the user into a disability experience group.

일 실시예로서, 상기 사용자에 대응하는 에러 코드 발생 건수 및 지연 처리 건수 중 적어도 하나가 기 설정된 기준치 이상인 경우 상기 사용자를 장애 경험 그룹으로 구분하는 단계는, 상기 지연 처리의 판단을 위한 기준 시간을 조정 가능한 단계를 포함할 수 있다.As an embodiment, when at least one of the number of occurrences of error codes and the number of delayed processing corresponding to the user is equal to or greater than a preset reference value, the step of classifying the user into a disability experience group includes adjusting a reference time for determining the delay processing Possible steps may be included.

일 실시예로서, 상기 정상 그룹과 상기 장애 경험 그룹 간 활동량의 차이의 통계적 유의성을 검증하는 통계적 검정을 수행한 결과를 이용하여 장애 발생을 예측하는 단계는, 상기 정상 그룹과 상기 장애 경험 그룹 각각에 속한 사용자의 활동 기간 및 활동 건수 데이터를 소정 시간 간격으로 수집하는 단계, 상기 수집된 데이터를 이용하여 상기 정상 그룹 및 상기 장애 경험 그룹 간 차이의 통계적 유의성을 검증하는 통계적 검정을 수행하는 단계, 및 상기 통계적 검정의 수행 결과 획득되는 유의확률 값(p-value)의 변화 추이에 기반하여 장애 발생 여부를 판단하는 단계를 포함할 수 있다.As an embodiment, predicting the occurrence of a disability using a result of performing a statistical test to verify the statistical significance of the difference in the amount of activity between the normal group and the disability experience group includes: Collecting the activity period and activity count data of the belonging user at predetermined time intervals, performing a statistical test to verify the statistical significance of the difference between the normal group and the disability experience group using the collected data, and the The method may include determining whether a failure occurs based on a change trend of a significance probability value (p-value) obtained as a result of performing a statistical test.

일 실시예로서, 상기 장애 발생 예측을 통해 서비스의 장애가 발생한 것으로 판단되는 경우, 상기 액세스 로그 데이터로부터 오류 관련 단어(Failure Word)를 검출하는 단계, 및 기 정의된 세그먼트 별로 상기 검출된 오류 관련 단어와 관련된 통계 결과를 생성하는 단계를 더 포함할 수 있다.As an embodiment, when it is determined that a service failure has occurred through the failure prediction, detecting an error-related word from the access log data, and the detected error-related word for each predefined segment The method may further include generating relevant statistical results.

일 실시예로서, 상기 오류 관련 단어(Failure Word)는 사용자에 의해 지정 가능한 것일 수 있다.As an embodiment, the failure word may be designated by a user.

일 실시예로서, 상기 기 정의된 세그먼트 별로 상기 검출된 오류 관련 단어와 관련된 통계 결과를 생성하는 단계는, 상기 오류 관련 단어의 검출 횟수의 이동 평균값(Moving Average)을 이용하여 계산된 변동율에 기반하여 상기 세그먼트 별로 상기 오류 관련 단어가 가장 많이 검출된 대상 세그먼트를 추출하는 단계를 포함할 수 있다.As an embodiment, the generating of the statistical result related to the detected error-related word for each predefined segment may include: based on a rate of change calculated using a moving average of the number of times of detection of the error-related word. The method may include extracting a target segment in which the error-related word is detected the most for each segment.

일 실시예로서, 상기 오류 관련 단어의 검출 횟수의 이동 평균값(Moving Average)을 이용하여 계산된 변동율에 기반하여 상기 세그먼트 별로 상기 오류 관련 단어가 가장 많이 검출된 대상 세그먼트를 추출하는 단계는, 상기 변동율을 계산 시 과거 시간에 대해 더 큰 가중치를 적용하는 단계를 포함할 수 있다.As an embodiment, the step of extracting the target segment in which the error-related word is detected the most for each segment based on a rate of change calculated using a moving average of the number of times of detection of the error-related word may include: may include applying a larger weight to the past time when calculating .

일 실시예로서, 상기 세그먼트별 통계 결과에 기초하여 장애 시점 및 장애 원인을 파악하는 단계, 상기 장애 시점을 기준으로 상기 장애 원인과 관련된 액세스 로그 데이터를 획득하는 단계, 및 상기 획득된 액세스 로그 데이터를 이용하여 장애 원인의 상세 분석 결과를 제공하는 단계를 더 포함할 수 있다.As an embodiment, determining the failure time point and the failure cause based on the statistical results for each segment, obtaining access log data related to the failure cause based on the failure time point, and using the obtained access log data The method may further include providing a detailed analysis result of the cause of the failure using the method.

상기 기술적 과제를 해결하기 위한, 본 발명의 일 실시예에 따른 장애 예측 장치는, 하나 이상의 프로세서, 외부 장치와 통신하는 통신 인터페이스, 상기 프로세서에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리, 및 상기 컴퓨터 프로그램을 저장하는 스토리지를 포함하되, 상기 컴퓨터 프로그램은, 액세스 로그 데이터를 이용하여 사용자별 활동 기록 데이터를 생성하는 동작, 상기 활동 기록 데이터에 기반하여 상기 각각의 사용자를 정상 그룹 또는 장애 경험 그룹으로 구분하는 동작, 및 상기 정상 그룹과 상기 장애 경험 그룹 간 활동량의 차이의 통계적 유의성을 검증하는 통계적 검정을 수행한 결과를 이용하여 장애 발생을 예측하는 동작을 수행하기 위한 인스트럭션들(instructions)을 포함한다. In order to solve the above technical problem, a failure prediction apparatus according to an embodiment of the present invention includes one or more processors, a communication interface for communicating with an external device, a memory for loading a computer program executed by the processor, and a storage for storing the computer program, wherein the computer program generates activity record data for each user using access log data, and sets each user to a normal group or a disability experience group based on the activity record data Includes instructions for classifying into , and predicting the occurrence of a disability using the result of performing a statistical test to verify the statistical significance of the difference in the amount of activity between the normal group and the disability experience group. do.

일 실시예로서, 상기 액세스 로그 데이터를 이용하여 사용자별 활동 기록 데이터를 생성하는 동작은, 상기 액세스 로그 데이터 중 사용자의 위치 정보 및 단말 환경 정보를 이용하여 상기 사용자를 식별하는 동작을 포함할 수 있다.As an embodiment, generating activity record data for each user using the access log data may include identifying the user using location information and terminal environment information of the user among the access log data. .

일 실시예로서, 상기 활동 기록 데이터에 기반하여 상기 각각의 사용자를 정상 그룹 또는 장애 경험 그룹으로 구분하는 동작은, 상기 사용자에 대응하는 에러 코드 발생 건수 및 지연 처리 건수 중 적어도 하나가 기 설정된 기준치 이상인 경우 상기 사용자를 장애 경험 그룹으로 구분하는 동작을 포함할 수 있다.As an embodiment, the operation of classifying each user into a normal group or a disability experience group based on the activity record data includes at least one of the number of occurrences of error codes and the number of delayed processing corresponding to the user being greater than or equal to a preset reference value. In this case, it may include an operation of classifying the user into a disability experience group.

일 실시예로서, 상기 정상 그룹과 상기 장애 경험 그룹 간 활동량의 차이의 통계적 유의성을 검증하는 통계적 검정을 수행한 결과를 이용하여 장애 발생을 예측하는 동작은, 상기 정상 그룹과 상기 장애 경험 그룹 각각에 속한 사용자의 활동 기간 및 활동 건수 데이터를 소정 시간 간격으로 수집하는 동작, 상기 수집된 데이터를 이용하여 상기 정상 그룹 및 상기 장애 경험 그룹 간 차이의 통계적 유의성을 검증하는 통계적 검정을 수행하는 동작, 및 상기 통계적 검정의 수행 결과 획득되는 유의확률 값(p-value)의 변화 추이에 기반하여 장애 발생 여부를 판단하는 동작을 포함할 수 있다.As an embodiment, the operation of predicting the occurrence of a disability using a result of performing a statistical test to verify the statistical significance of the difference in the amount of activity between the normal group and the disability experience group is performed in each of the normal group and the disability experience group. Collecting the activity period and activity count data of the user belonging to the user at predetermined time intervals, performing a statistical test to verify the statistical significance of the difference between the normal group and the disability experience group using the collected data, and the It may include an operation of determining whether a failure occurs based on a change trend of a significance probability value (p-value) obtained as a result of performing a statistical test.

일 실시예로서, 상기 컴퓨터 프로그램은, 상기 장애 발생 예측을 통해 서비스의 장애가 발생한 것으로 판단되는 경우, 상기 액세스 로그 데이터로부터 오류 관련 단어(Failure Word)를 검출하는 동작, 및 기 정의된 세그먼트 별로 상기 검출된 오류 관련 단어와 관련된 통계 결과를 생성하는 동작을 수행하기 위한 인스트럭션을 더 포함할 수 있다.As an embodiment, when it is determined that a service failure has occurred through the prediction of occurrence of the failure, the computer program may perform an operation of detecting a failure word from the access log data, and the detection for each predefined segment. The method may further include instructions for performing an operation of generating statistical results related to the error-related words.

일 실시예로서, 상기 컴퓨터 프로그램은, 상기 세그먼트별 통계 결과에 기초하여 장애 시점 및 장애 원인을 파악하는 동작, 상기 장애 시점을 기준으로 상기 장애 원인과 관련된 액세스 로그 데이터를 획득하는 동작, 및 상기 획득된 액세스 로그 데이터를 이용하여 장애 원인의 상세 분석 결과를 제공하는 동작을 수행하기 위한 인스트럭션을 더 포함할 수 있다.As an embodiment, the computer program includes an operation of identifying a failure time point and a failure cause based on the statistical result for each segment, an operation of obtaining access log data related to the failure cause based on the failure time point, and the obtaining It may further include an instruction for performing an operation of providing a detailed analysis result of the cause of the failure by using the access log data.

도 1은 본 발명의 실시예에 따른 장애 예측 장치의 개념도이다.
도 2는 본 발명의 일 실시예에 따른 장애 예측 장치의 구성도이다.
도 3 내지 6은 본 발명의 또 다른 실시예에 따른 컴퓨팅 장치에 의해 수행되는 장애 예측 방법의 순서도들이다.
도 7은 본 발명의 몇몇 실시예들에서 제공될 수 있는 예시적인 API를 통해 사용자 식별자를 전송하는 예이다.
도 8은 본 발명의 몇몇 실시예들에서 제공될 수 있는 예시적인 액세스 로그 데이터를 이용하여 사용자 식별자를 생성하는 예이다.
도 9는 본 발명의 몇몇 실시예들에서 제공될 수 있는 예시적인 활동 기록 데이터에 기반하여 진짜 사람 여부를 판단하는 예이다.
도 10은 본 발명의 몇몇 실시예들에서 제공될 수 있는 예시적인 활동 기록 데이터에 기반하여 사용자를 구분하는 예이다.
도 11은 본 발명의 몇몇 실시예들에서 제공될 수 있는 예시적인 통계적 검정을 수행하여 장애 발생을 예측하는 예이다.
도 12는 본 발명의 몇몇 실시예들에서 제공될 수 있는 예시적인 유의확률 값의 변화 추이를 이용하여 장애 발생을 예측하는 예이다.
도 13는 본 발명의 몇몇 실시예들에서 제공될 수 있는 예시적인 기 정의된 세그먼트 별로 오류 관련 단어와 관련된 통계 결과를 생성하는 예이다.
도 14은 본 발명의 몇몇 실시예에 따른 방법들을 구현할 수 있는 예시적인 컴퓨팅 장치의 하드웨어 구성도이다.
1 is a conceptual diagram of an apparatus for predicting failure according to an embodiment of the present invention.
2 is a block diagram of an apparatus for predicting failure according to an embodiment of the present invention.
3 to 6 are flowcharts of a failure prediction method performed by a computing device according to another embodiment of the present invention.
7 is an example of transmitting a user identifier via an exemplary API that may be provided in some embodiments of the present invention.
8 is an example of generating a user identifier using exemplary access log data that may be provided in some embodiments of the present invention.
9 is an example of determining whether a person is a real person based on exemplary activity record data that may be provided in some embodiments of the present invention.
10 is an example of classifying a user based on exemplary activity record data that may be provided in some embodiments of the present invention.
11 is an example of predicting failure occurrence by performing an exemplary statistical test that may be provided in some embodiments of the present invention.
12 is an example of predicting the occurrence of a failure using an exemplary change in significance value that may be provided in some embodiments of the present invention.
13 is an example of generating statistical results related to error-related words for each exemplary predefined segment that may be provided in some embodiments of the present invention.
14 is a hardware configuration diagram of an exemplary computing device that may implement methods according to some embodiments of the present invention.

이하, 첨부된 도면을 참조하여 본 개시의 바람직한 실시 예들을 상세히 설명한다. 본 개시의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 개시의 기술적 사상은 이하의 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 이하의 실시예들은 본 개시의 기술적 사상을 완전하도록 하고, 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 본 개시의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 개시의 기술적 사상은 청구항의 범주에 의해 정의될 뿐이다.Hereinafter, preferred embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. Advantages and features of the present disclosure, and methods for achieving them, will become apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the technical spirit of the present disclosure is not limited to the following embodiments, but may be implemented in various different forms, and only the following embodiments complete the technical spirit of the present disclosure, and in the technical field to which the present disclosure belongs It is provided to fully inform those of ordinary skill in the scope of the present disclosure, and the technical spirit of the present disclosure is only defined by the scope of the claims.

각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 개시를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 개시의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.In adding reference numerals to the components of each drawing, it should be noted that the same components are given the same reference numerals as much as possible even though they are indicated on different drawings. In addition, in describing the present disclosure, if it is determined that a detailed description of a related known configuration or function may obscure the gist of the present disclosure, the detailed description thereof will be omitted.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 개시를 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.Unless otherwise defined, all terms (including technical and scientific terms) used herein may be used with the meaning commonly understood by those of ordinary skill in the art to which this disclosure belongs. In addition, terms defined in a commonly used dictionary are not to be interpreted ideally or excessively unless clearly defined in particular. The terminology used herein is for the purpose of describing the embodiments and is not intended to limit the present disclosure. As used herein, the singular also includes the plural unless specifically stated otherwise in the phrase.

또한, 본 개시의 구성 요소를 설명하는 데 있어서, 제1, 제2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.In addition, in describing the components of the present disclosure, terms such as first, second, A, B, (a), (b), etc. may be used. These terms are only for distinguishing the components from other components, and the essence, order, or order of the components are not limited by the terms. When a component is described as being “connected”, “coupled” or “connected” to another component, the component may be directly connected or connected to the other component, but another component is between each component. It should be understood that elements may be “connected,” “coupled,” or “connected.”

명세서에서 사용되는 "포함한다 (comprises)" 및/또는 "포함하는 (comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.As used herein, “comprises” and/or “comprising” refers to the presence of one or more other components, steps, operations and/or elements mentioned. or addition is not excluded.

이하, 본 개시의 몇몇 실시예들에 대하여 첨부된 도면에 따라 상세하게 설명한다.Hereinafter, some embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 실시예에 따른 장애 예측 장치의 개념도이다. 도 1을 참조하면, 본 발명의 실시예에 따른 장애 예측 장치(1)는 액세스 로그 데이터로부터 추출한 사용자의 활동 기록 데이터를 이용하여 장애 발생을 예측한다.1 is a conceptual diagram of an apparatus for predicting failure according to an embodiment of the present invention. Referring to FIG. 1 , the failure prediction apparatus 1 according to an embodiment of the present invention predicts the occurrence of a failure by using the user's activity record data extracted from the access log data.

도시된 예에서, 장애 예측 장치(1)는 사용자 단말(10)에서 인터넷 서비스를 제공하는 웹 서버(3)에 접속 시 기록되는 액세스 로그 데이터(2)를 이용하여 활동 기록 데이터(4)를 생성한다. 이 때, 활동 기록 데이터(4)는 사용자별로 생성되고, 예컨대 각 사용자에 대응하는 에러 코드 발생 건수 및 지연 처리 건수 등을 포함할 수 있다. In the illustrated example, the failure prediction device 1 generates activity record data 4 by using the access log data 2 recorded when the user terminal 10 accesses the web server 3 that provides an Internet service. do. In this case, the activity record data 4 is generated for each user, and may include, for example, the number of occurrences of error codes and the number of delayed processing cases corresponding to each user.

장애 예측 장치(1)는 활동 기록 데이터(4)에 기반하여 각각의 사용자를 정상 그룹(51) 또는 장애 경험 그룹(52)으로 구분하고, 각 그룹 간 활동량의 차이를 분석하는 통계적 검정(6)을 수행한 결과를 이용하여 장애 발생을 예측한다.The disability prediction device 1 classifies each user into a normal group 51 or a disability experience group 52 based on the activity record data 4, and a statistical test 6 to analyze the difference in the amount of activity between each group Predict the occurrence of failure using the result of performing

상기와 같이, 본 발명의 실시예에 따른 장애 예측 장치(1)에 의하면, 시스템 상의 오류가 아닌 사용자의 서비스 경험에 기반하여 서비스의 장애 발생을 예측할 수 있다. As described above, according to the failure prediction apparatus 1 according to the embodiment of the present invention, it is possible to predict the occurrence of a service failure based on the user's service experience rather than a system error.

도 2는 본 발명의 일 실시예에 따른 장애 예측 장치의 구성도이다.2 is a block diagram of an apparatus for predicting failure according to an embodiment of the present invention.

도 2를 참조하면, 본 발명의 실시예에 따른 장애 예측 장치(1)는 사용자 단말(10)에서 웹 서버(3)로의 접속 시 발생하는 액세스 로그데이터를 저장하는 데이터 저장부(30)와 무선 또는 유선 통신 인터페이스를 통해 연결된다.Referring to FIG. 2 , the failure prediction apparatus 1 according to an embodiment of the present invention includes a data storage unit 30 for storing access log data generated when the user terminal 10 accesses the web server 3 and a wireless or through a wired communication interface.

웹 서버(Web Server)(3)는 고정식 컴퓨팅 장치로서, 사용자 단말(10)과 네트워크를 통해 연결되고, 사용자 단말(10)의 웹 브라우저로부터의 HTTP 요청에 대해 응답을 처리한다. 웹 서버(Web Server)(3)는 동적 콘텐츠나 웹 응용프로그램 서비스를 처리하고 데이터베이스(30)와 연동할 수 있는 WAS 서버로 구현될 수 있다. The web server 3 is a stationary computing device, connected to the user terminal 10 through a network, and processes a response to an HTTP request from a web browser of the user terminal 10 . The web server 3 may be implemented as a WAS server capable of processing dynamic content or web application service and interworking with the database 30 .

장애 예측 장치(1)는 고정식 컴퓨팅 장치로서, 데이터 저장부(30)와 네트워크를 통해 연결되고, 데이터 저장부(30)에 저장되어 있는 액세스 로그 데이터를 이용하여 사용자별 활동 기록 데이터(4)를 생성한다. The failure prediction device 1 is a stationary computing device, connected to the data storage unit 30 through a network, and uses the access log data stored in the data storage unit 30 to generate activity record data 4 for each user. create

일 실시예로서, 장애 예측 장치(1)는 웹 서버(3)에서 사용자 단말(10)로 사용자의 활동 기록 데이터의 수집을 위한 API(Application Programming Interface)가 제공되면, 사용자 단말(10)에서 API를 통해 생성되는 활동 기록 데이터(4)를 획득할 수 있다. API는, 예컨대 SDK(software development kit)를 포함할 수 있다. As an embodiment, the failure prediction device 1 provides an API (Application Programming Interface) for collecting user activity record data from the web server 3 to the user terminal 10, the API in the user terminal 10 It is possible to obtain the activity record data (4) generated through. The API may include, for example, a software development kit (SDK).

여기서, 웹 서버(3)에서 사용자 단말(10)로 API를 제공 시, 사용자를 식별할 수 있는 사용자 식별자(UUID)가 포함된 API를 사용자 단말(10)로 전송하여, 해당 사용자 단말(10)에 대해 고유한 사용자 식별자(UUID)를 부여할 수 있다. 이에 따라, 사용자 단말(10)에서 웹 서버(3)로의 접속 시, 액세스 로그 데이터로서 사용자 단말(10)에 부여된 사용자 식별자(UUID)에 관한 정보가 함께 데이터 저장부(30)에 기록될 수 있다. 이로부터, 장애 예측 장치(1)는 데이터 저장부(30)에 저장된 사용자 식별자(UUID)를 이용하여 액세스 로그 데이터로부터 사용자별 활동 기록 데이터(4)를 생성할 수 있다.Here, when the web server 3 provides the API to the user terminal 10, the API including the user identifier (UUID) that can identify the user is transmitted to the user terminal 10, and the corresponding user terminal 10 A unique user identifier (UUID) can be assigned to . Accordingly, when the user terminal 10 accesses the web server 3 , information about the user identifier (UUID) assigned to the user terminal 10 as access log data may be recorded in the data storage unit 30 together. have. From this, the failure prediction apparatus 1 may generate the activity record data 4 for each user from the access log data using the user identifier (UUID) stored in the data storage unit 30 .

다른 실시예로서, 장애 예측 장치(1)는 데이터 저장부(30)에 저장된 액세스 로그 데이터 중 사용자의 위치 정보 및 단말 환경 정보를 이용하여 사용자 식별자(UUID)를 생성할 수도 있다 이에 따라, 장애 예측 장치(1)는 액세스 로그 데이터로부터 사용자별 활동 기록 데이터(4)를 생성할 수 있다.As another embodiment, the failure prediction apparatus 1 may generate a user identifier (UUID) by using the user's location information and terminal environment information among the access log data stored in the data storage unit 30. Accordingly, failure prediction The device 1 may generate user-specific activity record data 4 from the access log data.

장애 예측 장치(1)는 상기와 같은 방법으로 생성된 활동 기록 데이터(4)에 기반하여 각각의 사용자를 정상 그룹(51) 또는 장애 경험 그룹(52)으로 구분한다. 장애 경험 그룹(52)은 웹 서버(3)가 제공하는 인터넷 서비스를 이용하는 동안 나쁜 경험을 한 사용자들을 포함하고, 나쁜 경험에 대한 지표로서, 각 사용자별 활동 기록 데이터(4) 중 예컨대 에러 코드 발생 건수 및 지연 처리 건수 등을 포함할 수 있다. The failure prediction device 1 classifies each user into a normal group 51 or a disability experience group 52 based on the activity record data 4 generated in the above manner. The failure experience group 52 includes users who had a bad experience while using the Internet service provided by the web server 3, and as an indicator for the bad experience, among the activity record data 4 for each user, for example, an error code occurred The number of cases and the number of delayed processing cases may be included.

장애 예측 장치(1)는 정상 그룹(51) 또는 장애 경험 그룹(52) 간 사용자들의 활동량의 차이의 통계적 유의성을 검증하는 통계적 검정을 수행하고, 그 결과로부터 장애 발생을 예측한다. 여기서, 두 그룹 간 차이를 분석하기 위해 사용되는 통계적 검정으로서, 예컨대 2-표본 T-검정 기법이 사용될 수 있다. The disability prediction device 1 performs a statistical test to verify the statistical significance of the difference in the activity amount of users between the normal group 51 or the disability experience group 52, and predicts the occurrence of a disability from the result. Here, as a statistical test used to analyze the difference between two groups, for example, a 2-sample T-test technique may be used.

이 때, 사용자들의 활동량에 관한 지표로서, 예컨대 활동 기간(activity duration) 및 활동 건수(activity count) 중 적어도 하나를 사용할 수 있다. In this case, as an indicator regarding the activity amount of users, for example, at least one of an activity duration and an activity count may be used.

일 실시예로서, 활동 건수(activity count)는 접속 횟수를 의미하고, 접속 횟수는 액세스 로그 데이터 중 예컨대, 웹 페이지 이동, 특정 기능 버튼 클릭, 및 특정 링크 클릭 등과 같은 동적 컨텐츠(dynamic contents) 요청 활동에 해당하는 건수만을 포함하고, 이미지 또는 동영상 파일(jpg, png, css, js, avi 등)이나 웹 문서 파일(html 등)의 다운로드와 같은 정적 컨텐츠(static contents) 요청 활동에 해당하는 건수는 포함하지 않을 수 있다.As an embodiment, the activity count refers to the number of accesses, and the number of accesses refers to dynamic contents request activity such as moving a web page, clicking a specific function button, and clicking a specific link among the access log data. Including the number of cases corresponding to the static content request activity, such as the download of image or video files (jpg, png, css, js, avi, etc.) or web document files (html, etc.) may not

예로서, 동적 컨텐츠(dynamic contents) 요청 활동과 정적 컨텐츠(static contents) 요청 활동을 구분하기 위해, 액세스 로그 데이터 중 요청 URL이 정적 컨텐츠(static contents)로 잘 알려진 확장자(jpg, png, css, js, avi, html 등)를 포함하는 경우를 제외한 요청들이 동적 컨텐츠(dynamic contents) 요청으로 판단될 수 있다. 다른 예로서, 액세스 로그 데이터 중 요청 URL이 사용자에 의해 기 설정되어 있는 특정 URL 패턴에 해당하는 경우 동적 컨텐츠(dynamic contents) 요청으로 판단되고, 그 이외의 것은 모두 정적 컨텐츠(static contents) 요청으로 판단될 수 있다.For example, in order to distinguish between a dynamic contents request activity and a static contents request activity, the request URL among the access log data is a well-known extension (jpg, png, css, js) as static contents. , avi, html, etc.) may be determined as requests for dynamic contents. As another example, if the request URL in the access log data corresponds to a specific URL pattern preset by the user, it is determined as a dynamic content request, and everything else is determined as a static content request. can be

또한, 활동 기간(activity duration)은 사용자가 웹 서버(3)의 사이트에 접속하여 머문 시간을 의미하고, 마지막 활동 시간에서 최초 활동 시간을 뺀 기간으로 정해질 수 있다. 예로서, 사용자 별로 동적 컨텐츠의 최초 요청 시간과 마지막 요청 시간을 획득하고, 이를 이용하여 머문 시간을 산출할 수 있다. In addition, the activity duration means the time the user accesses and stays on the site of the web server 3 , and may be determined as a period obtained by subtracting the first activity time from the last activity time. For example, the first request time and the last request time of the dynamic content may be obtained for each user, and the stay time may be calculated using the obtained time.

데이터 저장부(30)는 장애 예측 장치(1) 및 웹 서버(3)와 네트워크로 연결되어 있는 별도의 외부 장치 또는 DB 서버로 구현될 수 있고, 웹 서버(3)에 접속하는 사용자 단말(20)에 관한 정보, 접속된 웹 페이지 및 접속 시간 등의 정보를 모두 저장할 수 있다.The data storage unit 30 may be implemented as a separate external device or DB server connected to the failure prediction device 1 and the web server 3 through a network, and a user terminal 20 accessing the web server 3 . ), information such as the accessed web page and access time can all be stored.

사용자 단말(20)은 예컨대, 개인용 데스크탑 PC와 같은 고정식 컴퓨팅 장치, 스마트 폰, 태블릿 PC, 랩톱 PC, PDA 등과 같은 이동식 컴퓨팅 장치 중 어느 하나일 수 있다. 사용자 단말(20)는 웹 서버(3)로 접속하여 웹 페이지들을 선택함에 의해 웹 서버(3)가 제공하는 다양한 컨텐츠를 제공받을 수 있고, 사용자 단말(20)에서 작성된 컨텐츠들을 웹 서버(3)로 업로드할 수도 있다. The user terminal 20 may be, for example, any one of a stationary computing device such as a personal desktop PC, a mobile computing device such as a smart phone, a tablet PC, a laptop PC, a PDA, and the like. The user terminal 20 may be provided with various contents provided by the web server 3 by accessing the web server 3 and selecting web pages, and the contents created in the user terminal 20 may be transferred to the web server 3 . It can also be uploaded to

일 실시예로서, 사용자 단말(20)은 장애 예측 장치(1)와 무선 또는 유선 통신 인터페이스를 통해 연결될 수 있다. 이 때, 사용자 단말(20)은 장애 예측 장치(1)로 액세스 로그 데이터를 이용한 장애 발생 예측을 요청하고, 장애 예측 장치(1)에서 분석된 장애 발생 예측의 결과를 제공 받는 관리자용 단말 장치일 수 있다.As an embodiment, the user terminal 20 may be connected to the failure prediction apparatus 1 through a wireless or wired communication interface. At this time, the user terminal 20 requests the failure prediction device 1 to predict the occurrence of a failure using the access log data, and is a terminal device for an administrator receiving the result of the failure prediction analyzed by the failure prediction device 1 . can

상기와 같이 본 발명의 실시예에 따른 본 발명의 실시예에 따른 장애 예측 장치(1)에 의하면, 서비스의 특성에 맞는 모니터링 데이터를 수집하는 별도의 과정 없이 액세스 로그만을 이용하여 서비스의 장애 발생을 예측할 수 있다. As described above, according to the failure prediction apparatus 1 according to the embodiment of the present invention according to the embodiment of the present invention, the occurrence of service failure is detected using only the access log without a separate process of collecting monitoring data suitable for the characteristics of the service. predictable.

도 3 내지 6은 본 발명의 또 다른 실시예에 따른 컴퓨팅 장치에 의해 수행되는 장애 예측 방법의 순서도들이다. 본 실시예에 따른 방법은 컴퓨팅 장치에 의하여 실행될 수 있고, 예컨대 장애 예측 장치(1)에 의해 실행될 수 있다. 3 to 6 are flowcharts of a failure prediction method performed by a computing device according to another embodiment of the present invention. The method according to the present embodiment may be executed by a computing device, for example, by the failure prediction device 1 .

본 실시예에 따른 방법을 실행하는 상기 컴퓨팅 장치는 응용 프로그램 실행 환경을 구비한 컴퓨팅 장치일 수 있다. 본 실시예에 따른 방법에 포함되는 일부 동작의 수행 주체에 대한 기재가 생략될 수 있으며, 그러한 경우 그 주체는 상기 컴퓨팅 장치임을 유의한다.The computing device executing the method according to the present embodiment may be a computing device having an application program execution environment. Note that the description of a subject performing some operations included in the method according to the present embodiment may be omitted, and in such a case, the subject is the computing device.

도 3을 참조하면, 먼저, 동작 S31에서, 액세스 로그 데이터(2)를 이용하여 사용자별 활동 기록 데이터(4)가 생성된다. Referring to FIG. 3 , first, in operation S31 , activity record data 4 for each user is generated using the access log data 2 .

일 실시예로서, 동작 S31은, 사용자 단말(10)로 사용자의 활동 기록 데이터의 수집을 위한 API를 제공하는 동작과, 사용자 단말(10)에서 API를 통해 생성되는 활동 기록 데이터(4)를 획득하는 동작을 포함할 수 있다. 이 때, 사용자 단말(10)로 API를 제공 시, 사용자를 식별할 수 있는 사용자 식별자(UUID: universally unique identifier)가 생성되어 사용자 단말(10)로 전송될 수 있다. 이에 따라, 사용자 단말(10)의 웹 서버(3) 접속 시 기록되는 액세스 로그 데이터에 포함되는 사용자 식별자(UUID)를 이용하여 사용자별 활동 기록 데이터(4)가 생성될 수 있다. In one embodiment, the operation S31 is an operation of providing an API for collection of the user's activity record data to the user terminal 10 , and acquiring the activity record data 4 generated through the API in the user terminal 10 . It may include an action to In this case, when the API is provided to the user terminal 10 , a universally unique identifier (UUID) capable of identifying the user may be generated and transmitted to the user terminal 10 . Accordingly, activity record data 4 for each user may be generated using a user identifier (UUID) included in the access log data recorded when the user terminal 10 accesses the web server 3 .

다른 실시예로서, 도 4를 참조하면, 동작 S31은, 액세스 로그 데이터(2) 중 사용자의 위치 정보 및 단말 환경 정보를 이용하여 사용자 식별자(UUID)가 생성되는 동작 S311과, 사용자 식별자(UUID)의 접속 기록이 세션 타임(session time) 동안 유지되는 경우 동일 사용자로 식별되는 동작 S312를 포함할 수 있다. 여기서, 동작 S311에 있어, 사용자의 위치 정보로서 예컨대 IP 어드레스(address)가 사용될 수 있고, 단말 환경 정보로서 예컨대 사용자 단말(10)에서 웹 서버(3)의 접속 시 사용되는 에이전트 소프트웨어(agent s/w) 관련 정보가 사용될 수 있다. As another embodiment, referring to FIG. 4 , in operation S31 , in operation S311 in which a user identifier (UUID) is generated by using the location information of the user and terminal environment information among the access log data 2 , the user identifier (UUID) When the connection record of the user is maintained for a session time, an operation S312 of identifying the same user may be included. Here, in operation S311, for example, an IP address may be used as the user's location information, and, for example, as terminal environment information, the agent software used when the web server 3 is accessed from the user terminal 10 (agent s/ w) Relevant information may be used.

동작 S312에 있어, 액세스 로그 데이터(2)에 포함된 사용자 식별자(UUID)의 접속 기록에서 예컨대 30분의 세션 타임 동안 접속이 유지된다면 동일 사용자의 접속으로 판단될 수 있다. 이 때, 세션 타임은 최대 3시간으로 설정될 수 있고, 세션 타임 이후의 접속은 다른 사용자의 접속으로 판단될 수 있다.In operation S312 , if the connection is maintained for a session time of, for example, 30 minutes in the connection record of the user identifier (UUID) included in the access log data 2 , it may be determined that the connection is of the same user. In this case, the session time may be set to a maximum of 3 hours, and a connection after the session time may be determined as a connection of another user.

다음으로, 동작 S32에서, 활동 기록 데이터(4)에 기반하여 각각의 사용자가 정상 그룹(51) 또는 장애 경험 그룹(52)으로 구분된다.Next, in operation S32 , each user is divided into a normal group 51 or a disability experience group 52 based on the activity record data 4 .

일 실시예로서, 도 4를 참조하면, 동작 S31은 사용자별 활동 기록 데이터(4) 중 에러 코드 및 지연 처리와 관련된 데이터가 획득되는 동작 S321과, 에러 코드 발생 건수 및 지연 처리 건수 중 적어도 하나가 기 설정된 기준치 이상인 경우 사용자가 장애 경험 그룹으로 구분되는 동작 S322를 포함한다. As an embodiment, referring to FIG. 4 , in operation S31, at least one of an operation S321 in which data related to an error code and delay processing is obtained among the activity record data 4 for each user, and the number of occurrences of error codes and the number of delayed processing When the preset reference value or more is higher, an operation S322 in which the user is divided into a disability experience group is included.

이 때, 동작 S322는, 사용자에 대응하는 에러 코드 발생 건수와 지연 처리 건수에 대해 서로 다른 가중치를 적용하여 기 설정된 기준치 이상인지 판단되는 동작을 포함할 수 있다. 또한, 동작 S322는, 지연 처리의 판단을 위한 기준 시간이 조정되는 동작을 포함할 수 있다.In this case, operation S322 may include an operation of determining whether or not the number of error codes corresponding to the user is greater than or equal to a preset reference value by applying different weights to the number of occurrences of the error code and the number of delayed processing. Also, operation S322 may include an operation in which a reference time for determining delay processing is adjusted.

마지막으로, 동작 S33에서, 정상 그룹(51) 또는 장애 경험 그룹(52) 간 활동량의 차이의 통계적 유의성을 검증하는 통계적 검정을 수행한 결과를 이용하여 장애 발생이 예측된다. Finally, in operation S33 , the occurrence of disability is predicted using the result of performing a statistical test to verify the statistical significance of the difference in the amount of activity between the normal group 51 or the disability experience group 52 .

일 실시예로서, 도 5를 참조하면, 동작 S33은, 정상 그룹과 장애 경험 그룹 각각에 속한 사용자의 활동 기간(activity duration) 및 활동 건수(activity count) 데이터가 소정 시간 간격으로 수집되는 동작 S331, 수집된 데이터를 이용하여 정상 그룹 및 장애 경험 그룹 간 차이의 통계적 유의성을 검증하는 통계적 검정이 수행되는 동작 S332, 및 통계적 검정의 수행 결과 획득되는 유의확률 값(p-value)의 변화 추이에 기반하여 장애 발생 여부가 판단되는 동작 S333을 포함할 수 있다.As an embodiment, referring to FIG. 5 , operation S33 is an operation S331 in which activity duration and activity count data of a user belonging to each of a normal group and a disability experience group are collected at predetermined time intervals; Based on the operation S332 in which a statistical test to verify the statistical significance of the difference between the normal group and the disability experience group is performed using the collected data, and the change in the significance probability value (p-value) obtained as a result of the statistical test An operation S333 in which it is determined whether a failure has occurred may be included.

예로서, 동작 S332에 있어, 정상 그룹 및 장애 경험 그룹 간 차이의 통계적 유의성을 검증하는 통계적 검정 방법으로서, 예컨대 2-표본 T-검정 기법이 사용될 수 있다. 여기서, 2-표본 T-검정 기법은, 두 집단 간 평균 차이에 대한 통계적인 유의성을 검증하는 방법으로서, 모집단의 분산 또는 표준편차를 알지 못하는 경우 사용되고, 표본에서 추정된 분산이나 표준편차를 이용하여 검정하게 된다.For example, in operation S332 , as a statistical test method for verifying the statistical significance of the difference between the normal group and the disability experience group, for example, a 2-sample T-test technique may be used. Here, the 2-sample T-test technique is a method to verify the statistical significance of the mean difference between two groups, and is used when the variance or standard deviation of the population is not known. become black

동작 S333에 있어, 소정 시간 간격으로 수집된 활동 기간(activity duration) 및 활동 건수(activity count) 데이터를 이용하여 통계적 검정을 수행하고, 그 결과로서 획득되는 활동 기간 및 활동 건수 데이터 각각에 대한 유의확률 값(p-value)들의 변화 추이에 기반하여 장애 발생 여부가 판단될 수 있다. 유의확률 값(p-value)은 관찰된 데이터의 검정 통계량의 값이 귀무가설(null hypothesis)을 지지하는 정도를 확률로 나타낸 것으로서, 그 값이 작을수록 귀무가설을 지지하는 정도가 약하므로 귀무가설을 기각하게 되고, 그 값이 클수록 귀무가설을 지지하는 정도가 크므로 귀무가설을 채택하게 된다. 일반적으로, 유의확률 값(p-value)이 5%보다 작은 경우, 귀무가설이 기각되어 통계적으로 의미가 있는 것으로 판단될 수 있다. In operation S333, a statistical test is performed using the activity duration and activity count data collected at predetermined time intervals, and as a result, the significance probability for each of the activity duration and activity count data obtained Based on the change trend of the values (p-values), it may be determined whether a failure occurs. The significance probability value (p-value) represents the degree to which the value of the test statistic of the observed data supports the null hypothesis as a probability. The smaller the value, the weaker the support for the null hypothesis. is rejected, and the larger the value, the greater the degree of support for the null hypothesis, so the null hypothesis is accepted. In general, when the significance probability value (p-value) is less than 5%, the null hypothesis is rejected and it can be determined to be statistically significant.

일 실시예로서, 귀무가설을 정상 그룹(51)과 장애 경험 그룹(52) 간 차이가 없다고 가정했을 때, T-검정 기법을 이용하여 산출되는 활동 기간(activity duration) 및 활동 건수(activity count) 데이터 중 적어도 하나에 대한 '1-유의확률 값(p-value)'이 95% 이상이면 귀무가설이 기각되어 장애가 발생한 것으로 판단되고, 50% 이상 95% 미만이면 장애 가능성이 증가하는 것으로 판단될 수 있다. 또한, '1-유의확률 값(p-value)'이 50% 미만이면 우연 또는 사소한 장애가 발생한 것으로 판단될 수 있다. 이 때, '1-유의확률 값(p-value)'에 대한 임계치를 설정함으로써, 임계치 이상인 경우 장애 발생 가능성이 증가하는 것으로 판단될 수도 있다.As an embodiment, assuming that the null hypothesis does not differ between the normal group 51 and the disability experience group 52, the activity duration and activity count calculated using the T-test technique If the '1-significance probability value (p-value)' for at least one of the data is 95% or more, the null hypothesis is rejected and it is judged that a failure has occurred. have. In addition, if the '1-significance probability value (p-value)' is less than 50%, it may be determined that an accidental or minor failure has occurred. In this case, by setting a threshold value for the '1-significant probability value (p-value)', it may be determined that the probability of occurrence of a failure increases when the threshold value is greater than the threshold value.

예로서, 활동 기간(activity duration) 및 활동 건수(activity count) 데이터 중 적어도 하나에 대한 '1-유의확률 값(p-value)'이 50% 이상인 경우, 장애 발생 가능성이 증가하는 것으로 판단될 수 있다. For example, if the '1-significance probability value (p-value)' for at least one of the activity duration and activity count data is 50% or more, it may be determined that the probability of occurrence of a failure increases have.

다른 실시예로서, 매 시간 간격(예컨대 1분 간격)으로 활동 기간 및 활동 건수 데이터에 대해 T-검정 기법을 이용하여 산출되는 유의확률 값(p-value)들의 변화 추이를 이용하여 장애 발생 여부가 판단될 수 있다. 이 때, 유의확률 값(p-value)의 변화 추이는, 예컨대 매 시간 간격으로 계산되는 유의확률 값들의 이동 평균값(moving average)을 이용하여 판단할 수 있다.As another embodiment, the occurrence of a disorder is determined using the change trend of the significance probability values (p-values) calculated using the T-test technique for the activity period and activity count data at every time interval (eg, 1 minute interval). can be judged. In this case, the change trend of the significance probability value (p-value) may be determined using, for example, a moving average of significance values calculated at every time interval.

예로서, 매 시간 간격으로 산출되는 활동 기간(activity duration) 및 활동 건수(activity count) 데이터 중 적어도 하나에 대한 '1-유의확률 값(p-value)'들의 이동 평균값이 시간에 따라 증가하는 형태이면서 기 설정된 임계치 이상으로 증가된 경우 장애 발생 가능성이 증가하는 것으로 판단될 수 있다. For example, a moving average value of '1-significant probability values (p-values)' for at least one of an activity duration and an activity count data calculated at every time interval increases with time , it may be determined that the probability of occurrence of a failure increases when it is increased by more than a preset threshold.

다른 예로서, 매 시간 간격으로 산출되는 활동 기간(activity duration) 또는 활동 건수(activity count) 데이터에 대한 '1-유의확률 값(p-value)'들이 기 설정된 임계치 이상이고, 양쪽 데이터 중 적어도 하나에 대한 '1-유의확률 값(p-value)'의 이동 평균값이 시간에 따라 증가하는 형태를 만족하는 경우, 장애 발생 가능성이 증가하는 것으로 판단될 수 있다.As another example, '1-significance probability values (p-values)' for activity duration or activity count data calculated at every time interval are greater than or equal to a preset threshold, and at least one of both data When the moving average value of the '1-significance probability value (p-value)' for '1' satisfies a form that increases with time, it may be determined that the probability of occurrence of a failure increases.

또 다른 예로서, 매 시간 간격으로 산출되는 활동 기간(activity duration) 및 활동 건수(activity count) 데이터 양쪽에 대한 '1-유의확률 값(p-value)'들이 모두 기 설정된 임계치 이상이고, 양쪽 데이터 중 적어도 하나에 대한 '1-유의확률 값(p-value)'의 이동 평균값이 시간에 따라 증가하는 형태를 만족하는 경우, 장애 발생 가능성이 증가하는 것으로 판단될 수 있다.As another example, '1-significance probability values (p-values)' for both the activity duration and activity count data calculated at every time interval are above a preset threshold, and both data When the moving average value of the '1-significance probability value (p-value)' for at least one of them satisfies a form of increasing with time, it may be determined that the probability of occurrence of a failure increases.

이와 같이, 본 발명의 실시예에 의하면, 장애 발생 가능성을 판단하기 위해 '1-유의확률 값(p-value)'에 대한 임계치 설정 및 시간에 따른 이동 평균값의 변화 추이를 이용할 수 있다. 또한, 이동 평균값의 변화 추이를 이용하는 경우, 이동 평균값이 증가한 것으로 판단하기 위한 기준 값을 조정하여 예측의 민감도를 변경할 수도 있다. As described above, according to an embodiment of the present invention, it is possible to set a threshold value for a '1-significant probability value (p-value)' and to use the change trend of the moving average value over time to determine the possibility of occurrence of a failure. Also, in the case of using the change trend of the moving average, the sensitivity of prediction may be changed by adjusting the reference value for determining that the moving average has increased.

일 실시예로서, 상기와 같이 장애 가능성 판단 시 사용된 데이터가 축적되면, 예컨대 활동 기간, 활동 건수, 유의확률 값, 및 이동 평균값 등을 인공지능 모델 적용을 위한 학습 데이터의 특징(feature)으로 사용함에 의해, 보다 정확한 장애 예측을 수행할 수 있다.As an embodiment, when the data used for determining the possibility of failure is accumulated as described above, for example, the activity period, the number of activities, the significance probability value, and the moving average value are used as a feature of the learning data for applying the artificial intelligence model. By this, it is possible to perform more accurate failure prediction.

일 실시예로서, 도 6을 참조하면, 동작 S33의 수행에 의해 장애 발생이 예측된 이후, 동작 S34 및 동작 S35가 더 수행될 수 있다. As an embodiment, referring to FIG. 6 , after the occurrence of a failure is predicted by performing operation S33, operations S34 and S35 may be further performed.

동작 S34에서, 장애 발생 예측을 통해 서비스의 장애가 발생한 것으로 판단되는 경우, 액세스 로그 데이터(2)로부터 오류 관련 단어(Failure Word)가 검출되는 동작 S341과, 기 정의된 세그먼트 별로 검출된 오류 관련 단어와 관련된 통계 결과가 생성되는 동작 S342이 수행될 수 있다.In operation S34, when it is determined that a service failure has occurred through failure prediction, an error-related word is detected from the access log data 2 in operation S341, and an error-related word detected for each predefined segment Operation S342 in which a related statistical result is generated may be performed.

여기서, 오류 관련 단어(Failure Word)는, 액세스 로그 데이터에 있어 오류 발생과 관련하여 잘 알려져 있는 단어로서, 예컨대 error, Error, FATAL, EXCEPTION, Fail, Failure, critical 등을 포함할 수 있다. Here, the error-related word (Failure Word) is a well-known word related to the occurrence of an error in the access log data, and may include, for example, error, Error, FATAL, EXCEPTION, Fail, Failure, critical, and the like.

일 실시예로서, 오류 관련 단어(Failure Word)는 사용자에 의해 직접 지정될 수 있고, 단어별로 오류(Failure)의 수준(level)이 설정될 수도 있다. As an embodiment, a failure word may be directly designated by a user, and a level of failure may be set for each word.

세그먼트는 예컨대, 서비스명(service), 호스트명(hostname), 어플리케이션(application), 및 로그 경로(Log Path) 등으로 지정될 수 있다. 세그먼트는 기 지정된 것 외에 사용자에 의해 추가로 지정될 수도 있다. The segment may be designated by, for example, a service name, a host name, an application, and a log path. The segment may be additionally designated by the user in addition to the previously designated segment.

동작 S342에 있어, 오류 관련 단어와 관련된 통계 결과를 생성 시, 세그먼트 별로 오류 관련 단어의 검출 순위에 관한 통계가 산출될 수 있다. 예로서, 서비스명(service), 호스트명(hostname), 어플리케이션(application) 등 각각의 세그먼트 별로 오류 관련 단어의 검출 횟수가 높은 순서로 대상 세그먼트가 추출될 수 있다. In operation S342, when the statistical results related to the error-related word are generated, statistics regarding the detection order of the error-related word for each segment may be calculated. For example, target segments may be extracted in an order of increasing the number of times of detection of error-related words for each segment, such as a service name, a host name, and an application.

일 실시예로서, 동작 S342은, 오류 관련 단어의 검출 횟수의 이동 평균값(MA: Moving Average)을 이용하여 계산된 변동율에 기반하여 세그먼트 별로 오류 관련 단어가 가장 많이 검출된 대상 세그먼트를 추출하는 동작을 포함할 수 있다. 이 때, 변동율을 계산 시 과거 시간에 대해 더 큰 가중치를 적용할 수도 있다.As an embodiment, operation S342 includes an operation of extracting a target segment in which an error-related word is detected the most for each segment based on a rate of change calculated using a moving average (MA) of the number of times of detection of an error-related word. may include In this case, a larger weight may be applied to the past time when calculating the rate of change.

여기서, 오류 관련 단어의 검출 횟수의 이동 평균값(MA)은, 시간 구간을 이동해가며 해당 시간 구간에 대한 검출 횟수의 평균값을 산출한 것으로 이로부터 평균값의 변화 추이가 관찰될 수 있다. 예컨대, 최근 오류 관련 단어의 검출 횟수가 급격히 증가한 경우 이동 평균값은 큰 값을 가지게 된다. Here, the moving average value (MA) of the number of detections of the error-related word is calculated by calculating the average value of the number of detections for the corresponding time period while moving through the time period, from which the change trend of the average value can be observed. For example, when the number of times of detection of an error-related word recently increases, the moving average has a large value.

또한, 변동율은 '(이동 평균값(MA)-현재 시점의 평균값)/이동 평균값(MA)'에 대한 절대값으로 계산되고, 예컨대 세 시간 간격으로 매분 단위로 계산된 변동율을 합하여, 각 세그먼트 별로 변동율의 합이 큰 순으로 통계 결과가 추출될 수 있다. In addition, the rate of change is calculated as an absolute value for '(moving average value (MA)-average value of the current time)/moving average value (MA)', for example, by adding the rate of change calculated every minute at three time intervals, the rate of change for each segment Statistical results can be extracted in the order of the largest sum of .

일 실시예로서, 각 세그먼트별 통계 결과의 추출에 있어, 변동율의 계산 시 이동 평균값(MA) 대신 가중 이동 평균값(WMA: Weighted Moving Average)이 사용될 수도 있다. 예로서, 가중 이동 평균값(WMA)을 사용함에 있어, 현재 시점 대비 특정 과거 시점에 대해 더 큰 가중치를 적용하여, 최근 장애 발생 가능성이 더 높다고 판단되는 경우 변동율 계산 시 이를 반영할 수 있다. As an embodiment, in extracting the statistical result for each segment, a weighted moving average (WMA) may be used instead of the moving average (MA) when calculating the rate of change. For example, in using the weighted moving average value (WMA), a greater weight is applied to a specific past time point compared to the current time point, and when it is determined that the probability of occurrence of a recent failure is higher, this may be reflected when calculating the change rate.

동작 S35에서는, 세그먼트별 통계 결과에 기초하여 장애 시점 및 장애 원인이 파악되는 동작 S351과, 장애 시점을 기준으로 장애 원인과 관련된 액세스 로그 데이터가 획득되는 동작 S352, 및 획득된 액세스 로그 데이터를 이용하여 장애 원인의 상세 분석 결과가 제공되는 동작 S353이 수행될 수 있다.In operation S35, an operation S351 in which a failure time point and a cause of failure are identified based on the statistical results for each segment, an operation S352 in which access log data related to a failure cause is obtained based on the failure time, and the obtained access log data is used. Operation S353 in which the detailed analysis result of the cause of the failure is provided may be performed.

예로서, 동작 342의 수행에 의해 생성된 세그먼트별 통계 결과로부터 오류 관련 단어의 검출 횟수가 높은 대상 세그먼트가 장애 원인과 관련된 것으로 판단되고, 오류 관련 단어가 검출된 시점을 기준으로 주변의 모든 액세스 로그 데이터를 검색하여 장애 원인에 관한 상세 분석 결과가 제공될 수 있다. For example, from the statistical results for each segment generated by performing operation 342, it is determined that the target segment with a high number of detections of error-related words is related to the cause of the failure, and all access logs around the time when the error-related words are detected By retrieving the data, detailed analysis results regarding the cause of the failure can be provided.

상기와 같은 본 발명의 실시예에 따른 방법에 의하면, 서비스의 특성에 맞는 모니터링 데이터를 수집하는 별도의 과정 없이 액세스 로그 데이터만을 이용하여 서비스의 장애 발생을 예측할 수 있다. 또한, 서비스의 특성에 따라 서로 다른 가용성 지표를 적용하지 않고도 서비스의 장애 발생을 예측할 수 있다.According to the method according to the embodiment of the present invention as described above, the occurrence of a service failure can be predicted using only the access log data without a separate process of collecting monitoring data suitable for the characteristics of the service. In addition, according to the characteristics of the service, it is possible to predict the occurrence of a service failure without applying different availability indicators.

도 7은 본 발명의 몇몇 실시예들에서 제공될 수 있는 예시적인 API를 통해 사용자 식별자를 전송하는 예이다. 도시된 예에서, 장애 예측 장치(1)는 웹 서버(3)에서 사용자 단말(10)로 사용자의 활동 기록 데이터의 수집을 위한 API(Application Programming Interface)가 제공되면, 사용자 단말(10)에서 API를 통해 생성되는 활동 기록 데이터(4)를 획득할 수 있다.7 is an example of transmitting a user identifier via an exemplary API that may be provided in some embodiments of the present invention. In the illustrated example, the failure prediction device 1 is provided with an API (Application Programming Interface) for the collection of user activity record data from the web server 3 to the user terminal 10, the API in the user terminal 10 It is possible to obtain the activity record data (4) generated through.

예로서, 웹 서버(3)에서 사용자 단말(10)로 API를 제공 시, 사용자를 식별할 수 있는 사용자 식별자(UUID)가 포함된 API가 사용자 단말(10)로 전송되어, 해당 사용자 단말(10)에 대해 고유한 사용자 식별자(UUID)가 부여될 수 있다.For example, when an API is provided from the web server 3 to the user terminal 10 , an API including a user identifier (UUID) capable of identifying a user is transmitted to the user terminal 10 , and the corresponding user terminal 10 ) may be assigned a unique user identifier (UUID).

이에 따라, 사용자 단말(10)에서 웹 서버(3)로의 접속 시, 액세스 로그 데이터로서 사용자 단말(10)에 부여된 사용자 식별자(UUID)에 관한 정보가 전송되어 데이터 저장부(30)에 기록될 수 있다. 이로부터, 장애 예측 장치(1)는 데이터 저장부(30)에 저장된 사용자 식별자(UUID)를 이용하여 액세스 로그 데이터로부터 사용자별 활동 기록 데이터(4)를 생성할 수 있다.Accordingly, when the user terminal 10 accesses the web server 3 , information about the user identifier (UUID) assigned to the user terminal 10 is transmitted as access log data and recorded in the data storage unit 30 . can From this, the failure prediction apparatus 1 may generate the activity record data 4 for each user from the access log data using the user identifier (UUID) stored in the data storage unit 30 .

상기와 같은 본 발명의 실시예에 따라, 사용자 단말(10)에서 웹 서버(3)의 접속 시 기록되는 액세스 로그 데이터에 사용자를 식별할 수 있는 정보를 부가할 수 있다. According to the embodiment of the present invention as described above, information for identifying a user may be added to the access log data recorded when the user terminal 10 accesses the web server 3 .

도 8은 본 발명의 몇몇 실시예들에서 제공될 수 있는 예시적인 액세스 로그 데이터를 이용하여 사용자 식별자를 생성하는 예이다. 도시된 예에서, 장애 예측 장치(1)는 사용자 단말(10)에서 웹 서버(3)의 접속 시 기록되는 액세스 로그 데이터 사용자의 위치 정보 및 단말 환경 정보를 이용하여 사용자 식별자(UUID)를 생성할 수 있다.8 is an example of generating a user identifier using exemplary access log data that may be provided in some embodiments of the present invention. In the illustrated example, the failure prediction apparatus 1 generates a user identifier (UUID) using the access log data user's location information and terminal environment information recorded when the web server 3 is accessed from the user terminal 10 . can

예로서, 장애 예측 장치(1)는 액세스 로그 데이터(21)로부터, 사용자 단말(10)의 위치를 알 수 있는 IP 어드레스(81)와, 사용자 단말(10)에서 웹 서버(3) 접속을 위해 사용중인 에이전트 소프트웨어(agent s/w)의 종류 및 버전 등을 알 수 있는 단말 환경 정보(83)의 조합을 이용하여 사용자 식별자(UUID)(85)를 생성할 수 있다.As an example, the failure prediction device 1 is configured to access the IP address 81 from which the user terminal 10 can be located, from the access log data 21 , and to access the web server 3 from the user terminal 10 . A user identifier (UUID) 85 may be generated using a combination of the terminal environment information 83 that can know the type and version of the agent software (agent s/w) being used.

이 때, 액세스 로그 데이터(21)에 포함된 접속 기록 시간(82)에 기초하여, 사용자 식별자(UUID)의 접속 기록이 예컨대 약 30분 세션 타임(session time) 내에 유지되는 경우, 동일한 사용자가 접속한 것으로 판단될 수 있다. 이 때, 세션 타임은 최대 3시간으로 설정될 수 있고, 세션 타임 이후의 접속은 다른 사용자의 접속으로 판단될 수 있다.At this time, based on the access record time 82 included in the access log data 21, when the access record of the user identifier (UUID) is maintained within, for example, about 30 minutes session time, the same user accesses can be considered to have been In this case, the session time may be set to a maximum of 3 hours, and a connection after the session time may be determined as a connection of another user.

상기와 같은 본 발명의 실시예에 따라, 사용자 단말(10)에서 웹 서버(3)의 접속 시 기록되는 액세스 로그 데이터 중 일부 정보를 이용하여 사용자를 식별할 수 있다. According to the embodiment of the present invention as described above, the user can be identified using some information of the access log data recorded when the user terminal 10 accesses the web server 3 .

도 9는 본 발명의 몇몇 실시예들에서 제공될 수 있는 예시적인 활동 기록 데이터에 기반하여 정상적으로 접속된 사용자인지 여부를 판단하는 예이다. 도시된 예에서, 장애 예측 장치(1)는 액세스 로그 데이터(2)로부터 생성된 활동 기록 데이터(4)의 특성상 정상적으로 접속된 사용자의 데이터가 아닌 것으로 판단되는 경우, 사용자 구분을 위한 데이터로 사용하지 않고, 이상 감지(Anomaly Detection) 데이터로 사용할 수 있다. 9 is an example of determining whether a user is normally connected based on exemplary activity record data that may be provided in some embodiments of the present invention. In the illustrated example, when it is determined that the failure prediction device 1 is not the data of a normally connected user due to the characteristics of the activity record data 4 generated from the access log data 2, it is not used as data for user classification. It can be used as anomaly detection data.

도시된 바와 같이, 동작 S91에서, 사용자 식별자(UUID)(85)에 해당하는 세션이 종료된 것으로 판단되면, 동작 S92에서, 활동 기록 데이터(4)에 포함되어 있는 단말 환경 정보(83)에 기반하여 정상적으로 접속된 사용자인지 여부가 판단된다. 이 때, 단말 환경 정보(83)가 정상적으로 접속된 사용자의 것이 아닌 것으로 이미 알려져 있다면, 해당 데이터가 활동 기록 데이터(4)로부터 제거될 수 있다. As shown, in operation S91, if it is determined that the session corresponding to the user identifier (UUID) 85 is terminated, in operation S92, based on the terminal environment information 83 included in the activity record data 4 Thus, it is determined whether the user is normally connected. At this time, if it is already known that the terminal environment information 83 does not belong to the normally connected user, the corresponding data may be removed from the activity record data 4 .

동작 S92의 수행 결과, 단말 환경 정보(83)에 기반하여 정상적으로 접속된 사용자로 판단되는 경우, 동작 S93에서, 사용자 식별자(UUID)(85)의 접속 기록에 기반하여 정상적으로 접속된 사용자인지 여부가 판단된다. 예로서, IP 어드레스가 정상적으로 접속된 사용자의 것이 아닌 경우, 해당 데이터가 활동 기록 데이터(4)로부터 제거될 수 있다. 또한, 계속해서 반복적으로 접속하고 있는 경우에 있어서도 정상적으로 접속된 사용자의 데이터가 아닌 것으로 보고, 해당 데이터가 활동 기록 데이터(4)로부터 제거될 수 있다.As a result of operation S92, if it is determined that the user is normally connected based on the terminal environment information 83, in operation S93, it is determined whether the user is normally connected based on the access record of the user identifier (UUID) 85 do. For example, if the IP address does not belong to a normally connected user, the corresponding data may be removed from the activity record data 4 . In addition, even in the case of continuous and repeated access, the data may be removed from the activity record data 4 as it is regarded as not data of a normally connected user.

다음으로, 동작 S93의 수행 결과, 접속 기록에 기반하여 정상적으로 접속된 사용자로 판단되는 경우, 동작 S94에서, 접속 이탈 여부가 추가적으로 판단된다. 예로서, 사용자 식별자(UUID)(85)의 접속 기록이 단 한 건인 경우 이탈된 사용자로 판단하고, 해당 데이터가 활동 기록 데이터(4)로부터 제거될 수 있다.Next, when it is determined that the user is normally connected based on the access record as a result of performing operation S93, in operation S94, whether or not the connection is separated is additionally determined. For example, if there is only one access record of the user identifier (UUID) 85 , it is determined that the user is a departed user, and the corresponding data may be removed from the activity record data 4 .

동작 S94의 수행 결과, 접속 이탈이 발생하지 않은 것으로 판단된 경우, 동작 S951에서, 정상적으로 접속된 사용자에 해당하는 활동 기록 데이터(4)로 판단되어, 동작 S961에서, 활동 기록 데이터(4)에 기반하여 사용자가 정상 그룹 또는 장애 경험 그룹으로 구분될 수 있다. As a result of the operation S94, when it is determined that the disconnection has not occurred, in operation S951, it is determined as the activity record data 4 corresponding to the normally connected user, and in operation S961, based on the activity record data 4 Thus, the user can be divided into a normal group or a disabled experience group.

만약, 동작 S94의 수행 결과, 접속 이탈이 발생한 것으로 판단된 경우, 동작 S952에서, 해당 데이터의 특성상 정상적으로 접속된 사용자의 데이터가 아닌 것으로 판단되어 활동 기록 데이터(4)로부터 제거되고, 동작 S962에서, 제거된 데이터는 액세스 로그 데이터(92)에 대한 별도의 이상 감지(Anomaly Detection) 데이터로 사용될 수 있다. If, as a result of performing operation S94, it is determined that disconnection has occurred, in operation S952, it is determined that the data is not the data of the normally connected user and is removed from the activity record data 4, in operation S962, The removed data may be used as separate anomaly detection data for the access log data 92 .

상기와 같은 본 발명의 실시예에 따라, 액세스 로그로부터 생성된 활동 기록 데이터의 특성이 사람이 아닌 경우에는 이상 감지를 위한 데이터로 활용될 수 있다.According to the embodiment of the present invention as described above, when the characteristic of the activity record data generated from the access log is not a person, it may be utilized as data for abnormal detection.

도 10은 본 발명의 몇몇 실시예들에서 제공될 수 있는 예시적인 활동 기록 데이터에 기반하여 사용자를 구분하는 예이다. 도시된 예에서, 장애 예측 장치(1)는 액세스 로그 데이터(21)로부터 생성된 활동 기록 데이터(41)에 기반하여 사용자를 정상 그룹(51) 또는 장애 경험 그룹(52)으로 구분할 수 있다. 10 is an example of classifying a user based on exemplary activity record data that may be provided in some embodiments of the present invention. In the illustrated example, the failure prediction apparatus 1 may classify the user into a normal group 51 or a failure experience group 52 based on the activity record data 41 generated from the access log data 21 .

일 실시예로서, 장애 예측 장치(1)는 사용자별 활동 기록 데이터(41)에서 사용자 식별자(UUID)(91)에 해당하는 지연 처리 정보(92) 및 에러 발생 정보(93)를 이용하여 사용자를 정상 그룹(51) 또는 장애 경험 그룹(52)으로 구분할 수 있다. 여기서, 지연 처리 정보(92)는 예컨대 'DELAYED'와 같이 지연 처리된 건수를 포함하고, 에러 발생 정보(93)는 예컨대 '2XX'와 같은 에러 코드의 발생 건수를 포함할 수 있다. 예로서, 장애 예측 장치(1)는 지연 처리 건수 또는 에러 코드 발생 건수가 기 설정된 기준치(예컨대 10건) 이상인 경우 사용자를 장애 경험 그룹(52)으로 구분할 수 있다. 다른 예로서, 장애 예측 장치(1)는 지연 처리 건수 및 에러 코드 발생 건수가 모두 기 설정된 기준치(예컨대 10건) 이상인 경우 사용자를 장애 경험 그룹(52)으로 구분할 수도 있다.As an embodiment, the failure prediction device 1 uses the delay processing information 92 and the error occurrence information 93 corresponding to the user identifier (UUID) 91 in the activity record data 41 for each user to provide the user with It can be divided into a normal group 51 or a disability experience group 52 . Here, the delay processing information 92 may include the number of delayed processing cases such as 'DELAYED', and the error occurrence information 93 may include the number of occurrences of an error code such as '2XX'. For example, the failure prediction apparatus 1 may classify the user into the failure experience group 52 when the number of delayed processing cases or the number of error code occurrences is equal to or greater than a preset reference value (eg, 10 cases). As another example, the failure prediction apparatus 1 may classify the user into the failure experience group 52 when both the number of delayed processing and the number of error codes are greater than or equal to a preset reference value (eg, 10).

즉, 장애 경험 그룹(52)은 웹 서버(3)가 제공하는 인터넷 서비스를 이용하는 동안 나쁜 경험을 한 사용자들을 포함하고, 나쁜 경험에 대한 지표로서, 각 사용자별 활동 기록 데이터(4) 중 예컨대 에러 코드 발생 건수 및 지연 처리 건수 등이 포함될 수 있다. That is, the failure experience group 52 includes users who had a bad experience while using the Internet service provided by the web server 3, and as an indicator for the bad experience, among the activity record data 4 for each user, for example, an error The number of occurrences of codes and the number of delayed processing may be included.

상기와 같은 본 발명의 실시예에 따라, 액세스 로그 데이터로부터 생성된 사용자별 활동 기록 데이터를 이용하여 서비스를 이용하는 동안 나쁜 경험을 한 사용자들을 구분해낼 수 있다.According to the embodiment of the present invention as described above, users who have a bad experience while using a service can be distinguished by using activity record data for each user generated from the access log data.

도 11은 본 발명의 몇몇 실시예들에서 제공될 수 있는 예시적인 통계적 검정을 수행하여 장애 발생을 예측하는 예이다. 도시된 예에서, 장애 예측 장치(1)는 정상 그룹(51) 및 장애 경험 그룹(52) 간 활동량의 차이를 분석하기 위해, 각 그룹에 속한 사용자의 활동 기록 데이터(4)로부터 활동 기간 및 활동 건수 데이터를 소정 시간 간격으로 수집할 수 있다. 예로서, 활동 기간 및 활동 건수는, 활동 기록 데이터(4) 중 예컨대 'activityDuration'과 'activityCount'의 값을 이용하여 수집될 수 있다. 11 is an example of predicting failure occurrence by performing an exemplary statistical test that may be provided in some embodiments of the present invention. In the illustrated example, the disability prediction device 1 analyzes the difference in the amount of activity between the normal group 51 and the disability experience group 52, from the activity record data 4 of the users belonging to each group, the activity period and activity The number of cases data may be collected at predetermined time intervals. For example, the activity period and the number of activities may be collected using, for example, values of 'activityDuration' and 'activityCount' in the activity record data 4 .

장애 예측 장치(1)는 상기와 같이 수집된 활동 기간 및 활동 건수 데이터를 이용하여 정상 그룹(51) 및 장애 경험 그룹(52) 간 활동량의 차이를 분석하는 통계적 검정을 수행할 수 있다. 이 때, 통계적 검정 방법으로서, 예컨대 2-표본 T-검정 기법이 사용될 수 있다. 2-표본 T-검정 기법은, 두 집단 간 평균 차이에 대한 통계적인 유의성을 검증하는 방법으로서, 표본에서 추정된 분산이나 표준편차를 이용하여 계산된 T-검정 통계량(60)을 이용하여 검정하게 된다. The disability prediction device 1 may perform a statistical test to analyze the difference in the amount of activity between the normal group 51 and the disability experience group 52 using the activity period and activity count data collected as described above. In this case, as a statistical test method, for example, a 2-sample T-test technique may be used. The two-sample T-test technique is a method of verifying the statistical significance of the mean difference between two groups. The test is performed using the T-test statistic (60) calculated using the variance or standard deviation estimated from the sample. do.

장애 예측 장치(1)는 계산된 T-검정 통계량(60)의 분포와 관련된 검정 결과(6)를 통해 유의확률 값(p-value)을 획득하고, 이를 이용하여 장애 발생을 측할 수 있다. The failure prediction apparatus 1 may obtain a significance probability value (p-value) through the test result 6 related to the distribution of the calculated T-test statistic 60 , and use this to measure the occurrence of failure.

도시된 바와 같이, 장애 예측 장치(1)는 귀무가설을 정상 그룹(51)과 장애 경험 그룹(52) 간 차이가 없다고 가정했을 때, T-검정 기법을 이용하여 산출되는 '1-유의확률 값'(111)을 이용하여 장애 발생 가능성을 판단(112)할 수 있다. 예컨대. '1-유의확률 값'(111)이 95% 이상이면 귀무가설이 기각되어 장애가 발생한 것으로 판단되고, 50% 이상 95% 미만 장애 가능성이 증가하는 것으로 판단될 수 있다. 또한, '1-유의확률 값'(111)이 50% 미만이면 우연 또는 사소한 장애가 발생한 것으로 판단될 수 있다. 즉, '1-유의확률 값(p-value)'에 대한 임계치를 설정하고, 임계치 이상(예컨대, 50% 이상)인 경우 장애 발생 가능성이 증가하는 것으로 판단될 수 있다As shown, the failure prediction device 1 assumes that there is no difference between the normal group 51 and the disability experience group 52 in the null hypothesis, '1-significance probability value calculated using the T-test technique. '(111) may be used to determine (112) the possibility of occurrence of a failure. for example. If the '1-significance probability value' (111) is 95% or more, the null hypothesis is rejected and it is judged that a failure has occurred, and it can be determined that the probability of failure is increased by 50% or more and less than 95%. In addition, when the '1-significance probability value' 111 is less than 50%, it may be determined that an accidental or minor failure has occurred. That is, a threshold value for '1-significance probability value (p-value)' is set, and when the threshold value is higher than the threshold value (eg, 50% or higher), it can be determined that the probability of occurrence of a failure increases.

일 실시예로서, 매 시간 간격(예컨대 1분 간격)으로 활동 기간 및 활동 건수 데이터에 대해 T-검정 기법을 이용하여 산출되는 유의확률 값(p-value)들의 변화 추이를 이용하여 장애 발생 여부가 판단될 수 있다. 이 때, 유의확률 값(p-value)의 변화 추이는, 예컨대 매 시간 간격으로 계산되는 유의확률 값들의 이동 평균값(moving average)을 이용하여 판단할 수 있다.As an embodiment, the occurrence of a disorder is determined using the change trend of the significance probability values (p-values) calculated using the T-test technique for the activity period and activity count data at every time interval (eg, 1 minute interval). can be judged. In this case, the change trend of the significance probability value (p-value) may be determined using, for example, a moving average of significance values calculated at every time interval.

예로서, 매 시간 간격으로 산출되는 활동 기간(activity duration) 및 활동 건수(activity count) 데이터 중 적어도 하나에 대한 '1-유의확률 값(p-value)'들의 이동 평균값이 시간에 따라 증가하는 형태이면서 기 설정된 임계치 이상으로 증가된 경우 장애 발생 가능성이 증가하는 것으로 판단될 수 있다. For example, a moving average value of '1-significant probability values (p-values)' for at least one of an activity duration and an activity count data calculated at every time interval increases with time , it may be determined that the probability of occurrence of a failure increases when it is increased by more than a preset threshold.

다른 예로서, 매 시간 간격으로 산출되는 활동 기간(activity duration) 또는 활동 건수(activity count) 데이터에 대한 '1-유의확률 값(p-value)'들이 기 설정된 임계치 이상이고, 양쪽 데이터 중 적어도 하나에 대한 '1-유의확률 값(p-value)'의 이동 평균값이 시간에 따라 증가하는 형태를 만족하는 경우, 장애 발생 가능성이 증가하는 것으로 판단될 수도 있다.As another example, '1-significance probability values (p-values)' for activity duration or activity count data calculated at every time interval are greater than or equal to a preset threshold, and at least one of both data When the moving average value of the '1-significant probability value (p-value)' for '1' satisfies a form that increases with time, it may be determined that the probability of occurrence of a failure increases.

또 다른 예로서, 매 시간 간격으로 산출되는 활동 기간(activity duration) 및 활동 건수(activity count) 데이터 양쪽에 대한 '1-유의확률 값(p-value)'들이 모두 기 설정된 임계치 이상이고, 양쪽 데이터 중 적어도 하나에 대한 '1-유의확률 값(p-value)'의 이동 평균값이 시간에 따라 증가하는 형태를 만족하는 경우, 장애 발생 가능성이 증가하는 것으로 판단될 수 있다.상기와 같은 본 발명의 실시예에 따라, 서비스의 특성에 맞는 모니터링 데이터를 수집하는 별도의 과정 없이 액세스 로그 데이터만을 이용하여 사용자를 구분하고, 구분된 사용자 그룹 간 차이에 대한 통계적 검정을 통해 서비스의 장애 발생을 예측할 수 있다. As another example, '1-significance probability values (p-values)' for both the activity duration and activity count data calculated at every time interval are above a preset threshold, and both data When the moving average value of the '1-significant probability value (p-value)' for at least one of them satisfies a form that increases with time, it may be determined that the probability of occurrence of a failure increases. According to an embodiment, users are classified using only access log data without a separate process of collecting monitoring data suitable for the characteristics of the service, and the occurrence of service failure can be predicted through statistical testing of the difference between the divided user groups. .

도 12는 본 발명의 몇몇 실시예들에서 제공될 수 있는 예시적인 유의확률 값의 변화 추이를 이용하여 장애 발생을 예측하는 예이다. 도 12를 참조하면, 장애 예측 장치(1)는, 매 시간 간격으로 정상 그룹(51) 및 장애 경험 그룹(52) 간 활동 기간(activity duration) 데이터의 차이가 있는지를 T-검정 기법을 이용하여 산출되는 '1-유의확률 값(p-value)'들의 변화 추이를 이용하여 장애 발생 가능성을 예측할 수 있다. 12 is an example of predicting the occurrence of a failure using an exemplary change in significance value that may be provided in some embodiments of the present invention. Referring to FIG. 12 , the failure prediction apparatus 1 uses a T-test technique to determine whether there is a difference in activity duration data between the normal group 51 and the disability experience group 52 at every time interval. The probability of occurrence of a failure can be predicted using the change trend of the calculated '1-significant probability values (p-values)'.

도시된 그래프(130)는, 시간대 별로 활동 기간(activity duration) 데이터에 대한 '1-유의확률 값(p-value)'의 변화 추이를 보여주고 있다. 예로서, 임계값이 50%로 설정된 경우, 13시(13:00) 부근의 '1-유의확률 값(p-value)'이 50% 이상이므로 13시 주변 시간대에 장애가 발생된 것으로 판단될 수 있다. The illustrated graph 130 shows the change trend of '1-significance probability value (p-value)' for activity duration data for each time period. For example, if the threshold is set to 50%, it can be determined that a failure has occurred in the time zone around 13:00 because the '1-significant probability value (p-value)' around 13:00 (13:00) is 50% or more. have.

또한, 활동 건수(activity count) 데이터에 대해서도 도시된 그래프(130)와 같이 시간대 별로 '1-유의확률 값(p-value)'의 변화 추이를 보여주는 그래프가 생성될 수 있다.In addition, a graph showing the change trend of the '1-significant probability value (p-value)' for each time period may be generated like the graph 130 shown for activity count data.

상기와 같이, 본 발명의 실시예에 의하면, 장애 가능성을 판단함에 있어, 시간대 별로 활동 기간 및 활동 건수 데이터 중 적어도 하나에 대한 '1-유의확률 값'들의 변화 추이를 분석함에 의해, 장애 발생 가능성을 판단할 수 있다.As described above, according to the embodiment of the present invention, in determining the possibility of failure, by analyzing the change trend of the '1-significance probability values' for at least one of the activity period and the number of activity data for each time period, the probability of occurrence of a failure can be judged

도 13은 본 발명의 몇몇 실시예들에서 제공될 수 있는 예시적인 기 정의된 세그먼트 별로 오류 관련 단어와 관련된 통계 결과를 생성하는 예이다. 도시된 예에서, 장애 예측 장치(1)는 장애 발생 예측을 통해 서비스의 장애가 발생한 것으로 판단되는 경우, 액세스 로그 데이터(2)로부터 오류 관련 단어(Failure Word)(121)를 검출할 수 있다. 여기서, 오류 관련 단어(Failure Word)는, 액세스 로그 데이터에 있어 오류 발생과 관련하여 잘 알려져 있는 단어로서, 예컨대 error, Error, FATAL, EXCEPTION, Fail, Failure, critical 등을 포함할 수 있다. 13 is an example of generating statistical results related to error-related words for each exemplary predefined segment that may be provided in some embodiments of the present invention. In the illustrated example, when it is determined that a service failure has occurred through failure prediction, the failure prediction apparatus 1 may detect a failure word 121 from the access log data 2 . Here, the error-related word (Failure Word) is a well-known word related to the occurrence of an error in the access log data, and may include, for example, error, Error, FATAL, EXCEPTION, Fail, Failure, critical, and the like.

장애 예측 장치(1)는 기 정의된 세그먼트 별로 검출된 오류 관련 단어(121)와 관련된 통계 결과를 생성할 수 있다. 여기서, 세그먼트는 예컨대, 서비스명(service), 호스트명(hostname), 어플리케이션(application), 및 로그 경로(Log Path) 등으로 지정될 수 있다. 세그먼트는 기 지정된 것 외에 사용자에 의해 추가로 지정될 수도 있다. The failure prediction apparatus 1 may generate statistical results related to the error-related word 121 detected for each predefined segment. Here, the segment may be designated by, for example, a service name, a host name, an application, and a log path. The segment may be additionally designated by the user in addition to the previously designated segment.

장애 예측 장치(1)는, 오류 관련 단어와 관련된 통계 결과를 생성 시, 세그먼트 별로 오류 관련 단어의 검출 순위에 관한 통계(122)가 산출될 수 있다. 예로서, 서비스명(service), 호스트명(hostname), 어플리케이션(application) 별로 오류 관련 단어의 검출 횟수가 높은 순서로 대상 세그먼트가 추출될 수 있다. When the failure prediction apparatus 1 generates statistical results related to error-related words, statistics 122 regarding the detection order of error-related words for each segment may be calculated. For example, the target segments may be extracted in the order of the highest number of times of detection of error-related words for each service name, host name, and application.

장애 예측 장치(1)는, 상기와 같은 세그먼트별 통계 결과에 기초하여 장애 시점 및 장애 원인을 파악하고, 장애 시점을 기준으로 장애 원인과 관련된 액세스 로그 데이터를 이용하여 장애 원인의 상세 분석 결과를 제공할 수 있다.The failure prediction device 1 identifies the failure time and the failure cause based on the statistical results for each segment as described above, and provides a detailed analysis result of the failure cause using the access log data related to the failure cause based on the failure time can do.

상기와 같은 본 발명의 실시예에 따라, 액세스 로그 데이터로부터 사용자의 서비스 경험에 기반하여 장애를 예측하고, 장애의 원인과 관련된 통계 결과를 제공해 줄 수 있다.According to the embodiment of the present invention as described above, it is possible to predict a failure based on the user's service experience from the access log data, and provide statistical results related to the cause of the failure.

도 14는 본 발명의 몇몇 실시예에 따른 방법들을 구현할 수 있는 예시적인 컴퓨팅 장치의 하드웨어 구성도이다. 도시된 바와 같이, 컴퓨팅 장치(100)는 하나 이상의 프로세서(101), 버스(107), 네트워크 인터페이스(102), 프로세서(101)에 의하여 수행되는 컴퓨터 프로그램(105)을 로드(load)하는 메모리(103)와, 컴퓨터 프로그램(105)를 저장하는 스토리지(104)를 포함할 수 있다. 다만, 도 14에는 본 발명의 실시예와 관련 있는 구성요소들 만이 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 14에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다. 14 is a hardware configuration diagram of an exemplary computing device that may implement methods according to some embodiments of the present invention. As shown, the computing device 100 includes one or more processors 101 , a bus 107 , a network interface 102 , and a memory (loading) a computer program 105 executed by the processor 101 . 103 ) and a storage 104 for storing the computer program 105 . However, only the components related to the embodiment of the present invention are illustrated in FIG. 14 . Accordingly, those skilled in the art to which the present invention pertains can see that other general-purpose components other than the components shown in FIG.

프로세서(101)는 컴퓨팅 장치(100)의 각 구성의 전반적인 동작을 제어한다. 프로세서(101)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit) 또는 본 발명의 기술 분야에 잘 알려진 임의의 형태의 프로세서 중 적어도 하나를 포함하여 구성될 수 있다. 또한, 프로세서(101)는 본 발명의 다양한 실시예들에 따른 방법/동작을 실행하기 위한 적어도 하나의 애플리케이션 또는 프로그램에 대한 연산을 수행할 수 있다. 컴퓨팅 장치(100)는 하나 이상의 프로세서를 구비할 수 있다.The processor 101 controls the overall operation of each component of the computing device 100 . The processor 101 includes at least one of a central processing unit (CPU), a micro processor unit (MPU), a micro controller unit (MCU), a graphic processing unit (GPU), or any type of processor well known in the art. may be included. In addition, the processor 101 may perform an operation on at least one application or program for executing the method/operation according to various embodiments of the present disclosure. The computing device 100 may include one or more processors.

메모리(103)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(103)는 본 발명의 다양한 실시예들에 따른 방법/동작들을 실행하기 위하여 스토리지(104)로부터 하나 이상의 프로그램(105)을 로드(load) 할 수 있다. 예를 들어, 컴퓨터 프로그램(105)이 메모리(103)에 로드 되면, 로직(또는 모듈)이 메모리(103) 상에 구현될 수 있다. 메모리(103)의 예시는 RAM이 될 수 있으나, 이에 한정되는 것은 아니다.The memory 103 stores various data, commands and/or information. Memory 103 may load one or more programs 105 from storage 104 to execute methods/operations according to various embodiments of the present invention. For example, if the computer program 105 is loaded into the memory 103 , logic (or modules) may be implemented on the memory 103 . An example of the memory 103 may be a RAM, but is not limited thereto.

버스(107)는 컴퓨팅 장치(100)의 구성 요소 간 통신 기능을 제공한다. 버스(107)는 주소 버스(Address Bus), 데이터 버스(Data Bus) 및 제어 버스(Control Bus) 등 다양한 형태의 버스로 구현될 수 있다.The bus 107 provides communication functions between the components of the computing device 100 . The bus 107 may be implemented as various types of buses, such as an address bus, a data bus, and a control bus.

네트워크 인터페이스(102)는 컴퓨팅 장치(100)의 유무선 인터넷 통신을 지원한다. 네트워크 인터페이스(102)는 인터넷 통신 외의 다양한 통신 방식을 지원할 수도 있다. 이를 위해, 네트워크 인터페이스(102)는 본 발명의 기술 분야에 잘 알려진 통신 모듈을 포함하여 구성될 수 있다.The network interface 102 supports wired/wireless Internet communication of the computing device 100 . The network interface 102 may support various communication methods other than Internet communication. To this end, the network interface 102 may be configured to include a communication module well known in the art.

스토리지(104)는 하나 이상의 컴퓨터 프로그램(105)을 비임시적으로 저장할 수 있다. 스토리지(104)는 플래시 메모리 등과 같은 비휘발성 메모리, 하드 디스크, 착탈형 디스크, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체를 포함하여 구성될 수 있다. The storage 104 may store one or more computer programs 105 non-transitory. The storage 104 may include a non-volatile memory such as a flash memory, a hard disk, a removable disk, or any type of computer-readable recording medium well known in the art.

컴퓨터 프로그램(105)은 본 발명의 다양한 실시예들에 따른 방법/동작들이 구현된 하나 이상의 인스트럭션들(instructions)을 포함할 수 있다. 컴퓨터 프로그램(105)이 메모리(103)에 로드 되면, 프로세서(101)는 상기 하나 이상의 인스트럭션들을 실행시킴으로써 본 발명의 다양한 실시예들에 따른 방법/동작들을 수행할 수 있다.The computer program 105 may include one or more instructions in which methods/operations according to various embodiments of the present invention are implemented. When the computer program 105 is loaded into the memory 103 , the processor 101 may execute the one or more instructions to perform methods/operations according to various embodiments of the present invention.

지금까지 도 1 내지 도 14를 참조하여 본 발명의 다양한 실시예들 및 그 실시예들에 따른 효과들을 언급하였다. 본 발명의 기술적 사상에 따른 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.So far, various embodiments of the present invention and effects according to the embodiments have been described with reference to FIGS. 1 to 14 . Effects according to the technical spirit of the present invention are not limited to the above-mentioned effects, and other effects not mentioned will be clearly understood by those skilled in the art from the following description.

지금까지 설명된 본 발명의 기술적 사상은 컴퓨터가 읽을 수 있는 매체 상에 컴퓨터가 읽을 수 있는 코드로 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체는, 예를 들어 이동형 기록 매체(CD, DVD, 블루레이 디스크, USB 저장 장치, 이동식 하드 디스크)이거나, 고정식 기록 매체(ROM, RAM, 컴퓨터 구비 형 하드 디스크)일 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체에 기록된 상기 컴퓨터 프로그램은 인터넷 등의 네트워크를 통하여 다른 컴퓨팅 장치에 전송되어 상기 다른 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 다른 컴퓨팅 장치에서 사용될 수 있다.The technical idea of the present invention described so far may be embodied as computer-readable codes on a computer-readable medium. The computer-readable recording medium may be, for example, a removable recording medium (CD, DVD, Blu-ray disk, USB storage device, removable hard disk) or a fixed recording medium (ROM, RAM, computer-equipped hard disk). can The computer program recorded in the computer-readable recording medium may be transmitted to another computing device through a network, such as the Internet, and installed in the other computing device, thereby being used in the other computing device.

이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명의 기술적 사상이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다.In the above, even though all the components constituting the embodiment of the present invention are described as being combined or operating in combination, the technical spirit of the present invention is not necessarily limited to this embodiment. That is, within the scope of the object of the present invention, all the components may operate by selectively combining one or more.

도면에서 동작들이 특정한 순서로 도시되어 있지만, 반드시 동작들이 도시된 특정한 순서로 또는 순차적 순서로 실행되어야만 하거나 또는 모든 도시 된 동작들이 실행되어야만 원하는 결과를 얻을 수 있는 것으로 이해되어서는 안 된다. 특정 상황에서는, 멀티태스킹 및 병렬 처리가 유리할 수도 있다. 더욱이, 위에 설명한 실시예들에서 다양한 구성들의 분리는 그러한 분리가 반드시 필요한 것으로 이해되어서는 안 되고, 설명된 프로그램 컴포넌트들 및 시스템들은 일반적으로 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품으로 패키지 될 수 있음을 이해하여야 한다.Although acts are shown in a specific order in the drawings, it should not be understood that the acts must be performed in the specific order or sequential order shown, or that all shown acts must be performed to obtain a desired result. In certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of the various components in the embodiments described above should not be construed as necessarily requiring such separation, and the described program components and systems may generally be integrated together into a single software product or packaged into multiple software products. It should be understood that there is

이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 본 발명이 다른 구체적인 형태로도 실시될 수 있다는 것을 이해할 수 있다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명에 의해 정의되는 기술적 사상의 권리범위에 포함되는 것으로 해석되어야 할 것이다. Although embodiments of the present invention have been described with reference to the accompanying drawings, those of ordinary skill in the art to which the present invention pertains can practice the present invention in other specific forms without changing the technical spirit or essential features. can understand that there is Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive. The protection scope of the present invention should be interpreted by the following claims, and all technical ideas within the equivalent range should be interpreted as being included in the scope of the technical ideas defined by the present invention.

Claims (19)

컴퓨팅 장치에 의해 수행되는 방법에 있어서,
액세스 로그 데이터를 이용하여 사용자별 활동 기록 데이터를 생성하는 단계;
상기 활동 기록 데이터에 기반하여 상기 각각의 사용자를 정상 그룹 또는 장애 경험 그룹으로 구분하는 단계; 및
상기 정상 그룹과 상기 장애 경험 그룹 각각에 속한 사용자의 접속 횟수 및 접속 기간 중 적어도 하나를 이용하여 상기 정상 그룹과 상기 장애 경험 그룹 간 차이의 통계적 유의성을 검증하는 통계적 검정을 수행한 결과에 기초하여 장애 발생 여부를 판단하는 단계를 포함하는,
장애 예측 방법.
A method performed by a computing device, comprising:
generating activity record data for each user by using the access log data;
classifying each of the users into a normal group or a disability experience group based on the activity record data; and
Based on the result of performing a statistical test to verify the statistical significance of the difference between the normal group and the disability experience group using at least one of the number of accesses and the access period of users belonging to each of the normal group and the disability experience group, comprising the step of determining whether or not it has occurred,
Disability Prediction Methods.
제1 항에 있어서,
상기 액세스 로그 데이터를 이용하여 사용자별 활동 기록 데이터를 생성하는 단계는,
상기 사용자를 식별할 수 있는 사용자 식별자(UUID)를 생성하여 상기 사용자의 단말로 전송하는 단계; 및
상기 액세스 로그 데이터에 포함되는 상기 사용자 식별자(UUID)를 이용하여 활동 기록 데이터를 획득하는 단계를 포함하는,
장애 예측 방법.
According to claim 1,
The step of generating activity record data for each user by using the access log data includes:
generating a user identifier (UUID) capable of identifying the user and transmitting the generated user identifier (UUID) to the user's terminal; and
Using the user identifier (UUID) included in the access log data to obtain activity record data,
Disability Prediction Methods.
제1 항에 있어서,
상기 액세스 로그 데이터를 이용하여 사용자별 활동 기록 데이터를 생성하는 단계는,
상기 액세스 로그 데이터 중 사용자의 위치 정보 및 단말 환경 정보를 이용하여 사용자 식별자(UUID)를 생성하는 단계를 포함하는,
장애 예측 방법.
According to claim 1,
The step of generating activity record data for each user by using the access log data includes:
Including the step of generating a user identifier (UUID) by using the location information of the user and terminal environment information among the access log data,
Disability Prediction Methods.
제3 항에 있어서,
상기 액세스 로그 데이터를 이용하여 사용자별 활동 기록 데이터를 생성하는 단계는,
상기 사용자 식별자(UUID)의 접속 기록이 세션 타임(session time) 동안 유지되는 경우 동일 사용자로 식별하는 단계를 포함하는,
장애 예측 방법.
4. The method of claim 3,
The step of generating activity record data for each user by using the access log data includes:
Including the step of identifying as the same user when the access record of the user identifier (UUID) is maintained for a session time,
Disability Prediction Methods.
제1 항에 있어서,
상기 액세스 로그 데이터를 이용하여 사용자별 활동 기록 데이터를 생성하는 단계는,
상기 활동 기록 데이터의 특성이 비정상적인 것으로 판단되는 경우, 상기 액세스 로그 데이터에 대한 이상 감지(Anomaly Detection) 데이터로 사용하는 단계를 포함하는,
장애 예측 방법.
According to claim 1,
The step of generating activity record data for each user by using the access log data includes:
When it is determined that the characteristic of the activity record data is abnormal, using it as anomaly detection data for the access log data,
Disability Prediction Methods.
제1 항에 있어서,
상기 활동 기록 데이터에 기반하여 각각의 사용자를 정상 그룹 또는 장애 경험 그룹으로 구분하는 단계는,
상기 사용자에 대응하는 에러 코드 발생 건수 및 지연 처리 건수 중 적어도 하나가 기 설정된 기준치 이상인 경우 상기 사용자를 장애 경험 그룹으로 구분하는 단계를 포함하는,
장애 예측 방법.
According to claim 1,
The step of classifying each user into a normal group or a disability experience group based on the activity record data,
When at least one of the number of occurrences of error codes and the number of delayed processing corresponding to the user is greater than or equal to a preset reference value, classifying the user into a disability experience group
Disability Prediction Methods.
제6 항에 있어서,
상기 사용자에 대응하는 에러 코드 발생 건수 및 지연 처리 건수 중 적어도 하나가 기 설정된 기준치 이상인 경우 상기 사용자를 장애 경험 그룹으로 구분하는 단계는,
상기 지연 처리의 판단을 위한 기준 시간을 조정 가능한 단계를 포함하는,
장애 예측 방법.
7. The method of claim 6,
When at least one of the number of occurrences of error codes and the number of delayed processing cases corresponding to the user is greater than or equal to a preset reference value, the step of classifying the user into a disability experience group includes:
Comprising the step of adjusting the reference time for the determination of the delay processing,
Disability Prediction Methods.
제1 항에 있어서,
상기 장애 발생 여부를 판단하는 단계는,
상기 정상 그룹과 상기 장애 경험 그룹 각각에 속한 사용자의 상기 접속 기간 및 상기 접속 횟수의 데이터를 소정 시간 간격으로 수집하는 단계;
상기 수집된 데이터를 이용하여 상기 정상 그룹 및 상기 장애 경험 그룹 간 차이의 통계적 유의성을 검증하는 통계적 검정을 수행하는 단계; 및
상기 통계적 검정의 수행 결과 획득되는 유의확률 값(p-value)의 변화 추이에 기반하여 상기 장애 발생 여부를 판단하는 단계를 포함하는,
장애 예측 방법.
According to claim 1,
The step of determining whether the failure occurs,
collecting data of the access period and the number of times of access of users belonging to each of the normal group and the disability experience group at predetermined time intervals;
performing a statistical test to verify the statistical significance of the difference between the normal group and the disability experience group using the collected data; and
Comprising the step of determining whether the failure occurs based on the change trend of the significance probability value (p-value) obtained as a result of performing the statistical test,
Disability Prediction Methods.
제1 항에 있어서,
상기 장애 발생 여부의 판단을 통해 서비스의 장애가 발생한 것으로 판단되는 경우, 상기 액세스 로그 데이터로부터 오류 관련 단어(Failure Word)를 검출하는 단계; 및
기 정의된 세그먼트 별로 상기 검출된 오류 관련 단어와 관련된 통계 결과를 생성하는 단계를 더 포함하는,
장애 예측 방법.
According to claim 1,
detecting a failure word from the access log data when it is determined that a service failure has occurred through the determination of whether the failure has occurred; and
The method further comprising the step of generating statistical results related to the detected error-related words for each predefined segment;
Disability Prediction Methods.
제9 항에 있어서,
상기 오류 관련 단어(Failure Word)는 사용자에 의해 지정 가능한 것인,
장애 예측 방법.
10. The method of claim 9,
The error-related word (Failure Word) is one that can be specified by the user,
Disability Prediction Methods.
제9 항에 있어서,
상기 기 정의된 세그먼트 별로 상기 검출된 오류 관련 단어와 관련된 통계 결과를 생성하는 단계는,
상기 오류 관련 단어의 검출 횟수의 이동 평균값(Moving Average)을 이용하여 계산된 변동율에 기반하여 상기 세그먼트 별로 상기 오류 관련 단어가 가장 많이 검출된 대상 세그먼트를 추출하는 단계를 포함하는,
장애 예측 방법.
10. The method of claim 9,
The step of generating statistical results related to the detected error-related words for each of the predefined segments includes:
extracting a target segment in which the error-related word is detected the most for each segment based on a rate of change calculated using a moving average of the number of times of detection of the error-related word;
Disability Prediction Methods.
제11 항에 있어서,
상기 오류 관련 단어의 검출 횟수의 이동 평균값(Moving Average)을 이용하여 계산된 변동율에 기반하여 상기 세그먼트 별로 상기 오류 관련 단어가 가장 많이 검출된 대상 세그먼트를 추출하는 단계는,
상기 변동율을 계산 시 상기 오류 관련 단어의 검출 시점에 따라 서로 다른 가중치를 적용하는 단계를 포함하는,
장애 예측 방법.
12. The method of claim 11,
The step of extracting the target segment in which the error-related word is detected the most for each segment based on the rate of change calculated using a moving average of the number of times of detection of the error-related word is:
Comprising the step of applying different weights according to the detection time of the error-related word when calculating the rate of change,
Disability Prediction Methods.
제9 항에 있어서,
상기 세그먼트별 통계 결과에 기초하여 장애 시점 및 장애 원인을 파악하는 단계;
상기 장애 시점을 기준으로 상기 장애 원인과 관련된 액세스 로그 데이터를 획득하는 단계; 및
상기 획득된 액세스 로그 데이터를 이용하여 장애 원인의 상세 분석 결과를 제공하는 단계를 더 포함하는,
장애 예측 방법.
10. The method of claim 9,
identifying a failure time point and a failure cause based on the statistical results for each segment;
acquiring access log data related to the cause of the failure based on the failure time point; and
Further comprising the step of providing a detailed analysis result of the failure cause by using the obtained access log data,
Disability Prediction Methods.
장애 예측 장치에 있어서,
하나 이상의 프로세서;
외부 장치와 통신하는 통신 인터페이스;
상기 프로세서에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리; 및
상기 컴퓨터 프로그램을 저장하는 스토리지를 포함하되,
상기 컴퓨터 프로그램은,
액세스 로그 데이터를 이용하여 사용자별 활동 기록 데이터를 생성하는 동작,
상기 활동 기록 데이터에 기반하여 상기 각각의 사용자를 정상 그룹 또는 장애 경험 그룹으로 구분하는 동작, 및
상기 정상 그룹과 상기 장애 경험 그룹 각각에 속한 사용자의 접속 횟수 및 접속 기간 중 적어도 하나를 이용하여 상기 정상 그룹과 상기 장애 경험 그룹 간 차이의 통계적 유의성을 검증하는 통계적 검정을 수행한 결과에 기초하여 장애 발생 여부를 판단하는 동작을 수행하기 위한 인스트럭션들(instructions)을 포함하는,
장애 예측 장치.
In the failure prediction device,
one or more processors;
a communication interface for communicating with an external device;
a memory for loading a computer program executed by the processor; and
a storage for storing the computer program;
The computer program is
generating activity record data for each user using access log data;
classifying each of the users into a normal group or a disability experience group based on the activity record data, and
Based on the result of performing a statistical test to verify the statistical significance of the difference between the normal group and the disability experience group using at least one of the number of accesses and the access period of users belonging to each of the normal group and the disability experience group, Including instructions for performing an operation to determine whether or not occurred,
failure prediction device.
제14 항에 있어서,
상기 액세스 로그 데이터를 이용하여 사용자별 활동 기록 데이터를 생성하는 동작은,
상기 액세스 로그 데이터 중 사용자의 위치 정보 및 단말 환경 정보를 이용하여 상기 사용자를 식별하는 동작을 포함하는,
장애 예측 장치.
15. The method of claim 14,
The operation of generating activity record data for each user using the access log data includes:
Including the operation of identifying the user by using the user's location information and terminal environment information among the access log data,
failure prediction device.
제14 항에 있어서,
상기 활동 기록 데이터에 기반하여 상기 각각의 사용자를 정상 그룹 또는 장애 경험 그룹으로 구분하는 동작은,
상기 사용자에 대응하는 에러 코드 발생 건수 및 지연 처리 건수 중 적어도 하나가 기 설정된 기준치 이상인 경우 상기 사용자를 장애 경험 그룹으로 구분하는 동작을 포함하는,
장애 예측 장치.
15. The method of claim 14,
The operation of classifying each of the users into a normal group or a disability experience group based on the activity record data,
When at least one of the number of occurrences of error codes and the number of delayed processing corresponding to the user is greater than or equal to a preset reference value, classifying the user into a disability experience group
failure prediction device.
제14 항에 있어서,
상기 장애 발생 여부를 판단하는 동작은,
상기 정상 그룹과 상기 장애 경험 그룹 각각에 속한 사용자의 상기 접속 기간 및 상기 접속 횟수의 데이터를 소정 시간 간격으로 수집하는 동작,
상기 수집된 데이터를 이용하여 상기 정상 그룹 및 상기 장애 경험 그룹 간 차이의 통계적 유의성을 검증하는 통계적 검정을 수행하는 동작, 및
상기 통계적 검정의 수행 결과 획득되는 유의확률 값(p-value)의 변화 추이에 기반하여 상기 장애 발생 여부를 판단하는 동작을 포함하는,
장애 예측 장치.
15. The method of claim 14,
The operation of determining whether the failure occurs is,
collecting data of the access period and the number of times of access of users belonging to each of the normal group and the disability experience group at predetermined time intervals;
performing a statistical test to verify the statistical significance of the difference between the normal group and the disability experience group using the collected data, and
Comprising the operation of determining whether the failure occurs based on the change trend of the significance probability value (p-value) obtained as a result of performing the statistical test,
failure prediction device.
제14 항에 있어서,
상기 컴퓨터 프로그램은,
상기 장애 발생 여부의 판단을 통해 서비스의 장애가 발생한 것으로 판단되는 경우, 상기 액세스 로그 데이터로부터 오류 관련 단어(Failure Word)를 검출하는 동작, 및
기 정의된 세그먼트 별로 상기 검출된 오류 관련 단어와 관련된 통계 결과를 생성하는 동작을 수행하기 위한 인스트럭션을 더 포함하는,
장애 예측 장치.
15. The method of claim 14,
The computer program is
When it is determined that a service failure has occurred through the determination of whether the failure has occurred, an operation of detecting a failure word from the access log data; and
Further comprising instructions for performing an operation of generating statistical results related to the detected error-related word for each predefined segment,
failure prediction device.
제18 항에 있어서,
상기 컴퓨터 프로그램은,
상기 세그먼트별 통계 결과에 기초하여 장애 시점 및 장애 원인을 파악하는 동작,
상기 장애 시점을 기준으로 상기 장애 원인과 관련된 액세스 로그 데이터를 획득하는 동작, 및
상기 획득된 액세스 로그 데이터를 이용하여 장애 원인의 상세 분석 결과를 제공하는 동작을 수행하기 위한 인스트럭션을 더 포함하는,
장애 예측 장치.
19. The method of claim 18,
The computer program is
an operation of determining the time point of failure and the cause of the failure based on the statistical results for each segment;
obtaining access log data related to the cause of the failure based on the time of failure; and
Further comprising instructions for performing an operation of providing a detailed analysis result of the cause of failure by using the obtained access log data,
failure prediction device.
KR1020200126576A 2020-09-29 2020-09-29 Method for failure prediction and apparatus implementing the same method KR102266416B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200126576A KR102266416B1 (en) 2020-09-29 2020-09-29 Method for failure prediction and apparatus implementing the same method
KR1020210076172A KR20220043844A (en) 2020-09-29 2021-06-11 Method for failure prediction and apparatus implementing the same method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200126576A KR102266416B1 (en) 2020-09-29 2020-09-29 Method for failure prediction and apparatus implementing the same method

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020210076172A Division KR20220043844A (en) 2020-09-29 2021-06-11 Method for failure prediction and apparatus implementing the same method

Publications (1)

Publication Number Publication Date
KR102266416B1 true KR102266416B1 (en) 2021-06-17

Family

ID=76603944

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020200126576A KR102266416B1 (en) 2020-09-29 2020-09-29 Method for failure prediction and apparatus implementing the same method
KR1020210076172A KR20220043844A (en) 2020-09-29 2021-06-11 Method for failure prediction and apparatus implementing the same method

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020210076172A KR20220043844A (en) 2020-09-29 2021-06-11 Method for failure prediction and apparatus implementing the same method

Country Status (1)

Country Link
KR (2) KR102266416B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116344012A (en) * 2023-05-29 2023-06-27 北京梆梆安全科技有限公司 Diagnosis and treatment log medical management system of (a)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012092124A2 (en) * 2010-12-27 2012-07-05 Microsoft Corporation Predicting, diagnosing, and recovering from application failures based on resource access patterns
KR20140055282A (en) * 2012-10-31 2014-05-09 에스케이플래닛 주식회사 Web appalication error analisis system, apparatus and method for user terminal
KR101793723B1 (en) * 2017-04-25 2017-11-06 주식회사 디리아 System and Method for Analyzing Online Behavior Pattern and Predicting System Failure
KR101856543B1 (en) 2018-02-26 2018-05-11 주식회사 리앙커뮤니케이션즈 Failure prediction system based on artificial intelligence

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012092124A2 (en) * 2010-12-27 2012-07-05 Microsoft Corporation Predicting, diagnosing, and recovering from application failures based on resource access patterns
JP2014501420A (en) * 2010-12-27 2014-01-20 マイクロソフト コーポレーション Predict, diagnose, and recover from application failures based on resource access patterns
KR20140055282A (en) * 2012-10-31 2014-05-09 에스케이플래닛 주식회사 Web appalication error analisis system, apparatus and method for user terminal
KR101793723B1 (en) * 2017-04-25 2017-11-06 주식회사 디리아 System and Method for Analyzing Online Behavior Pattern and Predicting System Failure
KR101856543B1 (en) 2018-02-26 2018-05-11 주식회사 리앙커뮤니케이션즈 Failure prediction system based on artificial intelligence

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116344012A (en) * 2023-05-29 2023-06-27 北京梆梆安全科技有限公司 Diagnosis and treatment log medical management system of (a)
CN116344012B (en) * 2023-05-29 2023-08-18 北京梆梆安全科技有限公司 Medical management system based on diagnosis and treatment log

Also Published As

Publication number Publication date
KR20220043844A (en) 2022-04-05

Similar Documents

Publication Publication Date Title
Lu et al. Making disk failure predictions {SMARTer}!
Li et al. Predicting node failures in an ultra-large-scale cloud computing platform: an aiops solution
US20220358380A1 (en) Method for failure prediction and apparatus implementing the same method
Syer et al. Leveraging performance counters and execution logs to diagnose memory-related performance issues
US10467590B2 (en) Business process optimization and problem resolution
CN109324968B (en) System testing method and device
Li et al. Characterizing the differences between pre-and post-release versions of software
US10929258B1 (en) Method and system for model-based event-driven anomalous behavior detection
CN112596964A (en) Disk failure prediction method and device
EP3293664B1 (en) Software analysis system, software analysis method, and software analysis program
CN111898059A (en) Website page quality evaluation and monitoring method and system
KR102266416B1 (en) Method for failure prediction and apparatus implementing the same method
CN112988437A (en) Fault prediction method and device, electronic equipment and storage medium
CN111091863A (en) Storage equipment fault detection method and related device
CN117094184B (en) Modeling method, system and medium of risk prediction model based on intranet platform
CN110602207A (en) Method, device, server and storage medium for predicting push information based on off-network
CN112100035A (en) Page abnormity detection method, system and related device
CN113033639A (en) Training method of abnormal data detection model, electronic device and storage medium
CN112817869A (en) Test method, test device, test medium, and electronic apparatus
CN110490132B (en) Data processing method and device
CN107402883B (en) A kind of data test treating method and apparatus
CN116662197A (en) Automatic interface testing method, system, computer and readable storage medium
CN116340934A (en) Terminal abnormal behavior detection method, device, equipment and storage medium
CN113656391A (en) Data detection method and device, storage medium and electronic equipment
WO2011151419A1 (en) Test operation

Legal Events

Date Code Title Description
A107 Divisional application of patent
GRNT Written decision to grant