KR102523671B1 - Log-based anomaly detection system of autonomous driving system and its operation method - Google Patents

Log-based anomaly detection system of autonomous driving system and its operation method Download PDF

Info

Publication number
KR102523671B1
KR102523671B1 KR1020220147135A KR20220147135A KR102523671B1 KR 102523671 B1 KR102523671 B1 KR 102523671B1 KR 1020220147135 A KR1020220147135 A KR 1020220147135A KR 20220147135 A KR20220147135 A KR 20220147135A KR 102523671 B1 KR102523671 B1 KR 102523671B1
Authority
KR
South Korea
Prior art keywords
log
real
time
anomaly detection
pattern
Prior art date
Application number
KR1020220147135A
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 KR1020220147135A priority Critical patent/KR102523671B1/en
Application granted granted Critical
Publication of KR102523671B1 publication Critical patent/KR102523671B1/en

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0259Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
    • G05B23/0264Control of logging system, e.g. decision on which data to store; time-stamping measurements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/02Ensuring safety in case of control system failures, e.g. by diagnosing, circumventing or fixing failures
    • B60W50/0205Diagnosing or detecting failures; Failure detection models
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0218Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
    • G05B23/0221Preprocessing measurements, e.g. data collection rate adjustment; Standardization of measurements; Time series or signal analysis, e.g. frequency analysis or wavelets; Trustworthiness of measurements; Indexes therefor; Measurements using easily measured parameters to estimate parameters difficult to measure; Virtual sensor creation; De-noising; Sensor fusion; Unconventional preprocessing inherently present in specific fault detection methods like PCA-based methods
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0218Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
    • G05B23/0224Process history based detection method, e.g. whereby history implies the availability of large amounts of data
    • G05B23/0227Qualitative history assessment, whereby the type of data acted upon, e.g. waveforms, images or patterns, is not relevant, e.g. rule based assessment; if-then decisions
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0259Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
    • G05B23/0262Confirmation of fault detection, e.g. extra checks to confirm that a failure has indeed occurred
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0259Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
    • G05B23/0267Fault communication, e.g. human machine interface [HMI]
    • G05B23/027Alarm generation, e.g. communication protocol; Forms of alarm
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0816Indicating performance data, e.g. occurrence of a malfunction

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mechanical Engineering (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Transportation (AREA)
  • Debugging And Monitoring (AREA)

Abstract

According to the present invention, in a log-based anomaly detection system for an autonomous driving system and a method thereof, the characteristics of a plurality of log files are patterned and stored in advance, and the patterns of newly collected real-time log files are compared with previously stored patterns, such that anomaly can be automatically detected and can be determined more quickly and accurately. In addition, a hash code is assigned to a constant among log messages included in log data such that the log data is generated as a code sequence replaced by the hash code, and a pattern is generated according to a repetition order and a repetition cycle of the hash code in the code sequence, thereby simplifying the log data to detect an anomaly detection time, and improving efficiency.

Description

자율 주행 시스템의 로그 기반 이상 탐지 시스템 및 방법{Log-based anomaly detection system of autonomous driving system and its operation method}Log-based anomaly detection system of autonomous driving system and its operation method}

본 발명은 자율 주행 시스템의 로그 기반 이상 탐지 시스템 및 방법에 관한 것으로서, 보다 상세하게는 로그 파일들의 특징을 미리 패턴화하고 저장하여, 새로 수집되는 로그 파일의 패턴을 기저장된 패턴과 비교하여 자동으로 이상 발생 여부를 판단할 수 있는 자율 주행 시스템의 로그 기반 이상 탐지 시스템 및 방법에 관한 것이다. The present invention relates to a log-based anomaly detection system and method for an autonomous driving system, and more particularly, by pre-patterning and storing characteristics of log files, comparing patterns of newly collected log files with pre-stored patterns, and automatically A log-based anomaly detection system and method for an autonomous driving system capable of determining whether an anomaly has occurred.

일반적으로 자율 주행 시스템은, 시스템에서 발생하는 다양한 활동들이 시간순으로 기록된 로그 파일들이 생성된다. In general, in an autonomous driving system, log files in which various activities occurring in the system are recorded in chronological order are created.

종래에는 자율 주행 시스템을 점검하기 위해서는 관리자가 로그 파일들에서 에러 내용을 수동으로 검색하여, 시스템의 이상 여부를 판단해왔다. Conventionally, in order to check an autonomous driving system, an administrator manually searches for error contents in log files to determine whether the system is abnormal.

그러나, 로그 파일들의 용량이 클수록 에러 내용의 검색 시간과 이상 여부를 판단하는 분석 시간이 기하급수적으로 늘어나는 문제점이 있다. 또한, 관리자의 경험이나 역량에 의존되기 때문에, 신뢰도가 낮은 문제점이 있다. However, there is a problem in that, as the capacity of the log files increases, the search time for error contents and the analysis time for determining abnormalities increase exponentially. In addition, since it depends on the manager's experience or capability, there is a problem of low reliability.

최근에는 자율 주행 시스템의 보급률이 높아짐에 따라 이상 징후를 보다 신속하고 정확하게 판단하기 위한 방법에 대한 관심이 높아지고 있다.Recently, as the penetration rate of autonomous driving systems increases, interest in a method for more quickly and accurately determining an anomaly has increased.

한국등록특허 제10-1943422호Korean Patent Registration No. 10-1943422

본 발명의 목적은, 보다 신속하고 정확하게 이상 징후를 탐지할 수 있는 자율 주행 시스템의 로그 기반 이상 탐지 시스템 및 방법을 제공하는 데 있다. An object of the present invention is to provide a log-based anomaly detection system and method for an autonomous driving system capable of more quickly and accurately detecting anomalies.

본 발명에 따른 자율 주행 시스템의 로그 기반 이상 탐지 방법은, 자율 주행 시스템에서 기 발생된 복수의 로그 파일들을 수집하는 로그 수집단계와; 상기 로그 수집단계에서 수집된 로그 파일에 포함된 로그 데이터를 미리 설정된 포맷으로 전처리 가공하는 로그 가공단계와; 상기 로그 가공단계에서 가공된 로그 데이터를 분석하고 특징을 패턴화하여, 이상 탐지를 위한 패턴을 생성하여 저장하는 패턴 생성단계와; 상기 자율 주행 시스템에서 실시간으로 발생하는 실시간 로그 파일을 수신하는 실시간 로그 수신단계와; 상기 실시간 로그 파일에 포함된 실시간 로그 데이터의 특징을 패턴화하여, 상기 실시간 로그 데이터에 대한 신규 패턴을 추출하는 신규 패턴 추출단계와; 상기 신규 패턴을 기 저장된 패턴과 비교하여, 서로 다르면 이상 발생을 판단하는 이상 탐지단계를 포함한다.A log-based anomaly detection method of an autonomous driving system according to the present invention includes a log collection step of collecting a plurality of log files previously generated in an autonomous driving system; a log processing step of pre-processing the log data included in the log files collected in the log collection step into a preset format; a pattern generation step of analyzing the log data processed in the log processing step, patterning features, and generating and storing a pattern for detecting anomaly; a real-time log receiving step of receiving a real-time log file generated in real-time in the autonomous driving system; a new pattern extraction step of patternizing characteristics of real-time log data included in the real-time log file and extracting a new pattern for the real-time log data; and an anomaly detection step of comparing the new pattern with a pre-stored pattern and, if different from each other, determining the occurrence of an anomaly.

상기 패턴 생성단계는, 상기 로그 데이터에 포함된 복수의 로그 라인들마다 로그 헤더와 로그 메시지로 분리하는 과정과, 상기 로그 메시지를 변수와 상수로 분리하여, 상기 상수를 추출하는 과정과, 상기 상수에 대해 해시 코드를 부여하는 과정과, 상기 상수를 상기 해시 코드로 치환하는 과정과, 상기 로그 라인들을 상기 해시 코드로 표시한 코드 시퀀스를 생성하는 과정과, 상기 코드 시퀀스에서 상기 해시 코드의 반복 순서와 반복 주기를 탐색하여, 상기 해시 코드의 반복 순서와 반복 주기에 따라 패턴을 생성하는 과정을 포함한다.The pattern generation step may include a process of separating a log header and a log message for each of a plurality of log lines included in the log data, a process of separating the log message into a variable and a constant, and extracting the constant; A process of assigning a hash code to , a process of replacing the constant with the hash code, a process of generating a code sequence in which the log lines are expressed with the hash code, and a repetition order of the hash code in the code sequence. and searching for a repetition period and generating a pattern according to the repetition order and repetition period of the hash code.

상기 패턴 생성단계는, 상기 과정에서 새로 생성된 패턴이 데이터저장소에 기저장된 패턴과 다르면, 상기 데이터저장소에 저장된 패턴을 업데이트하는 과정을 더 포함한다.The pattern generating step may further include updating the pattern stored in the data storage if the pattern newly generated in the process is different from the pattern previously stored in the data storage.

상기 로그 가공단계에서는, 미리 설정된 알고리즘을 이용하여 상기 로그 데이터를 로그 시간과 스레드명에 따라 분류하여 클러스터링한다.In the log processing step, the log data is classified and clustered according to log time and thread name using a preset algorithm.

상기 로그 수집 단계, 상기 로그 가공단계 및 상기 패턴 생성단계는, 주기적으로 반복 수행된다.The log collection step, the log processing step, and the pattern generating step are periodically and repeatedly performed.

상기 이상 탐지단계에서 이상 발생이 판단되면, 상기 이상이 발생된 상기 실시간 로그 데이터의 로그 헤더로부터 이상 발생 시점을 추출하고, 상기 실시간 로그 데이터의 로그 메시지와 관련된 리소스를 조회하여, 이상 발생 정보를 미리 설정된 관리자 단말기에게 전송하는 이상 통보단계를 더 포함한다.If it is determined that the abnormality has occurred in the abnormality detection step, the abnormal occurrence time is extracted from the log header of the real-time log data at which the abnormality occurred, resources related to the log message of the real-time log data are searched, and abnormal occurrence information is retrieved in advance. An abnormality notification step of transmitting to the set manager terminal is further included.

상기 신규 패턴 추출단계는, 상기 실시간 로그 데이터를 상기 포맷으로 전처리한 후, 복수의 로그 라인들마다 로그 헤더와 로그 메시지로 분리하는 과정과, 상기 로그 메시지를 변수와 상수로 분리하는 과정과, 상기 상수에 대해 해시 코드를 부여하는 과정과, 상기 상수를 상기 해시 코드로 치환하는 과정과, 상기 로그 라인들을 상기 해시 코드로 표시한 코드 시퀀스를 생성하는 과정과, 상기 코드 시퀀스에서 상기 해시 코드의 반복 순서와 반복 주기를 탐색하여, 상기 해시 코드의 반복 순서와 반복 주기에 따라 상기 신규 패턴을 생성하는 과정을 포함한다.The step of extracting the new pattern may include: pre-processing the real-time log data into the format and then dividing the log header and log message into a log header and a log message for each of a plurality of log lines; separating the log message into variables and constants; A process of assigning a hash code to a constant, a process of replacing the constant with the hash code, a process of generating a code sequence in which the log lines are expressed with the hash code, and repeating the hash code in the code sequence. Searching for an order and repetition period, and generating the new pattern according to the repetition order and repetition period of the hash code.

본 발명의 다른 측면에 따른 자율 주행 시스템의 로그 기반 이상 탐지 방법은, 자율 주행 시스템에서 기 발생된 복수의 로그 파일들을 수집하는 로그 수집단계와; 상기 로그 수집단계에서 수집된 로그 파일에 포함된 로그 데이터를 미리 설정된 포맷으로 전처리 가공하는 로그 가공단계와; 상기 로그 가공단계에서 가공된 로그 데이터를 분석하고 특징을 패턴화하여, 이상 탐지를 위한 패턴을 생성하여 저장하는 패턴 생성단계와; 상기 자율 주행 시스템에서 실시간으로 발생하는 실시간 로그 파일을 수신하는 실시간 로그 수신단계와; 상기 실시간 로그 파일에 포함된 실시간 로그 데이터의 특징을 패턴화하여, 상기 실시간 로그 데이터에 대한 신규 패턴을 추출하는 신규 패턴 추출단계와; 상기 신규 패턴을 기 저장된 패턴과 비교하여, 서로 다르면 이상 발생을 판단하는 이상 탐지단계를 포함하고, 상기 패턴 생성단계는, 상기 로그 데이터에 포함된 복수의 로그 라인들마다 로그 헤더와 로그 메시지로 분리하는 과정과, 상기 로그 메시지를 변수와 상수로 분리하여, 상기 상수를 추출하는 과정과, 상기 상수에 대해 해시 코드를 부여하는 과정과, 상기 상수를 상기 해시 코드로 치환하는 과정과, 상기 로그 라인들을 상기 해시 코드로 표시한 코드 시퀀스를 생성하는 과정과, 상기 코드 시퀀스에서 상기 해시 코드의 반복 순서와 반복 주기를 탐색하여, 상기 해시 코드의 반복 순서와 반복 주기에 따라 패턴을 생성하는 과정을 포함하고, 상기 로그 가공단계에서는, 미리 설정된 알고리즘을 이용하여 상기 로그 데이터를 로그 시간과 스레드명에 따라 분류하여 클러스터링한다.A log-based anomaly detection method of an autonomous driving system according to another aspect of the present invention includes a log collection step of collecting a plurality of log files previously generated in the autonomous driving system; a log processing step of pre-processing the log data included in the log files collected in the log collection step into a preset format; a pattern generation step of analyzing the log data processed in the log processing step, patterning features, and generating and storing a pattern for detecting anomaly; a real-time log receiving step of receiving a real-time log file generated in real-time in the autonomous driving system; a new pattern extraction step of patternizing characteristics of real-time log data included in the real-time log file and extracting a new pattern for the real-time log data; and an anomaly detection step of comparing the new pattern with a pre-stored pattern and, if different from each other, determining an anomaly, wherein the pattern generation step separates each of a plurality of log lines included in the log data into a log header and a log message. a process of dividing the log message into a variable and a constant, extracting the constant, assigning a hash code to the constant, replacing the constant with the hash code, and the log line A process of generating a code sequence in which the hash code is expressed as the hash code, and a process of searching for a repetition order and repetition period of the hash code in the code sequence, and generating a pattern according to the repetition order and repetition period of the hash code. In the log processing step, the log data is classified and clustered according to log time and thread name using a preset algorithm.

본 발명의 또 다른 측면에 따른 자율 주행 시스템의 로그 기반 이상 탐지 방법은, 자율 주행 시스템에서 기 발생된 복수의 로그 파일들을 수집하는 로그 수집단계와; 상기 로그 수집단계에서 수집된 로그 파일에 포함된 로그 데이터를 미리 설정된 포맷으로 전처리 가공하는 로그 가공단계와; 상기 로그 가공단계에서 가공된 로그 데이터를 분석하고 특징을 패턴화하여, 이상 탐지를 위한 패턴을 생성하여 저장하는 패턴 생성단계와; 상기 자율 주행 시스템에서 실시간으로 발생하는 실시간 로그 파일을 수신하는 실시간 로그 수신단계와; 상기 실시간 로그 파일에 포함된 실시간 로그 데이터의 특징을 패턴화하여, 상기 실시간 로그 데이터에 대한 신규 패턴을 추출하는 신규 패턴 추출단계와; 상기 신규 패턴을 기 저장된 패턴과 비교하여, 서로 다르면 이상 발생을 판단하는 이상 탐지단계와; 상기 이상 탐지단계에서 이상 발생이 판단되면, 상기 이상이 발생된 상기 실시간 로그 데이터의 로그 헤더로부터 이상 발생 시점을 추출하고, 상기 실시간 로그 데이터의 로그 메시지와 관련된 리소스를 조회하여, 이상 발생 정보를 미리 설정된 관리자 단말기에게 전송하는 이상 통보단계를 포함하고, 상기 패턴 생성단계는, 상기 로그 데이터에 포함된 복수의 로그 라인들마다 로그 헤더와 로그 메시지로 분리하는 과정과, 상기 로그 메시지를 변수와 상수로 분리하여, 상기 상수를 추출하는 과정과, 상기 상수에 대해 해시 코드를 부여하는 과정과, 상기 상수를 상기 해시 코드로 치환하는 과정과, 상기 로그 라인들을 상기 해시 코드로 표시한 코드 시퀀스를 생성하는 과정과, 상기 코드 시퀀스에서 상기 해시 코드의 반복 순서와 반복 주기를 탐색하여, 상기 해시 코드의 반복 순서와 반복 주기에 따라 패턴을 생성하는 과정을 포함한다.A log-based anomaly detection method of an autonomous driving system according to another aspect of the present invention includes a log collection step of collecting a plurality of log files previously generated in the autonomous driving system; a log processing step of pre-processing the log data included in the log files collected in the log collection step into a preset format; a pattern generation step of analyzing the log data processed in the log processing step, patterning features, and generating and storing a pattern for detecting anomaly; a real-time log receiving step of receiving a real-time log file generated in real-time in the autonomous driving system; a new pattern extraction step of patternizing characteristics of real-time log data included in the real-time log file and extracting a new pattern for the real-time log data; an anomaly detection step of comparing the new pattern with a pre-stored pattern and, if different from each other, determining the occurrence of an anomaly; If it is determined that the abnormality has occurred in the abnormality detection step, the abnormal occurrence time is extracted from the log header of the real-time log data at which the abnormality occurred, resources related to the log message of the real-time log data are searched, and abnormal occurrence information is retrieved in advance. An error notification step of transmitting to a set administrator terminal, wherein the pattern generation step includes a step of separating a log header and a log message for each of a plurality of log lines included in the log data, and converting the log message into variables and constants. Separating, extracting the constant, assigning a hash code to the constant, replacing the constant with the hash code, and generating a code sequence in which the log lines are expressed with the hash code and searching for a repetition order and repetition period of the hash code in the code sequence, and generating a pattern according to the repetition order and repetition period of the hash code.

본 발명에 따른 자율 주행 시스템의 로그 기반 이상 탐지 시스템은, 자율 주행 시스템에서 기 발생된 복수의 로그 파일들을 수집하고, 상기 로그 파일들에 포함된 로그 데이터를 미리 설정된 포맷으로 전처리 가공하며, 상기 전처리 가공된 로그 데이터를 분석하고 특징을 패턴화하여, 이상 탐지를 위한 패턴을 생성하는 로그 분석 모듈과; 상기 로그 분석 모듈에서 생성된 패턴을 저장하는 데이터저장소와; 상기 자율 주행 시스템에서 실시간으로 발생하는 실시간 로그 파일을 수신하고, 상기 실시간 로그 파일에 포함된 실시간 로그 데이터의 특징을 패턴화하여, 상기 실시간 로그 데이터에 대한 신규 패턴을 추출하며, 상기 신규 패턴과 상기 데이터저장소에 기저장된 패턴을 비교하여 상기 신규 패턴과 기 저장된 패턴이 다르면, 이상 발생을 판단하는 이상 탐지 모듈을 포함한다.The log-based anomaly detection system of an autonomous driving system according to the present invention collects a plurality of log files previously generated in an autonomous driving system, pre-processes log data included in the log files in a preset format, and processes the pre-processing log data. a log analysis module that analyzes processed log data and patterns features to generate a pattern for anomaly detection; a data storage for storing patterns generated by the log analysis module; A real-time log file generated in real-time in the autonomous driving system is received, characteristics of real-time log data included in the real-time log file are patterned, and a new pattern for the real-time log data is extracted. and an anomaly detection module comparing pre-stored patterns in the data storage and determining the occurrence of an anomaly when the new pattern and the pre-stored pattern are different.

상기 로그 분석 모듈은, 상기 로그 데이터에 포함된 복수의 로그 라인들마다 로그 헤더와 로그 메시지로 분리하고, 상기 로그 메시지를 변수와 상수로 분리하여, 상기 상수를 추출하며, 상기 상수에 대해 해시 코드를 부여하고, 상기 상수를 상기 해시 코드로 치환하며, 상기 로그 라인들을 상기 해시 코드로 표시한 코드 시퀀스를 생성하고, 상기 코드 시퀀스에서 상기 해시 코드의 반복 순서와 반복 주기를 탐색하여, 상기 해시 코드의 반복 순서와 반복 주기에 따라 패턴을 생성한다.The log analysis module separates each of a plurality of log lines included in the log data into a log header and a log message, separates the log message into variables and constants, extracts the constants, and hash codes for the constants. , substituting the constant with the hash code, generating a code sequence in which the log lines are expressed with the hash code, searching for the repetition order and repetition period of the hash code in the code sequence, the hash code Patterns are created according to the repetition order and repetition period of

상기 이상 탐지 모듈은, 상기 이상이 발생된 상기 실시간 로그 데이터의 로그 헤더로부터 이상 발생 시점을 추출하고, 상기 실시간 로그 데이터의 로그 메시지와 관련된 리소스를 조회하여, 이상 발생 정보를 미리 설정된 관리자 단말기에 전송한다.The anomaly detection module extracts an anomaly occurrence time point from a log header of the real-time log data at which the anomaly occurred, searches a resource related to a log message of the real-time log data, and transmits anomaly occurrence information to a preset manager terminal. do.

본 발명의 다른 측면에 따른 자율 주행 시스템의 로그 기반 이상 탐지 시스템은, 자율 주행 시스템에서 기 발생된 복수의 로그 파일들을 수집하고, 상기 로그 파일들에 포함된 로그 데이터를 미리 설정된 포맷으로 전처리 가공하며, 상기 전처리 가공된 로그 데이터를 분석하고 특징을 패턴화하여, 이상 탐지를 위한 패턴을 생성하는 로그 분석 모듈과; 상기 로그 분석 모듈에서 생성된 패턴을 저장하는 데이터저장소와; 상기 자율 주행 시스템에서 실시간으로 발생하는 실시간 로그 파일을 수신하고, 상기 실시간 로그 파일에 포함된 실시간 로그 데이터의 특징을 패턴화하여, 상기 실시간 로그 데이터에 대한 신규 패턴을 추출하며, 상기 신규 패턴과 상기 데이터저장소에 기저장된 패턴을 비교하여 상기 신규 패턴과 기 저장된 패턴이 다르면, 이상 발생을 판단하는 이상 탐지 모듈을 포함하고, 상기 로그 분석 모듈은, 상기 로그 데이터에 포함된 복수의 로그 라인들마다 로그 헤더와 로그 메시지로 분리하고, 상기 로그 메시지를 변수와 상수로 분리하여, 상기 상수를 추출하며, 상기 상수에 대해 해시 코드를 부여하고, 상기 상수를 상기 해시 코드로 치환하며, 상기 로그 라인들을 상기 해시 코드로 표시한 코드 시퀀스를 생성하고, 상기 코드 시퀀스에서 상기 해시 코드의 반복 순서와 반복 주기를 탐색하여, 상기 해시 코드의 반복 순서와 반복 주기에 따라 패턴을 생성하고, 상기 이상 탐지 모듈은, 상기 이상이 발생된 상기 실시간 로그 데이터의 로그 헤더로부터 이상 발생 시점을 추출하고, 상기 실시간 로그 데이터의 로그 메시지와 관련된 리소스를 조회하여, 이상 발생 정보를 미리 설정된 관리자 단말기에 전송한다.A log-based anomaly detection system for an autonomous driving system according to another aspect of the present invention collects a plurality of log files previously generated in the autonomous driving system, pre-processes log data included in the log files in a preset format, , a log analysis module for generating a pattern for anomaly detection by analyzing the pre-processed log data and patterning features; a data storage for storing patterns generated by the log analysis module; A real-time log file generated in real-time in the autonomous driving system is received, characteristics of real-time log data included in the real-time log file are patterned, and a new pattern for the real-time log data is extracted. and an anomaly detection module that compares patterns previously stored in the data storage and, when the new pattern differs from the previously stored pattern, determines occurrence of an anomaly, wherein the log analysis module performs a log analysis for each of a plurality of log lines included in the log data. Separating the log message into a header and a log message, dividing the log message into a variable and a constant, extracting the constant, assigning a hash code to the constant, replacing the constant with the hash code, Generates a code sequence represented by a hash code, searches the repetition order and repetition period of the hash code in the code sequence, and generates a pattern according to the repetition order and repetition period of the hash code, the anomaly detection module, The time of occurrence of the abnormality is extracted from the log header of the real-time log data at which the abnormality occurred, resources related to the log message of the real-time log data are searched, and information about the abnormal occurrence is transmitted to a preset manager terminal.

본 발명에 따른 자율 주행 시스템의 로그 기반 이상 탐지 시스템 및 방법은, 복수의 로그 파일들의 특징을 미리 패턴화하여 저장하고, 새로 수집되는 실시간 로그 파일의 패턴을 기저장된 패턴과 비교하도록 구성됨으로써, 이상 발생 여부를 자동으로 탐지가 가능하고, 보다 신속하고 정확하게 판단할 수 있는 이점이 있다. A log-based anomaly detection system and method of an autonomous driving system according to the present invention is configured to pattern and store characteristics of a plurality of log files in advance and compare patterns of newly collected real-time log files with pre-stored patterns. It is possible to automatically detect whether or not it has occurred, and has the advantage of being able to determine more quickly and accurately.

또한, 로그 데이터에 포함된 로그 메시지 중 상수에 해시 코드를 부여하여, 로그 데이터를 해시 코드로 치환된 코드 시퀀스로 생성하고, 코드 시퀀스에서 해시 코드의 반복 순서와 반복 주기에 따라 패턴을 생성함으로써, 로그 데이터를 단순화시켜 이상 탐지 시간을 단축할 수 있고, 효율성이 향상될 수 있다. In addition, a hash code is assigned to a constant among log messages included in the log data, the log data is generated as a code sequence substituted with the hash code, and a pattern is generated according to the repetition order and repetition period of the hash code in the code sequence, By simplifying log data, anomaly detection time can be shortened and efficiency can be improved.

도 1은 본 발명의 실시예에 따른 자율 주행 시스템의 로그 기반 이상 탐지 시스템의 개략적인 구성도이다.
도 2는 본 발명의 실시예에 따른 자율 주행 시스템의 로그 기반 이상 탐지 방법을 개략적으로 나타낸 순서도이다.
도 3은 본 발명의 실시예에 따른 패턴 생성 단계를 나타낸 순서도이다.
도 4는 본 발명의 실시예에 따른 로그 가공단계에서 로그 데이터를 로그 시간과 스레드명으로 분류하여 클러스터링한 예를 나타낸다.
도 5는 본 발명의 실시예에 따른 패턴 생성 단계에서 가공된 로그 데이터를 로그 헤더와 로그 메시지로 분류한 예를 나타낸다.
도 6은 본 발명의 실시예에 따른 패턴 생성 단계에서 로그 메시지를 변수와 상수로 분리한 예를 나타낸다.
도 7은 본 발명의 실시예에 따른 패턴 생성 단계에서 생성된 코드 시퀀스의 예를 나타낸다.
도 8은 본 발명의 실시예에 따른 로그 가공단계에서 로그 데이터 중에서 오류 로그를 나타낸 예이다.
1 is a schematic configuration diagram of a log-based anomaly detection system of an autonomous driving system according to an embodiment of the present invention.
2 is a flowchart schematically illustrating a log-based anomaly detection method of an autonomous driving system according to an embodiment of the present invention.
3 is a flowchart illustrating a pattern generation step according to an embodiment of the present invention.
4 shows an example of clustering log data by classifying log data into log time and thread name in the log processing step according to an embodiment of the present invention.
5 shows an example in which log data processed in the pattern generation step according to an embodiment of the present invention is classified into a log header and a log message.
6 shows an example in which log messages are separated into variables and constants in the pattern generation step according to an embodiment of the present invention.
7 shows an example of a code sequence generated in the pattern generating step according to an embodiment of the present invention.
8 is an example of an error log among log data in a log processing step according to an embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 발명의 실시예에 대해 설명하면 다음과 같다.Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings.

도 1은 본 발명의 실시예에 따른 자율 주행 시스템의 로그 기반 이상 탐지 시스템의 개략적인 구성도이다.1 is a schematic configuration diagram of a log-based anomaly detection system of an autonomous driving system according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 실시예에 따른 자율 주행 시스템의 로그 기반 이상 탐지 시스템은, 로그 분석 모듈(10), 데이터저장소(20) 및 이상 탐지 모듈(30)을 포함한다.Referring to FIG. 1 , a log-based anomaly detection system for an autonomous driving system according to an embodiment of the present invention includes a log analysis module 10, a data storage 20, and an anomaly detection module 30.

상기 로그 분석 모듈(10)은, 자율주행 시스템에서 기 발생된 복수의 로그 파일들(Log files)을 주기적으로 수집하고, 가공 및 분석하여, 이상 탐지를 위한 패턴을 생성하는 모듈이다. 상기 로그 파일은 분산된 서버에 기 저장된 파일이며, 상기 자율주행 시스템의 운용시 발생하는 이벤트나 통신 소프트웨어간의 메시지 등 정보를 수집하여 기록한 파일이다. The log analysis module 10 is a module that periodically collects, processes, and analyzes a plurality of log files previously generated in the autonomous driving system to generate patterns for detecting anomalies. The log file is a file previously stored in a distributed server, and is a file that collects and records information such as events occurring during operation of the autonomous driving system or messages between communication software.

상기 로그 분석 모듈(10)은, 상기 로그 파일들을 수집하는 로그 수집부와, 상기 로그 수집부에서 수집한 로그 파일들에 포함된 로그 데이터를 미리 설정된 포맷으로 전처리 가공하는 로그 가공부와, 상기 전처리 가공된 가공 데이터를 분석하는 로그 분석부와, 상기 가공 데이터의 특징을 패턴화하여 이상 탐지를 위한 패턴을 생성하는 패턴 생성부를 포함한다.The log analysis module 10 includes a log collection unit that collects the log files, a log processing unit that pre-processes the log data included in the log files collected by the log collection unit in a preset format, and the pre-processing unit. It includes a log analysis unit that analyzes processed processing data, and a pattern generator that creates a pattern for detecting abnormalities by patterning features of the processed data.

상기 로그 분석 모듈(10)이 상기 로그 데이터를 전처리 가공하고 패턴을 생성하는 방법은 뒤에서 상세히 설명한다. A method for the log analysis module 10 to pre-process the log data and generate a pattern will be described in detail later.

상기 데이터저장소(20)는, 상기 로그 분석 모듈(10)에서 수집, 가공, 분석한 데이터들을 저장하고, 상기 로그 분석 모듈(10)에서 생성한 패턴을 저장하는 저장소이다.The data storage 20 is a storage for storing data collected, processed, and analyzed by the log analysis module 10 and patterns generated by the log analysis module 10 .

상기 이상 탐지 모듈(30)은, 상기 자율 주행 시스템에서 실시간으로 발생하는 실시간 로그 파일을 수신하여, 상기 실시간 로그 파일에 따라 이상 발생 여부를 판단하는 모듈이다.The anomaly detection module 30 is a module that receives a real-time log file generated in the autonomous driving system in real time and determines whether an anomaly has occurred according to the real-time log file.

상기 이상 탐지 모듈(30)은, 상기 실시간 로그 파일을 수신하는 로그 수신부와, 상기 로그 수신부에서 수신한 실시간 로그 파일에 포함된 실시간 로그 데이터를 파싱하는 로그 파싱부와, 상기 로그 파싱부에서 파싱된 실시간 로그 데이터의 특징을 패턴화하여 신규 패턴을 생성하는 신규 패턴 추출부와, 상기 신규 패턴과 상기 데이터저장소에 기저장된 패턴을 비교하여 이상 발생 여부를 판단하는 패턴 비교부와, 상기 패턴 비교부에서 이상 발생이 판단되면 이상 발생을 통보하는 이상 발생 통보부를 포함한다. 여기서, 상기 로그 파싱부는, 상기 실시간 로그 데이터를 미리 설정된 포맷으로 가공하는 로그 가공부와 동일한 것으로 예를 들어 설명한다.The anomaly detection module 30 includes a log receiving unit receiving the real-time log file, a log parsing unit parsing real-time log data included in the real-time log file received by the log receiving unit, and the log parsing unit parsed A new pattern extraction unit that patterns the characteristics of real-time log data to generate a new pattern, a pattern comparison unit that compares the new pattern with a pattern previously stored in the data storage to determine whether an abnormality has occurred, and the pattern comparison unit When it is determined that the occurrence of an abnormality occurs, an abnormal occurrence notification unit notifying the occurrence of an abnormality is included. Here, the log parsing unit will be described as being the same as a log processing unit that processes the real-time log data into a preset format.

상기 이상 탐지 모듈(30)의 운용 방법은 뒤에서 상세히 설명한다. A method of operating the anomaly detection module 30 will be described in detail later.

상기와 같이 구성된 본 발명의 실시예에 따른 자율 주행 시스템의 로그 기반 이상 탐지 방법을 설명하면, 다음과 같다. A log-based anomaly detection method of an autonomous driving system according to an embodiment of the present invention configured as described above will be described as follows.

도 2는 본 발명의 실시예에 따른 자율 주행 시스템의 로그 기반 이상 탐지 방법을 개략적으로 나타낸 순서도이다. 2 is a flowchart schematically illustrating a log-based anomaly detection method of an autonomous driving system according to an embodiment of the present invention.

도 2 및 도 3을 참조하면, 본 발명의 실시예에 따른 자율 주행 시스템의 로그 기반 이상 탐지 방법은, 로그 수집단계(S10), 로그 가공단계(S20), 패턴 생성단계(S30), 실시간 로그 수신단계(S40), 신규 패턴 추출단계(S50), 이상 탐지단계(S60) 및 이상 통보단계(S70)를 포함한다.Referring to FIGS. 2 and 3 , the log-based anomaly detection method of an autonomous driving system according to an embodiment of the present invention includes log collection step (S10), log processing step (S20), pattern generation step (S30), real-time log It includes a receiving step (S40), a new pattern extraction step (S50), an anomaly detection step (S60) and an anomaly notification step (S70).

상기 로그 수집단계(S10), 상기 로그 가공단계(S20) 및 상기 패턴 생성단계(S30)는, 상기 로그 분석 모듈(10)에 의해 수행된다.The log collection step (S10), the log processing step (S20), and the pattern generation step (S30) are performed by the log analysis module 10.

상기 실시간 로그 수신단계(S40), 상기 신규 패턴 추출단계(S50), 상기 이상 탐지단계(S60) 및 상기 이상 통보단계(S70)는, 상기 이상 탐지 모듈(30)에 의해 수행된다.The real-time log reception step (S40), the new pattern extraction step (S50), the anomaly detection step (S60), and the anomaly notification step (S70) are performed by the anomaly detection module 30.

먼저, 상기 로그 수집단계(S10)는, 상기 자율 주행 시스템에서 발생된 복수의 로그 파일들을 수집하는 단계이다.First, the log collection step (S10) is a step of collecting a plurality of log files generated in the autonomous driving system.

상기 로그 수집단계(S10)에서는 분산된 서버에 저장된 복수의 로그 파일들을 주기적으로 수집한다. 또한, 상기 로그 수집단계(S10)에서는 상기 로그 파일외에도 리소스도 주기적으로 수집한다. In the log collection step (S10), a plurality of log files stored in distributed servers are periodically collected. Also, in the log collection step (S10), resources are periodically collected in addition to the log files.

상기 로그 수집단계(S10)에서 수집된 로그 파일들은 상기 데이터저장소(20)에 저장된다. The log files collected in the log collection step (S10) are stored in the data storage 20.

다음으로, 상기 로그 가공단계(S20)에서는, 상기 로그 수집단계(S10)에서 수집된 로그 파일에 포함된 로그 데이터를 미리 설정된 포맷으로 전처리 가공한다.Next, in the log processing step (S20), the log data included in the log file collected in the log collection step (S10) is pre-processed into a preset format.

즉, 상기 로그 가공단계(S20)에서는 미리 설정된 알고리즘을 이용하여 상기 로그 데이터를 로그 시간과 스레드명(thread name)에 따라 분류하여 클러스터링(Clustering)한다.That is, in the log processing step (S20), the log data is classified and clustered according to log time and thread name using a preset algorithm.

여기서, 상기 알고리즘은 상용화된 알고리즘을 사용가능하며, 본 실시예에서는 LCS(Longest Common Subsequence) 알고리즘을 사용한 것으로 예를 들어 설명한다. Here, a commercially available algorithm can be used as the algorithm, and in this embodiment, a LCS (Longest Common Sequence) algorithm will be used as an example.

도 4a는 가공 전 로그 데이터를 나타내고, 도 4b는 로그 시간과 스레드명으로 분류하여 클러스터링하여 전처리 가공한 가공 데이터를 나타낸다. FIG. 4A shows log data before processing, and FIG. 4B shows processed data preprocessed by classifying and clustering by log time and thread name.

도 4b를 참조하면, 로그 시간이 동일하고, 스레드명이 동일한 로그 라인들끼리 클러스터링하여 재정렬한 예를 나타낸다. Referring to FIG. 4B , an example in which log lines having the same log time and the same thread name are clustered and rearranged is shown.

도 4b에서 T1(QuartzScheduler_Worker-1), T2(IndigoMQ)는 스레드명의 예를 나타낸다. In FIG. 4B, T1 (QuartzScheduler_Worker-1) and T2 (IndigoMQ) represent examples of thread names.

또한, 상기 로그 가공단계(S20)에서는 상기 로그 데이터 중에서 오류 로그를 제거하는 과정을 더 포함한다.In addition, the log processing step (S20) further includes a process of removing error logs from the log data.

상기 오류 로그는 상기 로그 데이터 상에서 오류(Error)라고 자동 표기되므로, 이들을 제거하여 패턴 생성에 이용하지 않는다. 따라서, 후술하는 패턴 생성단계(S30)에서는 오류 로그가 제거된 정상 로그 데이터만이 사용된다.Since the error logs are automatically marked as errors on the log data, they are removed and not used for pattern generation. Therefore, in the pattern generation step (S30) described later, only normal log data from which error logs are removed is used.

도 8은 오류 로그를 포함한 로그 데이터의 예를 나타낸다. 8 shows an example of log data including an error log.

상기 로그 가공단계(S20)에서 전처리 가공이 완료되면, 상기 패턴 생성단계(S30)를 수행한다.When the preprocessing is completed in the log processing step (S20), the pattern generating step (S30) is performed.

상기 패턴 생성단계(S30)에서는, 상기 로그 가공단계(S20)에서 전처리 가공된 로그 데이터를 분석하고 특징을 패턴화하여, 이상 탐지를 위한 패턴을 생성한다.In the pattern generating step (S30), the log data preprocessed in the log processing step (S20) is analyzed and features are patterned to generate patterns for detecting anomalies.

도 3은 본 발명의 실시예에 따른 패턴 생성 단계를 나타낸 순서도이다.3 is a flowchart illustrating a pattern generation step according to an embodiment of the present invention.

도 3을 참조하면, 상기 패턴 생성단계(S30)에서는 먼저 상기 가공 데이터에 포함된 복수의 로그 라인들을 읽는 과정을 수행한다.(S301)Referring to FIG. 3, in the pattern generation step (S30), a process of reading a plurality of log lines included in the processed data is first performed (S301).

예를 들어, 해당 로그 데이터에 N개의 로그 라인이 있을 경우, 첫 번째 로그 라인부터 N번째 로그 라인까지 차례로 읽는다. For example, if there are N log lines in the corresponding log data, the first log line to the N log line are read sequentially.

상기 로그 분석 모듈(10)은, 읽어 들인 로그 라인이 있는지 확인하는 과정을 수행한다.(S302)The log analysis module 10 performs a process of checking whether there is a read log line. (S302)

상기 로그 라인이 없으면, N개의 로그 라인을 모두 읽었다고 판단하여, 코드 시퀀스를 조회하는 과정(S308)을 수행한다.If there is no log line, it is determined that all N log lines have been read, and a process of searching for a code sequence (S308) is performed.

한편, 상기 로그 라인이 있으면, 상기 로그 라인마다 로그 헤더(Log Header)와 로그 메시지(Log message)로 분리하는 과정을 수행한다.(S303)Meanwhile, if there is the log line, a process of dividing the log line into a log header and a log message is performed (S303).

도 5는 본 발명의 실시예에 따른 패턴 생성 단계에서 가공된 로그 데이터를 로그 헤더와 로그 메시지로 분류한 예를 나타낸다.5 shows an example in which log data processed in the pattern generation step according to an embodiment of the present invention is classified into a log header and a log message.

상기 로그 헤더는, 로그 시간, 로그 레벨, 스레드명, 발생 위치 등에 대한 정보를 포함한다. The log header includes information about log time, log level, thread name, location of occurrence, and the like.

상기 로그 헤더와 상기 로그 메시지가 분리되면, 상기 로그 메시지를 변수와 상수로 분리하는 과정을 수행한다.(S304)When the log header and the log message are separated, a process of separating the log message into variables and constants is performed (S304).

상기 상수는, 상기 로그 메시지 중에서 변하지 않는 부분이며, 고정값이라고도 한다. 상기 변수는, 상기 로그 메시지 중에서 변하는 부분이며, 가변값이라고도 한다. The constant is an unchanging part of the log message and is also referred to as a fixed value. The variable is a variable part of the log message and is also referred to as a variable value.

도 6은 본 발명의 실시예에 따른 패턴 생성 단계에서 로그 메시지를 변수와 상수로 분리한 예를 나타낸다.6 shows an example in which log messages are separated into variables and constants in the pattern generation step according to an embodiment of the present invention.

상기와 같이, 상기 로그 메시지로부터 상기 상수가 추출되면, 추출된 상수들마다 서로 다른 해시 코드를 부여하는 과정을 수행한다.(S305)As described above, when the constants are extracted from the log message, a process of assigning different hash codes to the extracted constants is performed (S305).

도 7을 참조하면, 본 실시예에서는, 상기 해시 코드는 E1, E2, E3 등과 같이 문자와 숫자가 결합된 식별자인 것으로 예를 들어 설명한다.Referring to FIG. 7 , in this embodiment, the hash code is an identifier in which letters and numbers are combined, such as E1, E2, and E3, for example.

상기 상수들마다 상기 해시 코드가 부여되면, 상기 로그 메시지에서 상기 상수를 상기 해시 코드로 치환하는 과정을 수행한다.(S306)When the hash code is assigned to each of the constants, a process of replacing the constant with the hash code in the log message is performed (S306).

즉, 상기 상수를 해시 코드로 치환하여, 상기 로그 메시지를 단순화시킬 수 있다. 예를 들어, 어느 하나의 로그 라인이 E1으로 표시될 수 있다. That is, the log message can be simplified by replacing the constant with a hash code. For example, any one log line may be indicated as E1.

상기 로그 라인의 상수를 상기 해시 코드로 치환한 후, 해당 로그 라인을 코드 시퀀스(Code sequence)에 추가하여, 코드 시퀀스를 생성한다.(S307)After replacing the constant of the log line with the hash code, the corresponding log line is added to a code sequence to generate a code sequence (S307).

여기서, 상기 코드 시퀀스는, N개의 로그 라인들을 해시 코드로 치환하여 나열한 N개의 코드 순서를 의미한다. Here, the code sequence means a sequence of N codes in which N log lines are replaced with hash codes and arranged.

도 7을 참조하면, 상기 코드 시퀀스는 E1, E2, E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E1, E2,...으로 생성된 것을 예를 들어 설명한다.Referring to FIG. 7, the code sequence generated by E1, E2, E3, E4, E5, E6, E7, E8, E9, E10, E11, E12, E1, E2, ... will be described as an example. .

여기서, 상기 코드 시퀀스는, 상기 로그 시간, 상기 스레드 명에 따라 배열된 상태이다. Here, the code sequence is arranged according to the log time and the thread name.

상기와 같이, 상기 패턴 생성 단계(S30)에서는 상기 로그 메시지에 포함된 상기 로그 라인을 읽을 때마다 상기 코드 시퀀스에 해당 로그 라인을 치환한 해시 코드가 추가되고, 상기 N개의 로그 라인을 모두 읽을 때까지 반복 수행된다. As described above, in the pattern generation step (S30), whenever the log line included in the log message is read, a hash code obtained by replacing the corresponding log line is added to the code sequence, and when all the N log lines are read It is repeated until

상기 N개의 로그 라인을 모두 읽고 나면, 상기에서 생성된 코드 시퀀스를 조회한다.(S308)After reading all the N log lines, the generated code sequence is retrieved (S308).

상기 코드 시퀀스에서 상기 해시 코드의 반복 순서와 반복 주기를 탐색한다.(S309)The repetition order and repetition period of the hash code in the code sequence are searched (S309).

도 7을 참조하면, 상기 코드 시퀀스에서는 E1~E8와 E9~E12이 차례대로 반복되고되, E1~E8이 다시 반복되는 주기는 1분인 것으로 예를 들어 설명한다.Referring to FIG. 7 , in the code sequence, E1 to E8 and E9 to E12 are sequentially repeated, and the period in which E1 to E8 is repeated again is 1 minute.

또한, E1~E8은 제1스레드명(T1, QuartzScheduler_Worker-1)에 대한 시퀀스이고, E9~E12는 상기 제2스레드명(T2, IndigoMQ)에 대한 시퀀스인 것으로 예를 들어 설명한다. In addition, E1 to E8 are sequences for the first thread name (T1, QuartzScheduler_Worker-1), and E9 to E12 are sequences for the second thread name (T2, IndigoMQ).

따라서, 상기 코드 시퀀스로부터 상기 해시 코드의 반복 순서와 반복 주기에 따라 코드 패턴(이하, 패턴이라 칭함)을 생성한다. (S310)Accordingly, a code pattern (hereinafter referred to as a pattern) is generated from the code sequence according to the repetition order and repetition period of the hash code. (S310)

도 7을 참조하면, 상기 패턴은, {E1~E8},{E9~E12},{E1~E8},{E9~E12},..으로 생성된 것으로 예를 들어 설명한다.Referring to FIG. 7 , the pattern is described as being generated by {E1 to E8}, {E9 to E12}, {E1 to E8}, {E9 to E12}, ....

상기와 같이, 상기 패턴이 생성되면, 상기 데이터저장소(20)에 기저장된 패턴과 동일한지 판단한다.(S311)As described above, when the pattern is generated, it is determined whether it is the same as the pattern previously stored in the data storage 20 (S311).

상기에서 생성된 패턴이 기 저장된 패턴과 다르면, 상기 기저장된 패턴을 새로 생성된 패턴으로 업데이트 후 저장한다.(S312)If the pattern created above is different from the previously stored pattern, the previously stored pattern is updated to a newly created pattern and then stored. (S312)

상기와 같이, 상기 로그 분석 모듈(10)은, 복수의 로그 파일들을 주기적으로 수집하여, 상기 데이터저장소(20)에 저장된 패턴을 자동으로 업데이트한다. As described above, the log analysis module 10 periodically collects a plurality of log files and automatically updates patterns stored in the data storage 20 .

상기 데이터저장소(20)에 저장된 패턴은, 이상 발생을 판단하기 위한 기준 패턴이 된다.The pattern stored in the data storage 20 becomes a reference pattern for determining the occurrence of an anomaly.

한편, 도 2를 참조하면, 상기 실시간 로그 수신단계(S40)에서는 상기 자율 주행 시스템에서 실시간으로 발생하는 실시간 로그 파일을 수신한다.Meanwhile, referring to FIG. 2 , in the real-time log receiving step (S40), a real-time log file generated in real time by the autonomous driving system is received.

상기 신규 패턴 추출단계(S50)에서는, 상기 실시간 로그 파일에 포함된 실시간 로그 데이터의 특징을 패턴화하여, 상기 실시간 로그 데이터에 대한 신규 패턴을 추출하는 단계이다.In the new pattern extraction step (S50), a new pattern for the real-time log data is extracted by patterning characteristics of the real-time log data included in the real-time log file.

상기 실시간 로그 데이터로부터 패턴을 추출하는 방법은, 상기 패턴 생성단계에서 상기 로그 데이터로부터 패턴을 추출하는 방법과 동일하다.A method of extracting a pattern from the real-time log data is the same as a method of extracting a pattern from the log data in the pattern generating step.

즉, 상기 신규 패턴 추출단계(S50)에서는, 상기 실시간 로그 데이터를 상기 포맷으로 전처리한 후, 상기 로그 라인들마다 상기 로그 헤더와 상기 로그 메시지로 분리하는 과정과, 상기 로그 메시지를 상기 변수와 상기 상수로 분리하는 과정과, 상기 상수에 대해 상기 해시 코드를 부여하는 과정과, 상기 상수를 상기 해시 코드로 치환하는 과정과, 상기 로그 라인들을 상기 해시 코드로 표시한 코드 시퀀스로 생성하는 과정과, 상기 코드 시퀀스에서 상기 해시 코드의 반복 순서와 반복 주기를 탐색하여 신규 패턴을 생성하는 과정을 포함한다.That is, in the new pattern extraction step (S50), the real-time log data is pre-processed into the format and then separated into the log header and the log message for each log line, and the log message is divided into the variable and the log message. The process of separating into constants, the process of assigning the hash code to the constant, the process of substituting the constant with the hash code, the process of generating the log lines into a code sequence represented by the hash code, and generating a new pattern by searching for a repetition order and repetition period of the hash code in the code sequence.

여기서, 상기 해시 코드는, 상기 패턴 생성단계(S30)에서 상기 상수에 따라 부여된 해시 코드를 사용한다. Here, as the hash code, the hash code given according to the constant in the pattern generating step (S30) is used.

상기 실시간 로그 데이터에 대한 상기 신규 패턴이 추출되면, 상기 이상 탐지 단계(S60)를 수행한다.When the new pattern for the real-time log data is extracted, the anomaly detection step (S60) is performed.

상기 이상 탐지단계(S60)에서는, 상기 신규 패턴을 상기 데이터저장소(20)에 기저장된 패턴과 비교한다.In the anomaly detection step ( S60 ), the new pattern is compared with a pattern previously stored in the data storage 20 .

상기 신규 패턴이 기저장된 패턴과 일치하지 않으면, 이상이 발생하였다고 판단한다.If the new pattern does not match the previously stored pattern, it is determined that an error has occurred.

상기 이상 탐지단계(S60)에서 이상 발생이 판단되면, 상기 이상 탐지 모듈(30)은 미리 설정된 관리자 단말기로 전송하여 이상 발생을 통보하는 이상 통보단계(S70)를 수행한다. If it is determined that an abnormality has occurred in the abnormality detection step (S60), the abnormality detection module 30 performs an abnormality notification step (S70) of notifying the occurrence of an abnormality by transmitting to a preset manager terminal.

또한, 상기 이상 통보단계(S70)에서 상기 이상 탐지 모듈(30)은 기저장된 패턴과 상이한 해시 코드에 대한 실시간 로그 데이터를 출력하고, 상기 실시간 로그 데이터 중 상기 로그 헤더로부터 이상 발생 시점을 추출하고, 상기 로그 메시지와 관련된 리소스를 조회하여, 상기 이상 발생 시점과 상기 리소스를 포함한 이상 발생 정보를 생성하여, 상기 관리자 단말기로 전송한다. In addition, in the anomaly notification step (S70), the anomaly detection module 30 outputs real-time log data for a hash code different from a pre-stored pattern, and extracts an anomaly occurrence time from the log header among the real-time log data, A resource related to the log message is searched, and anomaly occurrence information including the time of occurrence of the anomaly and the resource is generated and transmitted to the manager terminal.

상기와 같이, 본 발명에서는 복수의 로그 파일들을 주기적으로 수집하여 이상 발생을 판단하기 위한 기준 패턴을 생성하고, 실시간 로그 데이터의 수신시 실시간 로그 데이터에서 추출한 신규 패턴과 기준 패턴을 비교하여, 이상 발생 여부를 판단할 수 있으므로, 보다 신속하고 정확하게 이상 발생 여부를 판단할 수 있는 이점이 있다.As described above, in the present invention, a plurality of log files are periodically collected to generate a reference pattern for determining the occurrence of an anomaly, and when real-time log data is received, a new pattern extracted from the real-time log data is compared with the reference pattern, and an anomaly occurs. Since it is possible to determine whether or not there is an abnormality, there is an advantage in that it is possible to more quickly and accurately determine whether or not an abnormality has occurred.

또한, 로그 데이터의 특징을 패턴화하여 관리함으로써, 패턴을 비교하여 이상 발생 여부를 판단할 수 있으므로, 이상 탐색 시간이 단축될 수 있다. 즉, 방대한 양의 로그 메시지를 일일이 다 비교하거나 확인하지 않고, 해시 코드로 표시된 패턴을 비교함으로써, 이상 발생 여부를 보다 신속하게 판단할 수 있다. In addition, since it is possible to determine whether an abnormality has occurred by comparing the pattern by managing the characteristics of the log data in a pattern, the abnormal search time can be shortened. That is, it is possible to more quickly determine whether or not an abnormality has occurred by comparing a pattern indicated by a hash code without comparing or verifying a huge amount of log messages one by one.

또한, 사용자의 개입 없이 자동으로 이상이 탐지될 수 있으므로, 효율적인 이점이 있다. In addition, since abnormalities can be automatically detected without user intervention, there is an efficient advantage.

본 발명은 도면에 도시된 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 다른 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의하여 정해져야 할 것이다.Although the present invention has been described with reference to the embodiments shown in the drawings, this is only exemplary, and those skilled in the art will understand that various modifications and equivalent other embodiments are possible therefrom. Therefore, the true technical scope of protection of the present invention should be determined by the technical spirit of the appended claims.

10: 로그 분석 모듈 20: 데이터저장소
30: 이상 탐지 모듈
10: log analysis module 20: data store
30: anomaly detection module

Claims (13)

자율 주행 시스템의 로그 기반 이상 탐지 시스템에 포함된 로그 분석 모듈이 상기 자율 주행 시스템에서 기 발생된 복수의 로그 파일들을 수집하는 로그 수집단계와;
상기 로그 분석 모듈이 상기 로그 수집단계에서 수집된 로그 파일에 포함된 로그 데이터를 미리 설정된 포맷으로 전처리 가공하는 로그 가공단계와;
상기 로그 분석 모듈이 상기 로그 가공단계에서 가공된 로그 데이터를 분석하고 특징을 패턴화하여, 이상 탐지를 위한 패턴을 생성하여 저장하는 패턴 생성단계와;
상기 로그 기반 이상 탐지 시스템에 포함된 이상 탐지 모듈이 상기 자율 주행 시스템에서 실시간으로 발생하는 실시간 로그 파일을 수신하는 실시간 로그 수신단계와;
상기 이상 탐지 모듈이 상기 실시간 로그 파일에 포함된 실시간 로그 데이터의 특징을 패턴화하여, 상기 실시간 로그 데이터에 대한 신규 패턴을 추출하는 신규 패턴 추출단계와;
상기 이상 탐지 모듈이 상기 신규 패턴을 기 저장된 패턴과 비교하여, 서로 다르면 이상 발생을 판단하는 이상 탐지단계를 포함하고,
상기 패턴 생성단계는,
상기 로그 데이터에 포함된 복수의 로그 라인들마다 로그 헤더와 로그 메시지로 분리하는 과정과,
상기 로그 메시지를 변수와 상수로 분리하여, 상기 상수를 추출하는 과정과,
상기 상수에 대해 해시 코드를 부여하는 과정과,
상기 상수를 상기 해시 코드로 치환하는 과정과,
상기 로그 라인들을 상기 해시 코드로 표시한 코드 시퀀스를 생성하는 과정과,
상기 코드 시퀀스에서 상기 해시 코드의 반복 순서와 반복 주기를 탐색하여, 상기 해시 코드의 반복 순서와 반복 주기에 따라 패턴을 생성하는 과정을 포함하는,
자율 주행 시스템의 로그 기반 이상 탐지 방법.
a log collection step in which a log analysis module included in a log-based anomaly detection system of an autonomous driving system collects a plurality of log files previously generated in the autonomous driving system;
a log processing step in which the log analysis module pre-processes the log data included in the log files collected in the log collection step into a preset format;
a pattern generation step in which the log analysis module analyzes the log data processed in the log processing step, patternizes characteristics, and generates and stores a pattern for detecting an anomaly;
a real-time log receiving step of receiving, by an anomaly detection module included in the log-based anomaly detection system, a real-time log file generated in the autonomous driving system in real time;
a new pattern extraction step of, by the anomaly detection module, patterning characteristics of the real-time log data included in the real-time log file and extracting a new pattern for the real-time log data;
An anomaly detection step in which the anomaly detection module compares the new pattern with a pre-stored pattern and determines that an anomaly occurs if they are different from each other;
The pattern generation step,
separating a log header and a log message for each of a plurality of log lines included in the log data;
Separating the log message into variables and constants and extracting the constants;
assigning a hash code to the constant;
replacing the constant with the hash code;
generating a code sequence representing the log lines with the hash code;
Searching for a repetition order and repetition period of the hash code in the code sequence, and generating a pattern according to the repetition order and repetition period of the hash code.
Log-based anomaly detection method for autonomous driving system.
삭제delete 청구항 1에 있어서,
상기 패턴 생성단계는,
상기 과정에서 새로 생성된 패턴이 데이터저장소에 기저장된 패턴과 다르면, 상기 데이터저장소에 저장된 패턴을 업데이트하는 과정을 더 포함하는,
자율 주행 시스템의 로그 기반 이상 탐지 방법.
The method of claim 1,
The pattern generation step,
Further comprising the step of updating the pattern stored in the data store if the newly created pattern in the process is different from the pattern previously stored in the data store.
Log-based anomaly detection method for autonomous driving system.
청구항 3에 있어서,
상기 로그 가공단계에서는,
미리 설정된 알고리즘을 이용하여 상기 로그 데이터를 로그 시간과 스레드명에 따라 분류하여 클러스터링하는,
자율 주행 시스템의 로그 기반 이상 탐지 방법.
The method of claim 3,
In the log processing step,
classifying and clustering the log data according to log time and thread name using a preset algorithm;
Log-based anomaly detection method for autonomous driving system.
청구항 1에 있어서,
상기 로그 수집 단계, 상기 로그 가공단계 및 상기 패턴 생성단계는, 주기적으로 반복 수행되는,
자율 주행 시스템의 로그 기반 이상 탐지 방법.
The method of claim 1,
The log collection step, the log processing step, and the pattern generation step are periodically repeated,
Log-based anomaly detection method for autonomous driving system.
청구항 3에 있어서,
상기 이상 탐지단계에서 이상 발생이 판단되면,
상기 이상이 발생된 상기 실시간 로그 데이터의 로그 헤더로부터 이상 발생 시점을 추출하고, 상기 실시간 로그 데이터의 로그 메시지와 관련된 리소스를 조회하여, 이상 발생 정보를 미리 설정된 관리자 단말기에게 전송하는 이상 통보단계를 더 포함하는,
자율 주행 시스템의 로그 기반 이상 탐지 방법.
The method of claim 3,
If it is determined that an abnormality occurs in the abnormality detection step,
An error notification step of extracting a time point of occurrence of the abnormality from the log header of the real-time log data where the abnormality occurred, inquiring a resource related to a log message of the real-time log data, and transmitting abnormal occurrence information to a preset manager terminal. including,
Log-based anomaly detection method for autonomous driving system.
청구항 1에 있어서,
상기 신규 패턴 추출단계는,
상기 실시간 로그 데이터를 상기 포맷으로 전처리한 후, 복수의 로그 라인들마다 로그 헤더와 로그 메시지로 분리하는 과정과,
상기 로그 메시지를 변수와 상수로 분리하는 과정과,
상기 상수에 대해 해시 코드를 부여하는 과정과,
상기 상수를 상기 해시 코드로 치환하는 과정과,
상기 로그 라인들을 상기 해시 코드로 표시한 코드 시퀀스를 생성하는 과정과,
상기 코드 시퀀스에서 상기 해시 코드의 반복 순서와 반복 주기를 탐색하여, 상기 해시 코드의 반복 순서와 반복 주기에 따라 상기 신규 패턴을 생성하는 과정을 포함하는,
자율 주행 시스템의 로그 기반 이상 탐지 방법.
The method of claim 1,
The new pattern extraction step,
After pre-processing the real-time log data into the format, separating a log header and a log message for each of a plurality of log lines;
Separating the log message into variables and constants;
assigning a hash code to the constant;
replacing the constant with the hash code;
generating a code sequence representing the log lines with the hash code;
Searching for a repetition order and repetition period of the hash code in the code sequence, and generating the new pattern according to the repetition order and repetition period of the hash code.
Log-based anomaly detection method for autonomous driving system.
자율 주행 시스템의 로그 기반 이상 탐지 시스템에 포함된 로그 분석 모듈이 상기 자율 주행 시스템에서 기 발생된 복수의 로그 파일들을 수집하는 로그 수집단계와;
상기 로그 분석 모듈이 상기 로그 수집단계에서 수집된 로그 파일에 포함된 로그 데이터를 미리 설정된 포맷으로 전처리 가공하는 로그 가공단계와;
상기 로그 분석 모듈이 상기 로그 가공단계에서 가공된 로그 데이터를 분석하고 특징을 패턴화하여, 이상 탐지를 위한 패턴을 생성하여 저장하는 패턴 생성단계와;
상기 로그 기반 이상 탐지 시스템에 포함된 이상 탐지 모듈이 상기 자율 주행 시스템에서 실시간으로 발생하는 실시간 로그 파일을 수신하는 실시간 로그 수신단계와;
상기 이상 탐지 모듈이 상기 실시간 로그 파일에 포함된 실시간 로그 데이터의 특징을 패턴화하여, 상기 실시간 로그 데이터에 대한 신규 패턴을 추출하는 신규 패턴 추출단계와;
상기 이상 탐지 모듈이 상기 신규 패턴을 기 저장된 패턴과 비교하여, 서로 다르면 이상 발생을 판단하는 이상 탐지단계를 포함하고,
상기 패턴 생성단계는,
상기 로그 데이터에 포함된 복수의 로그 라인들마다 로그 헤더와 로그 메시지로 분리하는 과정과,
상기 로그 메시지를 변수와 상수로 분리하여, 상기 상수를 추출하는 과정과,
상기 상수에 대해 해시 코드를 부여하는 과정과,
상기 상수를 상기 해시 코드로 치환하는 과정과,
상기 로그 라인들을 상기 해시 코드로 표시한 코드 시퀀스를 생성하는 과정과,
상기 코드 시퀀스에서 상기 해시 코드의 반복 순서와 반복 주기를 탐색하여, 상기 해시 코드의 반복 순서와 반복 주기에 따라 패턴을 생성하는 과정을 포함하고,
상기 로그 가공단계에서는,
미리 설정된 알고리즘을 이용하여 상기 로그 데이터를 로그 시간과 스레드명에 따라 분류하여 클러스터링하는,
자율 주행 시스템의 로그 기반 이상 탐지 방법.
a log collection step in which a log analysis module included in a log-based anomaly detection system of an autonomous driving system collects a plurality of log files previously generated in the autonomous driving system;
a log processing step in which the log analysis module pre-processes the log data included in the log files collected in the log collection step into a preset format;
a pattern generation step in which the log analysis module analyzes the log data processed in the log processing step, patternizes characteristics, and generates and stores a pattern for detecting an anomaly;
a real-time log receiving step of receiving, by an anomaly detection module included in the log-based anomaly detection system, a real-time log file generated in the autonomous driving system in real time;
a new pattern extraction step of, by the anomaly detection module, patterning characteristics of the real-time log data included in the real-time log file and extracting a new pattern for the real-time log data;
An anomaly detection step in which the anomaly detection module compares the new pattern with a pre-stored pattern and determines that an anomaly occurs if they are different from each other;
The pattern generation step,
separating a log header and a log message for each of a plurality of log lines included in the log data;
Separating the log message into variables and constants and extracting the constants;
assigning a hash code to the constant;
replacing the constant with the hash code;
generating a code sequence representing the log lines with the hash code;
Searching for a repetition order and repetition period of the hash code in the code sequence and generating a pattern according to the repetition order and repetition period of the hash code;
In the log processing step,
classifying and clustering the log data according to log time and thread name using a preset algorithm;
Log-based anomaly detection method for autonomous driving system.
자율 주행 시스템의 로그 기반 이상 탐지 시스템에 포함된 로그 분석 모듈이 상기 자율 주행 시스템에서 기 발생된 복수의 로그 파일들을 수집하는 로그 수집단계와;
상기 로그 분석 모듈이 상기 로그 수집단계에서 수집된 로그 파일에 포함된 로그 데이터를 미리 설정된 포맷으로 전처리 가공하는 로그 가공단계와;
상기 로그 분석 모듈이 상기 로그 가공단계에서 가공된 로그 데이터를 분석하고 특징을 패턴화하여, 이상 탐지를 위한 패턴을 생성하여 저장하는 패턴 생성단계와;
상기 로그 기반 이상 탐지 시스템에 포함된 이상 탐지 모듈이 상기 자율 주행 시스템에서 실시간으로 발생하는 실시간 로그 파일을 수신하는 실시간 로그 수신단계와;
상기 이상 탐지 모듈이 상기 실시간 로그 파일에 포함된 실시간 로그 데이터의 특징을 패턴화하여, 상기 실시간 로그 데이터에 대한 신규 패턴을 추출하는 신규 패턴 추출단계와;
상기 이상 탐지 모듈이 상기 신규 패턴을 기 저장된 패턴과 비교하여, 서로 다르면 이상 발생을 판단하는 이상 탐지단계와;
상기 이상 탐지 모듈이 상기 이상 탐지단계에서 이상 발생이 판단되면, 상기 이상이 발생된 상기 실시간 로그 데이터의 로그 헤더로부터 이상 발생 시점을 추출하고, 상기 실시간 로그 데이터의 로그 메시지와 관련된 리소스를 조회하여, 이상 발생 정보를 미리 설정된 관리자 단말기에게 전송하는 이상 통보단계를 포함하고,
상기 패턴 생성단계는,
상기 로그 데이터에 포함된 복수의 로그 라인들마다 로그 헤더와 로그 메시지로 분리하는 과정과,
상기 로그 메시지를 변수와 상수로 분리하여, 상기 상수를 추출하는 과정과,
상기 상수에 대해 해시 코드를 부여하는 과정과,
상기 상수를 상기 해시 코드로 치환하는 과정과,
상기 로그 라인들을 상기 해시 코드로 표시한 코드 시퀀스를 생성하는 과정과,
상기 코드 시퀀스에서 상기 해시 코드의 반복 순서와 반복 주기를 탐색하여, 상기 해시 코드의 반복 순서와 반복 주기에 따라 패턴을 생성하는 과정을 포함하는,
자율 주행 시스템의 로그 기반 이상 탐지 방법.
a log collection step in which a log analysis module included in a log-based anomaly detection system of an autonomous driving system collects a plurality of log files previously generated in the autonomous driving system;
a log processing step in which the log analysis module pre-processes the log data included in the log files collected in the log collection step into a preset format;
a pattern generation step in which the log analysis module analyzes the log data processed in the log processing step, patternizes characteristics, and generates and stores a pattern for detecting an anomaly;
a real-time log receiving step of receiving, by an anomaly detection module included in the log-based anomaly detection system, a real-time log file generated in the autonomous driving system in real time;
a new pattern extraction step of, by the anomaly detection module, patterning characteristics of the real-time log data included in the real-time log file and extracting a new pattern for the real-time log data;
an anomaly detection step in which the anomaly detection module compares the new pattern with a pre-stored pattern and, if different from each other, determines that an anomaly has occurred;
When the anomaly detection module determines that an anomaly has occurred in the anomaly detection step, the anomaly occurrence time point is extracted from a log header of the real-time log data at which the anomaly occurred, and a resource related to a log message of the real-time log data is retrieved, Including an abnormality notification step of transmitting abnormal occurrence information to a preset administrator terminal;
The pattern generation step,
separating a log header and a log message for each of a plurality of log lines included in the log data;
Separating the log message into variables and constants and extracting the constants;
assigning a hash code to the constant;
replacing the constant with the hash code;
generating a code sequence representing the log lines with the hash code;
Searching for a repetition order and repetition period of the hash code in the code sequence, and generating a pattern according to the repetition order and repetition period of the hash code.
Log-based anomaly detection method for autonomous driving system.
자율 주행 시스템에서 기 발생된 복수의 로그 파일들을 수집하고, 상기 로그 파일들에 포함된 로그 데이터를 미리 설정된 포맷으로 전처리 가공하며, 상기 전처리 가공된 로그 데이터를 분석하고 특징을 패턴화하여, 이상 탐지를 위한 패턴을 생성하는 로그 분석 모듈과;
상기 로그 분석 모듈에서 생성된 패턴을 저장하는 데이터저장소와;
상기 자율 주행 시스템에서 실시간으로 발생하는 실시간 로그 파일을 수신하고, 상기 실시간 로그 파일에 포함된 실시간 로그 데이터의 특징을 패턴화하여, 상기 실시간 로그 데이터에 대한 신규 패턴을 추출하며, 상기 신규 패턴과 상기 데이터저장소에 기저장된 패턴을 비교하여 상기 신규 패턴과 기 저장된 패턴이 다르면, 이상 발생을 판단하는 이상 탐지 모듈을 포함하고,
상기 로그 분석 모듈은,
상기 로그 데이터에 포함된 복수의 로그 라인들마다 로그 헤더와 로그 메시지로 분리하고,
상기 로그 메시지를 변수와 상수로 분리하여, 상기 상수를 추출하며,
상기 상수에 대해 해시 코드를 부여하고,
상기 상수를 상기 해시 코드로 치환하며,
상기 로그 라인들을 상기 해시 코드로 표시한 코드 시퀀스를 생성하고,
상기 코드 시퀀스에서 상기 해시 코드의 반복 순서와 반복 주기를 탐색하여, 상기 해시 코드의 반복 순서와 반복 주기에 따라 패턴을 생성하는,
자율 주행 시스템의 로그 기반 이상 탐지 시스템.
A plurality of log files already generated in the autonomous driving system are collected, log data included in the log files is pre-processed in a preset format, and the pre-processed log data is analyzed and characteristics are patterned to detect anomalies. A log analysis module for generating a pattern for;
a data storage for storing patterns generated by the log analysis module;
A real-time log file generated in real-time in the autonomous driving system is received, characteristics of real-time log data included in the real-time log file are patterned, and a new pattern for the real-time log data is extracted. An anomaly detection module comparing pre-stored patterns in the data storage and determining the occurrence of an anomaly when the new pattern and the pre-stored pattern are different,
The log analysis module,
Separating each of the plurality of log lines included in the log data into a log header and a log message;
Separating the log message into variables and constants, extracting the constants;
A hash code is assigned to the constant,
Replace the constant with the hash code,
generating a code sequence representing the log lines with the hash code;
Searching for a repetition order and repetition period of the hash code in the code sequence, and generating a pattern according to the repetition order and repetition period of the hash code.
Log-based anomaly detection system for autonomous driving systems.
삭제delete 청구항 10에 있어서,
상기 이상 탐지 모듈은,
상기 실시간 로그 데이터를 상기 포맷으로 전처리한 후, 복수의 로그 라인들마다 로그 헤더와 로그 메시지로 분리하고,
상기 로그 메시지를 변수와 상수로 분리하고,
상기 상수에 대해 해시 코드를 부여하고,
상기 상수를 상기 해시 코드로 치환하고,
상기 로그 라인들을 상기 해시 코드로 표시한 코드 시퀀스를 생성하고,
상기 코드 시퀀스에서 상기 해시 코드의 반복 순서와 반복 주기를 탐색하여, 상기 해시 코드의 반복 순서와 반복 주기에 따라 상기 신규 패턴을 생성하고,
상기 이상이 발생된 상기 실시간 로그 데이터의 로그 헤더로부터 이상 발생 시점을 추출하고, 상기 실시간 로그 데이터의 로그 메시지와 관련된 리소스를 조회하여, 이상 발생 정보를 미리 설정된 관리자 단말기에 전송하는,
자율 주행 시스템의 로그 기반 이상 탐지 시스템.
The method of claim 10,
The anomaly detection module,
After pre-processing the real-time log data in the format, separating a log header and a log message for each of a plurality of log lines;
Separate the log message into variables and constants,
A hash code is assigned to the constant,
Substituting the constant with the hash code;
generating a code sequence representing the log lines with the hash code;
Searching for a repetition order and repetition period of the hash code in the code sequence, and generating the new pattern according to the repetition order and repetition period of the hash code;
Extracting the time of occurrence of the abnormality from the log header of the real-time log data at which the abnormality occurred, inquiring a resource related to a log message of the real-time log data, and transmitting abnormal occurrence information to a preset manager terminal,
Log-based anomaly detection system for autonomous driving systems.
자율 주행 시스템에서 기 발생된 복수의 로그 파일들을 수집하고, 상기 로그 파일들에 포함된 로그 데이터를 미리 설정된 포맷으로 전처리 가공하며, 상기 전처리 가공된 로그 데이터를 분석하고 특징을 패턴화하여, 이상 탐지를 위한 패턴을 생성하는 로그 분석 모듈과;
상기 로그 분석 모듈에서 생성된 패턴을 저장하는 데이터저장소와;
상기 자율 주행 시스템에서 실시간으로 발생하는 실시간 로그 파일을 수신하고, 상기 실시간 로그 파일에 포함된 실시간 로그 데이터의 특징을 패턴화하여, 상기 실시간 로그 데이터에 대한 신규 패턴을 추출하며, 상기 신규 패턴과 상기 데이터저장소에 기저장된 패턴을 비교하여 상기 신규 패턴과 기 저장된 패턴이 다르면, 이상 발생을 판단하는 이상 탐지 모듈을 포함하고,
상기 로그 분석 모듈은,
상기 로그 데이터에 포함된 복수의 로그 라인들마다 로그 헤더와 로그 메시지로 분리하고,
상기 로그 메시지를 변수와 상수로 분리하여, 상기 상수를 추출하며,
상기 상수에 대해 해시 코드를 부여하고,
상기 상수를 상기 해시 코드로 치환하며,
상기 로그 라인들을 상기 해시 코드로 표시한 코드 시퀀스를 생성하고,
상기 코드 시퀀스에서 상기 해시 코드의 반복 순서와 반복 주기를 탐색하여, 상기 해시 코드의 반복 순서와 반복 주기에 따라 패턴을 생성하고,
상기 이상 탐지 모듈은,
상기 이상이 발생된 상기 실시간 로그 데이터의 로그 헤더로부터 이상 발생 시점을 추출하고, 상기 실시간 로그 데이터의 로그 메시지와 관련된 리소스를 조회하여, 이상 발생 정보를 미리 설정된 관리자 단말기에 전송하는,
자율 주행 시스템의 로그 기반 이상 탐지 시스템.
A plurality of log files already generated in the autonomous driving system are collected, log data included in the log files is pre-processed in a preset format, and the pre-processed log data is analyzed and characteristics are patterned to detect anomalies. A log analysis module for generating a pattern for;
a data storage for storing patterns generated by the log analysis module;
A real-time log file generated in real-time in the autonomous driving system is received, characteristics of real-time log data included in the real-time log file are patterned, and a new pattern for the real-time log data is extracted. An anomaly detection module comparing pre-stored patterns in the data storage and determining the occurrence of an anomaly when the new pattern and the pre-stored pattern are different,
The log analysis module,
Separating each of the plurality of log lines included in the log data into a log header and a log message;
Separating the log message into variables and constants, extracting the constants;
A hash code is assigned to the constant,
Replace the constant with the hash code,
generating a code sequence representing the log lines with the hash code;
Searching for a repetition order and repetition period of the hash code in the code sequence, generating a pattern according to the repetition order and repetition period of the hash code;
The anomaly detection module,
Extracting the time of occurrence of the abnormality from the log header of the real-time log data at which the abnormality occurred, inquiring a resource related to a log message of the real-time log data, and transmitting abnormal occurrence information to a preset manager terminal,
Log-based anomaly detection system for autonomous driving systems.
KR1020220147135A 2022-11-07 2022-11-07 Log-based anomaly detection system of autonomous driving system and its operation method KR102523671B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220147135A KR102523671B1 (en) 2022-11-07 2022-11-07 Log-based anomaly detection system of autonomous driving system and its operation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220147135A KR102523671B1 (en) 2022-11-07 2022-11-07 Log-based anomaly detection system of autonomous driving system and its operation method

Publications (1)

Publication Number Publication Date
KR102523671B1 true KR102523671B1 (en) 2023-04-20

Family

ID=86143991

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220147135A KR102523671B1 (en) 2022-11-07 2022-11-07 Log-based anomaly detection system of autonomous driving system and its operation method

Country Status (1)

Country Link
KR (1) KR102523671B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101741108B1 (en) * 2016-12-15 2017-05-30 한국과학기술정보연구원 Apparatus and method for analyzing system fault detection
KR101943422B1 (en) 2018-05-11 2019-01-29 윤여표 A system and a method of safety inspection for an autonomous vehicle
KR20190104267A (en) * 2019-07-23 2019-09-09 엘지전자 주식회사 An artificial intelligence apparatus for the self-diagnosis using log data and artificial intelligence model and method for the same
KR20210011822A (en) * 2019-07-23 2021-02-02 주식회사 엑셈 Method of detecting abnormal log based on artificial intelligence and system implementing thereof
KR20220091897A (en) * 2020-12-24 2022-07-01 한국과학기술원 Method and apparatus for analyzing pattern-based interaction failures in systems-of-systems

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101741108B1 (en) * 2016-12-15 2017-05-30 한국과학기술정보연구원 Apparatus and method for analyzing system fault detection
KR101943422B1 (en) 2018-05-11 2019-01-29 윤여표 A system and a method of safety inspection for an autonomous vehicle
KR20190104267A (en) * 2019-07-23 2019-09-09 엘지전자 주식회사 An artificial intelligence apparatus for the self-diagnosis using log data and artificial intelligence model and method for the same
KR20210011822A (en) * 2019-07-23 2021-02-02 주식회사 엑셈 Method of detecting abnormal log based on artificial intelligence and system implementing thereof
KR20220091897A (en) * 2020-12-24 2022-07-01 한국과학기술원 Method and apparatus for analyzing pattern-based interaction failures in systems-of-systems

Similar Documents

Publication Publication Date Title
CN109669844B (en) Equipment fault processing method, device, equipment and storage medium
CN111831514A (en) Equipment monitoring method, device, equipment and storage medium
CN113553210A (en) Alarm data processing method, device, equipment and storage medium
CN112769605B (en) Heterogeneous multi-cloud operation and maintenance management method and hybrid cloud platform
CN111078513B (en) Log processing method, device, equipment, storage medium and log alarm system
CN112711520A (en) Method, device and equipment for processing abnormal log information and storage medium
CN110096419A (en) Acquisition methods, interface log management server and the service server of interface log
CN111722984A (en) Alarm data processing method, device, equipment and computer storage medium
JPWO2018066661A1 (en) Log analysis method, system and recording medium
CN114528457A (en) Web fingerprint detection method and related equipment
KR102523671B1 (en) Log-based anomaly detection system of autonomous driving system and its operation method
CN111309584A (en) Data processing method and device, electronic equipment and storage medium
CN111966339B (en) Buried point parameter input method and device, computer equipment and storage medium
CN117240522A (en) Vulnerability intelligent mining method based on attack event model
CN115658443B (en) Log filtering method and device
KR101484186B1 (en) Indexing apparatus and method for search of security monitoring data
CN114968637B (en) Automatic driving abnormality analysis system
CN114422341B (en) Industrial control asset identification method and system based on fingerprint characteristics
CN107402865B (en) Client data monitoring method and device
JP2006099249A (en) Fault management device and fault management method
CN113641523B (en) Log processing method and device
CN113037521B (en) Method for identifying state of communication equipment, communication system and storage medium
CN112418449A (en) Generation method, positioning method and device of power supply line fault positioning model
CN117971605B (en) Automatic log information collection method and system based on database abnormality
CN110704483A (en) User routing process positioning method, device, storage medium and device

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant