WO2017081866A1 - ログ分析システム、方法およびプログラム - Google Patents

ログ分析システム、方法およびプログラム Download PDF

Info

Publication number
WO2017081866A1
WO2017081866A1 PCT/JP2016/004844 JP2016004844W WO2017081866A1 WO 2017081866 A1 WO2017081866 A1 WO 2017081866A1 JP 2016004844 W JP2016004844 W JP 2016004844W WO 2017081866 A1 WO2017081866 A1 WO 2017081866A1
Authority
WO
WIPO (PCT)
Prior art keywords
sequence
log
logs
format
analysis system
Prior art date
Application number
PCT/JP2016/004844
Other languages
English (en)
French (fr)
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 US15/774,484 priority Critical patent/US11232013B2/en
Priority to JP2017549986A priority patent/JP7006272B2/ja
Publication of WO2017081866A1 publication Critical patent/WO2017081866A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0775Content or structure details of the error report, e.g. specific table structure, specific error fields
    • 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
    • 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/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/40Data acquisition and logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/174Form filling; Merging

Definitions

  • the present invention relates to a log analysis system, method, and program for performing log analysis.
  • a log containing the event results and messages is output.
  • a user (operator or the like) needs to refer to a large number of logs output from the system.
  • it is required to output the log in an easy-to-read manner.
  • Patent Document 1 discloses a technique for extracting a log according to a keyword input by a user and displaying the appearance position of the log in a time-series map.
  • the user can acquire a log including a specific keyword, and can visually know the timing and distribution of the appearance of the log.
  • a general system includes a plurality of devices and programs, and a plurality of types of log data (for example, log files) are output from these devices and programs.
  • a plurality of types of log data for example, log files
  • Patent Literature 1 extracts a log based on whether or not it includes a keyword, it cannot extract a log from a plurality of types of log data based on the correlation between logs.
  • the user needs to find out a related portion from a plurality of types of log data.
  • the present invention has been made in view of the above-described problems, and an object thereof is to provide a log analysis system, method, and program capable of collecting and outputting logs having correlations.
  • a first aspect of the present invention is a log analysis system, comprising: a sequence determination unit that determines which sequence among a plurality of logs to be analyzed matches a predetermined sequence; and the sequence determination unit A log aggregating unit that aggregates and outputs the plurality of logs determined to match the sequence based on the sequence.
  • a log analysis method the step of determining which of a plurality of logs among analysis target logs matches a predetermined sequence, and the determination of being matched with the sequence. And collecting and outputting the plurality of logs based on the sequence.
  • a log analysis program comprising: a step of determining, in a computer, a sequence in which a plurality of logs among analysis target logs matches a predetermined sequence; Then, the step of collecting and outputting the determined plurality of logs based on the sequence is executed.
  • FIG. 1 is a block diagram of a log analysis system 100 according to the present embodiment.
  • arrows indicate main data flows, and there may be data flows other than those shown in FIG.
  • each block shows a functional unit configuration, not a hardware (device) unit configuration. Therefore, the blocks shown in FIG. 1 may be implemented in a single device, or may be separately implemented in a plurality of devices. Data exchange between the blocks may be performed via any means such as a data bus, a network, a portable storage medium, or the like.
  • the log analysis system 100 includes a log input unit 110, a format determination unit 120, a sequence determination unit 130, a log aggregation unit 140, and an output unit 150 as processing units.
  • the log analysis system 100 includes a format storage unit 161 and a sequence storage unit 162 as storage units.
  • the log input unit 110 acquires the analysis target log 10 and inputs it to the log analysis system 100.
  • the analysis target log 10 may be acquired from the outside of the log analysis system 100, or may be acquired by reading what is recorded in advance in the log analysis system 100.
  • the analysis target log 10 includes one or more logs output from one or more devices or programs.
  • the analysis target log 10 is a log expressed in an arbitrary data format (file format), and may be binary data or text data, for example.
  • the analysis target log 10 may be recorded as a database table or may be recorded as a text file.
  • FIG. 2A is a schematic diagram of an exemplary analysis target log 10.
  • the analysis target log 10 in this embodiment includes one log output from the apparatus or program as one unit, and includes one or more arbitrary numbers of logs.
  • One log may be a single-line character string, or may be a multi-line character string. That is, the analysis target log 10 indicates the total number of logs included in the analysis target log 10, and the log indicates one log extracted from the analysis target log 10.
  • Each log includes a time stamp and a message.
  • the analysis target log 10 includes first log data 11 and second log data 12.
  • the first log data 11 and the second log data 12 are recorded as separate data (for example, a file, a table, etc.) and each include one or more logs.
  • the first log data 11 and the second log data 12 are distinguished from each other by being assigned identifiers (for example, file names such as message.log and syslog.log).
  • the number of log data is not limited to this, and may be any number of one or more.
  • the format determination unit 120 is a format determination unit, and is recorded in advance in the format storage unit 161 for each log included in the analysis target log 10 (first log data 11 and second log data 12). Which format is matched is determined, and each log is separated into a variable and a common part using the matched format.
  • the format is a known log format.
  • a variable is a variable part in the format, and a common part is a part that does not change in the log format.
  • the values of variables in the input log are called variable values.
  • FIG. 2B is a schematic diagram of an exemplary format recorded in the format storage unit 161.
  • the format includes a character string that represents the format associated with the unique ID.
  • the format is defined as a variable by describing a predetermined identifier in a variable part in the log, and a part other than the variable in the log is defined as a common part.
  • variable identifiers for example, “ ⁇ variable: timestamp>” represents a variable representing a time stamp, “ ⁇ variable: character string>” represents a variable representing an arbitrary character string, and “ ⁇ variable: numerical value>” A variable representing an arbitrary numerical value is shown, and “ ⁇ variable: IP>” represents a variable representing an arbitrary IP address.
  • Variable identifiers are not limited to these, and may be defined by an arbitrary method such as a regular expression or a list of possible values. Further, the format may be configured by only the common part without including the variable, or may be configured by only the variable without including the common part.
  • the format determination unit 120 determines that the log in the second row of the second log data 12 is compatible with the format whose ID is 223 in FIG. 2B. Then, the format determination unit 120 processes the log based on the determined format, and includes “2015/08/17 08:29:59” as a time stamp, “SV003” as a character string, and an IP address. “192.168.1.23” is determined as a variable value.
  • the format is represented by a list of character strings for visibility, but may be represented in any data format (file format), for example, binary data or text data.
  • file format for example, binary data or text data.
  • the format may be recorded as a text file in the format storage unit 161 or may be recorded in the format storage unit 161 as a database table.
  • the sequence determination unit 130 is a log analysis unit, and determines the sequence based on the sequence information recorded in the sequence storage unit 162 for the log whose format has been determined by the format determination unit 120.
  • the sequence information is information that defines the order (sequence) in which logs are output based on information related to logs.
  • FIG. 2C is a schematic diagram of exemplary sequence information recorded in the sequence storage unit 162.
  • the sequence information includes a list of format IDs that define a sequence associated with a sequence ID that is an identifier of the sequence. Each sequence defines that logs are output in the order of the format IDs recorded in the sequence storage unit 162.
  • the content of the log used to define the sequence is not limited to the format ID, and may be arbitrary information related to the analysis target log, such as a variable value included in the log and a log identifier (file name).
  • the sequence determination unit 130 extracts, from the log whose format has been determined by the format determination unit 120, one that matches any sequence recorded in the sequence storage unit 162.
  • the log aggregation unit 140 rearranges, aggregates, and outputs logs that match the sequence.
  • the sequence determination process by the sequence determination unit 130 may be performed on a plurality of types of log data (for example, the first log data 11 and the second log data 12), or may be performed on one log data. It's okay.
  • the sequence determination unit 130 outputs logs in the order defined as a sequence. However, the logs included in the list of format IDs may be collected and output regardless of the order.
  • the sequence determination unit 130 has the format ID of the log in the second and third lines of the first log data 11 as 039 and the format ID of the log in the second line of the second log data 12 as 223. For this reason, it is determined that these logs match the sequence with sequence ID A in FIG. 2C (referred to as sequence A). Then, the sequence determination unit 130 extracts these logs as matching with the sequence A.
  • the log aggregating unit 140 rearranges the logs according to the sequence A, aggregates them, and outputs them. A plurality of sets of logs may match one sequence.
  • the sequence determination unit 130 repeats the determination for other sequence IDs.
  • FIG. 3 is a schematic diagram illustrating an exemplary aggregation result by the log aggregation unit 140.
  • the aggregation result includes the file name including the log, the log, the log format ID, and the sequence ID determined by the log aggregation unit 140, which are associated with each other. In this way, the sequence ID corresponding to the sequence definition is recorded for a group of logs whose log format IDs match the sequence definition shown in FIG. 2C.
  • the aggregation result shown in FIG. 3 is an example, and may be recorded in an arbitrary format.
  • the aggregation result is represented by a list of character strings for visibility, but may be represented in an arbitrary data format (file format), for example, binary data or text data. Further, the aggregation result may be recorded separately in a plurality of files or tables.
  • the output unit 150 outputs the aggregation result by the log aggregation unit 140.
  • the output unit 150 outputs the aggregation result to the display device 20, and the display device 20 displays the aggregation result as an image for the user.
  • the display device 20 includes a display unit such as a liquid crystal display for displaying an image and a CRT (Cathode Ray Tube) display.
  • FIGS. 4A and 4B are schematic diagrams illustrating an exemplary aggregation result display screen using the display device 20.
  • a screen C shown in FIG. 4A displays a heading C ⁇ b> 1 of each sequence according to the aggregation result by the log aggregation unit 140.
  • Heading C1 includes the time range and number of logs that match the sequence.
  • the heading C1 may include other information.
  • the screen C expands and displays a log C2 that matches the sequence, as shown in FIG. 4B.
  • the logs C2 in the selected sequence are rearranged and displayed in order of time based on the time stamp in the log.
  • the log C2 that matches the sequence A is displayed in the oldest order from the top, but the reverse order may be used.
  • an identifier here, a file name
  • the screens shown in FIGS. 4A and 4B are only examples, and any display method may be used as long as the log can be displayed so that the aggregation result by the log aggregation unit 140 can be visually recognized by the user.
  • the user can collectively acquire logs that match a pre-registered sequence, and can view logs across a plurality of log data in time series.
  • the output method of the aggregation result is not limited to the image display for the user.
  • the output unit 150 may output the aggregation result as data, and the log analysis system 100 or other system may perform analysis processing, statistical processing, or the like on the aggregation result data from the output unit 150.
  • FIG. 5 is a schematic configuration diagram illustrating an exemplary device configuration of the log analysis system 100 according to the present embodiment.
  • the log analysis system 100 includes a CPU (Central Processing Unit) 101, a memory 102, a storage device 103, and a communication interface 104.
  • the log analysis system 100 may be connected to the display device 20 via the communication interface 104 or may include the display device 20.
  • the log analysis system 100 may be an independent device or may be integrated with other devices.
  • the communication interface 104 is a communication unit that transmits and receives data, and is configured to be able to execute at least one communication method of wired communication and wireless communication.
  • the communication interface 104 includes a processor, an electric circuit, an antenna, a connection terminal, and the like necessary for the communication method.
  • the communication interface 104 is connected to a network using the communication method in accordance with a signal from the CPU 101 to perform communication. For example, the communication interface 104 receives the analysis target log 10 from the outside.
  • the storage device 103 stores a program executed by the log analysis system 100, data of a processing result by the program, and the like.
  • the storage device 103 includes a read-only ROM (Read Only Memory), a readable / writable hard disk drive, a flash memory, or the like.
  • the storage device 103 may include a computer-readable portable storage medium such as a CD-ROM.
  • the memory 102 includes a RAM (Random Access Memory) that temporarily stores data being processed by the CPU 101, a program read from the storage device 103, and data.
  • the CPU 101 temporarily records temporary data used for processing in the memory 102, reads a program recorded in the storage device 103, and performs various calculations, control, discrimination, etc. on the temporary data according to the program It is a processor as a process part which performs these processing operations.
  • the CPU 101 records processing result data in the storage device 103 and transmits processing result data to the outside via the communication interface 104.
  • the CPU 101 functions as the log input unit 110, the format determination unit 120, the sequence determination unit 130, the log aggregation unit 140, and the output unit 150 in FIG. 1 by executing a program recorded in the storage device 103.
  • the storage device 103 functions as the format storage unit 161 and the sequence storage unit 162 in FIG.
  • the log analysis system 100 is not limited to the specific configuration shown in FIG.
  • the log analysis system 100 is not limited to a single device, and may be configured by connecting two or more physically separated devices in a wired or wireless manner.
  • Each unit included in the log analysis system 100 may be realized by an electric circuit configuration.
  • the electric circuit configuration is a term that conceptually includes a single device, a plurality of devices, a chipset, or a cloud.
  • At least a part of the log analysis system 100 may be provided in SaaS (Software as a Service) format. That is, at least a part of functions for realizing the log analysis system 100 may be executed by software executed via a network.
  • SaaS Software as a Service
  • FIG. 6 is a diagram showing a flowchart of a log analysis method using the log analysis system 100 according to the present embodiment.
  • the log input unit 110 acquires the analysis target log 10 and inputs it to the log analysis system 100 (step S101).
  • the format determination unit 120 determines whether one format included in the analysis target log 10 input in step S101 is a determination target, and is compatible with any of the formats recorded in the format storage unit 161 (step) S102).
  • steps S102 to S103 are performed with the next log of the analysis target log 10 as the determination target. repeat.
  • the format determination unit 120 uses the format to change the determination target log to a variable. And a common part (step S104). The format determination unit 120 records the variable value in the determination target log.
  • steps S102 to S105 are repeated with the next log of the analysis target log 10 as a determination target.
  • step S105 When the analysis is completed for all the logs in the analysis target log 10 (YES in step S105), any sequence recorded in the sequence storage unit 162 for the log whose format is determined in step S104. And a log that matches the sequence is extracted (step S106). Then, the log aggregating unit 140 rearranges, aggregates and outputs the logs determined to match the sequence in step S106 according to the sequence (step S107).
  • the output unit 150 outputs the aggregation result acquired in step S106 to the display device 20 and displays it for the user (step S108).
  • the log analysis system 100 aggregates and displays logs according to a sequence registered in advance. Therefore, the user can perform log analysis with reference to the logs extracted and arranged based on the correlation between the logs. In addition, since logs can be aggregated across a plurality of types of log data, it is possible to reduce the burden of the user performing log analysis with reference to the plurality of log data.
  • a sequence is defined using a format identifier (format ID), whereas in the present embodiment, a sequence is defined using other information relating to a log.
  • format ID format identifier
  • a sequence is defined using other information relating to a log.
  • the apparatus used in this embodiment and the process to be executed are the same as those in the first embodiment.
  • FIG. 7A is a schematic diagram of first sequence information according to the present embodiment.
  • the sequence information shown in FIG. 7A includes a list of format ID and variable value pairs associated with a sequence ID that is an identifier of the sequence.
  • the character string “300 (Start)” in FIG. 7A defines that the format ID “300” and the variable value “Start” are a pair.
  • the sequence determination unit 130 matches the format ID of the sequence recorded in the sequence storage unit 162 in the log whose format is determined by the format determination unit 120, and is a variable that is a set of the format ID. Extract logs that contain values. With such a configuration, it is possible to determine the sequence based on not only the identifier of the format to which the log corresponds but also the variable value included in the log.
  • FIG. 8 is a schematic diagram showing an exemplary aggregation result generated using the first sequence information shown in FIG. 7A.
  • the aggregation result includes the file name including the log, the log, the log format ID, and the sequence ID determined by the log aggregation unit 140, which are associated with each other.
  • logs having the format ID “300” and including the variable values “Start”, “Retry”, and “End” are aggregated.
  • FIG. 7B is a schematic diagram of second sequence information according to the present embodiment.
  • the sequence information illustrated in FIG. 7B includes a list of variable values associated with a sequence ID that is an identifier of the sequence. Further, each format ID is assigned a file name that is an identifier of log data.
  • the sequence determination unit 130 extracts a log including the variable value recorded in the sequence storage unit 162 from among the logs whose format is determined by the format determination unit 120. With such a configuration, the sequence can be determined based on the variable values included in the log.
  • FIG. 7C is a schematic diagram of third sequence information according to the present embodiment.
  • the sequence information shown in FIG. 7C includes a list of pairs of format IDs and file names as log data identifiers, which are associated with a sequence ID that is a sequence identifier.
  • the character string “039 (message.log)” in FIG. 7C defines that the format ID “039” and the file name “message.log” are a pair.
  • the sequence determination unit 130 is a file whose format is matched with the format ID of the sequence recorded in the sequence storage unit 162 in the log whose format is determined by the format determination unit 120 and is a set of the format ID.
  • the sequence information of FIGS. 7A to 7C may be combined to define a sequence using log data identifiers, format identifiers, and variable values. Further, the sequence may be defined by using another information relating to the log in combination.
  • FIG. 9 is a block diagram of the log analysis system 100-1 according to the present embodiment.
  • the log analysis system 100-1 includes a format learning unit 171 and a sequence learning unit 172 in addition to the configuration of FIG.
  • the format learning unit 171 creates a new format if the determination target log does not match any format recorded in the format storage unit 161. Records in the storage unit 161.
  • the format learning unit 171 As a first method for the format learning unit 171 to learn the format, the format learning unit 171 accumulates a plurality of logs whose formats are unknown, and a common part that does not change with a variable that statistically changes for them. Can be defined as a new format. As a second method for the format learning unit 171 to learn the format, the format learning unit 171 reads a list of known variable values and matches or resembles a known variable value in a log whose format is unknown. A new format can be defined by determining the part to be a variable and determining the other part as a common part. As a known variable value, the value itself may be used, or a pattern such as a regular expression may be used. The format learning method is not limited to these, and any learning algorithm capable of defining a new format for the input log may be used.
  • the sequence learning unit 172 determines the format and combination of the logs when the determination target log does not match any sequence recorded in the sequence storage unit 162. The number of occurrences (frequency) is counted every time. The sequence learning unit 172 creates a new sequence based on the format combination and records it in the sequence storage unit 162 when the frequency calculated for a certain format combination exceeds a predetermined threshold.
  • the sequence learning unit 172 may define a new sequence based on an input by the user. In this case, when the user specifies a combination of logs for which a sequence is to be defined via the input device, the sequence learning unit 172 creates a new sequence based on the combination of log formats and records it in the sequence storage unit 162. To do.
  • the sequence learning method is not limited to these, and any learning algorithm that can newly define a sequence from an input log may be used.
  • the log analysis system 100-1 since the log analysis system 100-1 includes the format and sequence learning unit, it is possible to newly generate and record a format and sequence from an unknown format and sequence log.
  • the present embodiment provides a screen for editing sequence information.
  • 10A and 10B are schematic diagrams illustrating exemplary sequence information editing screens using the display device 20.
  • a screen D shown in FIG. 10A is a screen for adding a log designated from the analysis target log 10 to the sequence.
  • the screen D includes a log D1 in the analysis target log 10, a selection box D2 for selecting a sequence ID, and a setting button D3 for registering the selected content.
  • the user uses the input device to select a sequence ID on the selection box D2 for one or more logs D1 to be added to the sequence, and then presses the setting button D3. Thereafter, the log analysis system 100 adds a format ID corresponding to the log D1 to be added to the sequence to the sequence ID selected on the selection box D2 in the sequence information recorded in the sequence storage unit 162. If the sequence ID selected in the sequence storage unit 162 in the selection box D2 is not registered in the sequence information in the sequence storage unit 162, the sequence ID selected in the selection box D2 and the log D1 to be added to the sequence A new pair with a format ID corresponding to is recorded.
  • a screen E shown in FIG. 10B is a screen for changing the sequence information recorded in the sequence storage unit 162.
  • the screen E includes a sequence ID field E1 that displays a sequence ID in the sequence storage unit 162, a format ID field E2 that displays a format ID associated with the sequence ID, an order change button E3, a delete button E4, And a setting button E5.
  • the format ID column E2 displays the format ID associated with the sequence ID from the top to the bottom in the order defined by the sequence information in the sequence storage unit 162.
  • the order change button E3 is a button for moving the format ID in the format ID column E2, and each time the button is pressed, the format ID moves up or down by one.
  • the delete button E4 is a button for deleting the format ID in the format ID column E2, and when pressed, deletes the format ID.
  • the user uses the input device to change the order of format IDs with the order change button E3 or delete the format ID with the delete button E4, and then presses the setting button E5. Thereafter, the log analysis system 100 changes the order of the format IDs as set in the screen E in the sequence information recorded in the sequence storage unit 162, or deletes the format IDs.
  • 10A and 10B are examples, and any screen may be used as long as the sequence information in the sequence storage unit 162 can be edited.
  • FIG. 11 is a schematic configuration diagram of the log analysis system 100 according to each of the above-described embodiments.
  • FIG. 11 illustrates a configuration example for the log analysis system 100 to function as a device that performs log analysis based on a log sequence.
  • the log analysis system 100 includes a sequence determination unit 130 that determines to which sequence a plurality of logs of the analysis target log 10 match, and a plurality of sequences determined to match the sequence by the sequence determination unit 130.
  • a log aggregating unit 140 for aggregating and outputting the logs based on the sequence.
  • a program for operating the configuration of the embodiment so as to realize the functions of the above-described embodiment (more specifically, a program for causing a computer to execute the processing illustrated in FIG. 6) is recorded on a recording medium, and the recording medium is recorded on the recording medium.
  • a processing method of reading a recorded program as a code and executing it on a computer is also included in the category of each embodiment. That is, a computer-readable recording medium is also included in the scope of each embodiment.
  • the program itself is included in each embodiment.
  • the recording medium for example, a floppy (registered trademark) disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a magnetic tape, a nonvolatile memory card, and a ROM can be used.
  • the embodiment is not limited to the processing executed by a single program recorded in the recording medium, and the embodiments that execute processing by operating on the OS in cooperation with other software and the function of the expansion board are also described in each embodiment. Included in the category.
  • a sequence determination unit that determines which sequence among the plurality of logs to be analyzed matches a predetermined sequence
  • a log aggregating unit that aggregates and outputs the plurality of logs determined to match the sequence by the sequence determination unit; and
  • a log analysis system comprising:
  • Appendix 2 The log analysis system according to appendix 1, wherein the sequence is information that associates information related to the plurality of logs with an order of outputting the plurality of logs.
  • Appendix 3 A format determination unit that determines which of the predetermined formats the plurality of logs match; The log analysis system according to attachment 2, wherein the information related to the plurality of logs includes information indicating the format.
  • the format determination unit is configured to extract a variable value from the plurality of logs based on the format, The log analysis system according to attachment 3, wherein the information related to the plurality of logs includes information indicating the variable value.
  • the analysis target log includes a plurality of data
  • the log analysis system according to any one of appendices 1 to 4, wherein the sequence determination unit is configured to perform determination on the plurality of logs read from the plurality of data.
  • Appendix 6 The log analysis system according to any one of appendices 1 to 5, further comprising a sequence learning unit that newly generates the sequence based on the plurality of logs determined not to match the sequence.
  • a log analysis method comprising:

Abstract

本発明は、相関関係を有するログを集約して出力することができるログ分析システム、方法およびプログラムを提供する。本発明の一実施形態に係るログ分析システム100は、分析対象ログ10のうち複数のログが、予め決められたいずれのシーケンスに合致するかを判定するシーケンス判定部130と、シーケンス判定部によりシーケンスに合致すると判定された複数のログを、シーケンスに基づいて集約して出力するログ集約部140と、を備える。

Description

ログ分析システム、方法およびプログラム
 本発明は、ログの分析を行うためのログ分析システム、方法およびプログラムに関する。
 コンピュータ上で実行されるシステムにおいては、イベントの結果やメッセージ等を含むログが出力される。システム異常の原因の追及等のためにログ分析を行う際、ユーザ(オペレータ等)はシステムから出力される多数のログを参照する必要がある。ユーザへの負担を軽減するために、ログを見やすく出力することが求められている。
 特許文献1には、ユーザにより入力されたキーワードに従ってログを抽出するとともに、該ログの出現位置を時系列のマップ中に表示する技術が開示されている。特許文献1の技術を用いることによって、ユーザは特定のキーワードを含むログを取得することができ、また該ログが出現するタイミングや分布を視覚的に知ることができる。
特開2005-141663号公報
 一般的なシステムには複数の装置およびプログラムが含まれており、それらの装置およびプログラムからは複数の種類のログデータ(例えばログファイル等)が出力される。しかしながら、特許文献1の技術はキーワードを含むか否かに基づいてログを抽出するため、複数の種類のログデータからログ同士の相関関係に基づいてログを抽出することはできない。複数のログの相関関係を分析するために、ユーザは複数の種類のログデータから関連箇所を見つけ出す必要がある。
 本発明は、上述の問題に鑑みて行われたものであって、相関関係を有するログを集約して出力することができるログ分析システム、方法およびプログラムを提供することを目的とする。
 本発明の第1の態様は、ログ分析システムであって、分析対象ログのうち複数のログが、予め決められたいずれのシーケンスに合致するかを判定するシーケンス判定部と、前記シーケンス判定部により前記シーケンスに合致すると判定された前記複数のログを、前記シーケンスに基づいて集約して出力するログ集約部と、を備える。
 本発明の第2の態様は、ログ分析方法であって、分析対象ログのうち複数のログが、予め決められたいずれのシーケンスに合致するかを判定する工程と、前記シーケンスに合致すると判定された前記複数のログを、前記シーケンスに基づいて集約して出力する工程と、を備える。
 本発明の第3の態様は、ログ分析プログラムであって、コンピュータに、分析対象ログのうち複数のログが、予め決められたいずれのシーケンスに合致するかを判定する工程と、前記シーケンスに合致すると判定された前記複数のログを、前記シーケンスに基づいて集約して出力する工程と、を実行させる。
 本発明によれば、複数のログが予め決められたシーケンスに合致するか否かに基づき、所定の相関関係を有する複数のログを集約して出力することができる。
第1の実施形態に係るログ分析システムのブロック図である。 第1の実施形態に係る分析対象ログの模式図である。 第1の実施形態に係るフォーマットの模式図である。 第1の実施形態に係るシーケンスの模式図である。 第1の実施形態に係る集約結果の模式図である。 第1の実施形態に係る集約結果を表示する画面の模式図である。 第1の実施形態に係る集約結果を表示する画面の模式図である。 第1の実施形態に係るログ分析システムの概略構成図である。 第1の実施形態に係るログ分析システムを用いるログ分析方法のフローチャートを示す図である。 第2の実施形態に係るシーケンスの模式図である。 第2の実施形態に係るシーケンスの模式図である。 第2の実施形態に係るシーケンスの模式図である。 第2の実施形態に係る集約結果の模式図である。 第3の実施形態に係るログ分析システムのブロック図である。 第4の実施形態に係るシーケンス編集画面の模式図である。 第4の実施形態に係るシーケンス編集画面の模式図である。 各実施形態に係るログ分析システムのブロック図である。
 以下、図面を参照して、本発明の実施形態を説明するが、本発明は本実施形態に限定されるものではない。なお、以下で説明する図面で、同機能を有するものは同一符号を付け、その繰り返しの説明は省略することもある。
(第1の実施形態)
 図1は、本実施形態に係るログ分析システム100のブロック図である。図1において、矢印は主なデータの流れを示しており、図1に示したもの以外のデータの流れがあってよい。図1において、各ブロックはハードウェア(装置)単位の構成ではなく、機能単位の構成を示している。そのため、図1に示すブロックは単一の装置内に実装されてよく、あるいは複数の装置内に別れて実装されてよい。ブロック間のデータの授受は、データバス、ネットワーク、可搬記憶媒体等、任意の手段を介して行われてよい。
 ログ分析システム100は、処理部として、ログ入力部110、フォーマット判定部120、シーケンス判定部130、ログ集約部140および出力部150を備える。また、ログ分析システム100は、記憶部として、フォーマット記憶部161およびシーケンス記憶部162を備える。
 ログ入力部110は、分析対象ログ10を取得し、ログ分析システム100に入力する。分析対象ログ10は、ログ分析システム100の外部から取得されてよく、あるいはログ分析システム100の内部に予め記録されたものを読み出すことにより取得されてよい。分析対象ログ10は、1つ以上の装置又はプログラムから出力される1つ以上のログを含む。分析対象ログ10は、任意のデータ形式(ファイル形式)で表されたログであり、例えばバイナリデータ又はテキストデータでよい。また、分析対象ログ10はデータベースのテーブルとして記録されてよく、あるいはテキストファイルとして記録されてよい。
 図2Aは、例示的な分析対象ログ10の模式図である。本実施形態における分析対象ログ10は、装置又はプログラムから出力される1つのログを1単位とし、1つ以上の任意の数のログを含む。1つのログは1行の文字列でよく、あるいは複数行の文字列でよい。すなわち、分析対象ログ10は分析対象ログ10に含まれるログの総体を指し、ログは分析対象ログ10から抜き出された1つのログを指す。各ログは、タイムスタンプおよびメッセージ等を含む。
 分析対象ログ10は、第1のログデータ11および第2のログデータ12からなる。第1のログデータ11および第2のログデータ12は別々のデータ(例えばファイル、テーブル等)として記録され、それぞれ1つ以上のログを含む。第1のログデータ11および第2のログデータ12にはそれぞれ識別子(例えばmessage.log、syslog.logのようなファイル名)が付されて区別される。ログデータの数はこれに限られず、1つ以上の任意の数でよい。
 フォーマット判定部120は、形式判定部であり、分析対象ログ10(第1のログデータ11および第2のログデータ12)に含まれる各ログに対して、フォーマット記憶部161に予め記録されているいずれのフォーマットに適合するかを判定し、適合するフォーマットを用いて各ログを変数と共通部分とに分離する。フォーマットとは、既知のログの形式である。変数とはフォーマットの中で変化可能な部分であり、共通部分とはログのフォーマットの中で変化しない部分である。入力されたログ中の変数の値(数値、文字列およびその他のデータを含む)を変数値と呼ぶ。
 図2Bは、フォーマット記憶部161に記録される例示的なフォーマットの模式図である。フォーマットは、一意のIDに関連付けられたフォーマットを表す文字列を含む。フォーマットは、ログ中の変化可能な部分に所定の識別子を記載することによって変数として規定し、ログ中の変数以外の部分を共通部分として規定する。変数の識別子として、例えば「<変数:タイムスタンプ>」はタイムスタンプを表す変数を示し、「<変数:文字列>」は任意の文字列を表す変数を示し、「<変数:数値>」は任意の数値を表す変数を示し、「<変数:IP>」は任意のIPアドレスを表す変数を示す。変数の識別子はこれらに限られず、正規表現や、取り得る値のリスト等の任意の方法により定義されてよい。また、フォーマットは変数を含まずに共通部分のみによって構成されてよく、あるいは共通部分を含まずに変数のみによって構成されてよい。
 例えば、フォーマット判定部120は、第2のログデータ12の2行目のログを、図2BのIDが223であるフォーマットに適合すると判定する。そして、フォーマット判定部120は、判定されたフォーマットに基づいて該ログを処理し、タイムスタンプである「2015/08/17 08:29:59」、文字列である「SV003」およびIPアドレスである「192.168.1.23」を変数値として決定する。
 図2Bにおいて、フォーマットは視認性のために文字列のリストで表されているが、任意のデータ形式(ファイル形式)で表されてよく、例えばバイナリデータ又はテキストデータでよい。また、フォーマットはテキストファイルとしてフォーマット記憶部161に記録されてよく、あるいはデータベースのテーブルとしてフォーマット記憶部161に記録されてよい。
 シーケンス判定部130は、ログ分析部であり、フォーマット判定部120によりフォーマットが判定されたログに対して、シーケンス記憶部162に記録されたシーケンス情報に基づいてシーケンスの判定を行う。シーケンス情報は、ログに係る情報に基づいてログを出力する順序(シーケンス)を定義する情報である。
 図2Cは、シーケンス記憶部162に記録される例示的なシーケンス情報の模式図である。シーケンス情報は、シーケンスの識別子であるシーケンスIDに関連付けられた、シーケンスを定義するフォーマットIDのリストを含む。各シーケンスは、シーケンス記憶部162に記録されたフォーマットIDの順序でログを出力することを定義する。シーケンスを定義するために用いられるログの内容は、フォーマットIDに限られず、ログに含まれる変数値、ログの識別子(ファイル名)等、分析対象のログに係る任意の情報でよい。シーケンス判定部130は、フォーマット判定部120によりフォーマットが判定されたログから、シーケンス記憶部162に記録されたいずれかのシーケンスに合致するものを抽出する。そして、ログ集約部140はシーケンス判定部130により判定されたシーケンスに従って、該シーケンスに合致するログを並び替え、集約して出力する。シーケンス判定部130によるシーケンス判定処理は、複数の種類のログデータ(例えば第1のログデータ11および第2のログデータ12)に対して行われてよく、あるいは1つのログデータに対して行われてよい。本実施形態においてシーケンス判定部130は、シーケンスとして定義された順序でログを出力するが、順序に関係なくフォーマットIDのリストに含まれるログを集約して出力してもよい。
 例えば、シーケンス判定部130は、第1のログデータ11の2行目および3行目のログのフォーマットIDが039であり、第2のログデータ12の2行目のログのフォーマットIDが223であることから、これらのログは図2CのシーケンスIDがAのシーケンス(シーケンスAと呼ぶ)に合致すると判定する。そして、シーケンス判定部130は、これらのログをシーケンスAに合致するものとして抽出する。ログ集約部140は、シーケンスAに従って該ログを並び替え、集約して出力する。1つのシーケンスに複数のログの組が合致してもよい。シーケンス判定部130は、他のシーケンスIDについて判定を繰り返す。
 図3は、ログ集約部140による例示的な集約結果を示す模式図である。集約結果は、互いに関連付けられた、ログを含むファイル名、ログ、ログのフォーマットID、およびログ集約部140により判定されたシーケンスIDを含む。このように、ログのフォーマットIDが図2Cに示すシーケンス定義に合致している一群のログに対して、該シーケンス定義に対応するシーケンスIDが記録される。図3に示す集約結果は一例であり、任意の形式で記録されてよい。図3において集約結果は視認性のために文字列のリストで表されているが、任意のデータ形式(ファイル形式)で表されてよく、例えばバイナリデータ又はテキストデータでよい。また、集約結果は複数のファイル又はテーブルに別れて記録されてもよい。
 出力部150は、ログ集約部140による集約結果の出力を行う。本実施形態において、出力部150は表示装置20に集約結果を出力し、表示装置20はユーザに向けて集約結果を画像として表示する。表示装置20は、画像を表示するための液晶ディスプレイ、CRT(Cathode Ray Tube)ディスプレイ等の表示部を備える。
 図4A、4Bは、表示装置20を用いる例示的な集約結果の表示画面を示す模式図である。図4Aに示す画面Cは、ログ集約部140による集約結果に従って、各シーケンスの見出しC1を表示する。見出しC1は、シーケンスに合致するログの時間範囲および件数を含む。見出しC1はその他の情報を含んでよい。
 ユーザが入力装置を用いて特定のシーケンスの見出しC1を選択すると、図4Bに示すように、画面Cは該シーケンスに合致するログC2を展開して表示する。選択されたシーケンス中のログC2は、ログ中のタイムスタンプに基づいて時間順に並び替えられて表示される。図4Bでは、シーケンスAに合致するログC2が上から古い順に表示されているが、逆の順でもよい。各ログC2の先頭には、そのログが含まれるログデータの識別子(ここではファイル名)が表示される。
 図4A、4Bに示す画面は一例であり、ログ集約部140による集約結果をユーザに対して視認可能にログを表示できれば、いずれの表示方法を用いてもよい。ユーザは図4A、4Bの画面を参照することによって、予め登録されたシーケンスに合致するログをまとめて取得することができ、複数のログデータにまたがるログを時系列で見ることができる。
 集約結果の出力方法は、ユーザに向けた画像表示に限られない。例えば、出力部150は集約結果をデータとして出力し、ログ分析システム100又はその他システムは出力部150からの集約結果のデータに対して分析処理、統計処理等を行ってもよい。
 図5は、本実施形態に係るログ分析システム100の例示的な機器構成を示す概略構成図である。ログ分析システム100は、CPU(Central Processing Unit)101と、メモリ102と、記憶装置103と、通信インターフェース104とを備える。ログ分析システム100は、表示装置20に通信インターフェース104を介して接続されてよく、あるいは表示装置20を含んでよい。ログ分析システム100は独立した装置でよく、あるいは他の装置と一体に構成されてよい。
 通信インターフェース104は、データの送受信を行う通信部であり、有線通信および無線通信の少なくとも一方の通信方式を実行可能に構成される。通信インターフェース104は、該通信方式に必要なプロセッサ、電気回路、アンテナ、接続端子等を含む。通信インターフェース104は、CPU101からの信号に従って、該通信方式を用いてネットワークに接続され、通信を行う。通信インターフェース104は、例えば分析対象ログ10を外部から受信する。
 記憶装置103は、ログ分析システム100が実行するプログラムや、プログラムによる処理結果のデータ等を記憶する。記憶装置103は、読み取り専用のROM(Read Only Memory)や、読み書き可能のハードディスクドライブ又はフラッシュメモリ等を含む。また、記憶装置103は、CD-ROM等のコンピュータ読取可能な可搬記憶媒体を含んでもよい。メモリ102は、CPU101が処理中のデータや記憶装置103から読み出されたプログラムおよびデータを一時的に記憶するRAM(Random Access Memory)等を含む。
 CPU101は、処理に用いる一時的なデータをメモリ102に一時的に記録し、記憶装置103に記録されたプログラムを読み出し、該プログラムに従って該一時的なデータに対して種々の演算、制御、判別などの処理動作を実行する処理部としてのプロセッサである。また、CPU101は、記憶装置103に処理結果のデータを記録し、また通信インターフェース104を介して処理結果のデータを外部に送信する。
 本実施形態においてCPU101は、記憶装置103に記録されたプログラムを実行することによって、図1のログ入力部110、フォーマット判定部120、シーケンス判定部130、ログ集約部140および出力部150として機能する。また、本実施形態において記憶装置103は、図1のフォーマット記憶部161およびシーケンス記憶部162として機能する。
 ログ分析システム100は、図5に示す具体的な構成に限定されない。ログ分析システム100は、1つの装置に限られず、2つ以上の物理的に分離した装置が有線又は無線で接続されることにより構成されていてもよい。ログ分析システム100に含まれる各部は、それぞれ電気回路構成により実現されていてもよい。ここで、電気回路構成とは、単一のデバイス、複数のデバイス、チップセット又はクラウドを概念的に含む文言である。
 また、ログ分析システム100の少なくとも一部がSaaS(Software as a Service)形式で提供されてよい。すなわち、ログ分析システム100を実現するための機能の少なくとも一部が、ネットワーク経由で実行されるソフトウェアによって実行されてよい。
 図6は、本実施形態に係るログ分析システム100を用いるログ分析方法のフローチャートを示す図である。まず、ログ入力部110は、分析対象ログ10を取得し、ログ分析システム100に入力する(ステップS101)。フォーマット判定部120は、ステップS101で入力された分析対象ログ10に含まれる1つのログを判定対象として、フォーマット記憶部161に記録されたいずれかのフォーマットに適合するか否かを判定する(ステップS102)。
 ステップS102において判定対象のログがフォーマット記憶部161に記録されたいずれのフォーマットにも適合しない場合には(ステップS103のNO)、分析対象ログ10の次のログを判定対象としてステップS102~S103を繰り返す。
 ステップS102において判定対象のログがフォーマット記憶部161に記録されたいずれかのフォーマットに適合した場合には(ステップS103のYES)、フォーマット判定部120は、該フォーマットを用いて判定対象のログを変数と共通部分とに分離する(ステップS104)。フォーマット判定部120は、判定対象のログ中の変数値を記録する。
 分析対象ログ10中の全てのログに対して分析が終了していない場合には(ステップS105のNO)、分析対象ログ10の次のログを判定対象としてステップS102~S105を繰り返す。
 分析対象ログ10中の全てのログに対して分析が終了した場合には(ステップS105のYES)、ステップS104においてフォーマットが判定されたログに対して、シーケンス記憶部162に記録されたいずれのシーケンスに合致するかを判定し、シーケンスに合致するログを抽出する(ステップS106)。そして、ログ集約部140は、ステップS106においてシーケンスに合致すると判定されたログを、該シーケンスに従って並び替え、集約して出力する(ステップS107)。
 最後に、出力部150は、ステップS106で取得された集約結果を表示装置20に出力し、ユーザに向けて表示させる(ステップS108)。
 以上のように、ログ分析システム100は、予め登録されたシーケンスに従ってログを集約して表示する。そのため、ユーザはログ同士の相関関係に基づいて抽出および並べられたログを参照してログ分析を行うことができる。また、複数の種類のログデータから横断してログを集約できるため、ユーザが複数のログデータを参照してログ分析を行う負担を軽減することができる。
(第2の実施形態)
 第1の実施形態はフォーマットの識別子(フォーマットID)を用いてシーケンスを定義するのに対して、本実施形態はログに係る他の情報を用いてシーケンスを定義する。本実施形態において用いる装置および実行する処理は、第1の実施形態と同様である。
 図7Aは、本実施形態に係る第1のシーケンス情報の模式図である。図7Aに示すシーケンス情報は、シーケンスの識別子であるシーケンスIDに関連付けられた、フォーマットIDおよび変数値の組のリストを含む。例えば、図7Aにおける「300(Start)」という文字列は、フォーマットID「300」と変数値「Start」とが組になっていることを定義する。
 シーケンス判定部130は、フォーマット判定部120によりフォーマットが判定されたログのうち、該フォーマットがシーケンス記憶部162に記録されたシーケンスのフォーマットIDに合致するとともに、該フォーマットIDの組となっている変数値を含むログを抽出する。このような構成により、ログが該当するフォーマットの識別子だけでなく、ログに含まれる変数値に基づいてシーケンスの判定ができる。
 図8は、図7Aに示す第1のシーケンス情報を用いて生成した例示的な集約結果を示す模式図である。集約結果は、互いに関連付けられた、ログを含むファイル名、ログ、ログのフォーマットID、およびログ集約部140により判定されたシーケンスIDを含む。この集約結果においては、図7Aの第1のシーケンス情報に従って、フォーマットIDが「300」であり、かつ「Start」、「Retry」、「End」の変数値を含むログが集約されている。
 図7Bは、本実施形態に係る第2のシーケンス情報の模式図である。図7Bに示すシーケンス情報は、シーケンスの識別子であるシーケンスIDに関連付けられた、変数値のリストを含む。さらに、各フォーマットIDには、ログデータの識別子であるファイル名が付されている。
 シーケンス判定部130は、フォーマット判定部120によりフォーマットが判定されたログのうち、該ログがシーケンス記憶部162に記録された変数値を含むログを抽出する。このような構成により、ログに含まれる変数値に基づいてシーケンスの判定ができる。
 図7Cは、本実施形態に係る第3のシーケンス情報の模式図である。図7Cに示すシーケンス情報は、シーケンスの識別子であるシーケンスIDに関連付けられた、フォーマットIDおよびログデータの識別子としてのファイル名の組のリストを含む。例えば、図7Cにおける「039(message.log)」という文字列は、フォーマットID「039」とファイル名「message.log」とが組になっていることを定義する。
 シーケンス判定部130は、フォーマット判定部120によりフォーマットが判定されたログのうち、該フォーマットがシーケンス記憶部162に記録されたシーケンスのフォーマットIDに合致するとともに、該フォーマットIDの組となっているファイル名のログデータに含まれるログを抽出する。このような構成により、ログが該当するフォーマットの識別子だけでなく、ログが含まれるログデータの識別子(ファイル名)に基づいてシーケンスの判定ができる。
 図7A~7Cのシーケンス情報を組み合わせ、ログデータの識別子、フォーマットの識別子および変数値を用いてシーケンスを定義してよい。また、さらにログに関する別の情報を組み合わせて用いることによってシーケンスを定義してもよい。
 以上のように、本実施形態では、分析対象のログに係る様々な情報を用いてシーケンスの判定を行い、ログの集約を行うことができる。
(第3の実施形態)
 図9は、本実施形態に係るログ分析システム100-1のブロック図である。ログ分析システム100-1は、図1の構成に加えて、フォーマット学習部171およびシーケンス学習部172を備える。
 フォーマット学習部171は、フォーマット判定部120がフォーマットの判定を行う際、判定対象のログがフォーマット記憶部161に記録されているいずれのフォーマットにも適合しない場合に、新たなフォーマットを作成してフォーマット記憶部161に記録する。
 フォーマット学習部171がフォーマットを学習するための第1の方法として、フォーマット学習部171は、フォーマットが未知である複数のログを蓄積し、それらに対して統計的に変化する変数と変化しない共通部分とを分離することによって、新たなフォーマットとして定義することができる。フォーマット学習部171がフォーマットを学習するための第2の方法として、フォーマット学習部171は、既知の変数値のリストを読み込み、フォーマットが未知であるログの中で既知の変数値と一致する又は類似する部分を変数と判定し、それ以外の部分を共通部分と判定することによって、新たなフォーマットを定義することができる。既知の変数値として、値そのものを用いてよく、あるいは正規表現のようなパターンを用いてよい。フォーマットの学習方法はこれらに限られず、入力されたログに対して新たなフォーマットを定義することが可能な任意の学習アルゴリズムを用いてよい。
 シーケンス学習部172は、シーケンス判定部130がシーケンスの判定を行う際、判定対象のログがシーケンス記憶部162に記録されているいずれのシーケンスにも合致しない場合に、該ログのフォーマットおよびフォーマットの組み合わせ毎に出現回数(頻度)をカウントする。シーケンス学習部172は、あるフォーマットの組み合わせについて算出した頻度が所定の閾値以上になった場合に、当該フォーマットの組み合わせに基づいて、新たなシーケンスを作成し、シーケンス記憶部162に記録する。
 シーケンス学習部172は、ユーザによる入力に基づいて新たなシーケンスを定義してもよい。この場合には、ユーザは入力装置を介してシーケンスを定義したいログの組み合わせを指定すると、シーケンス学習部172は当該ログのフォーマットの組み合わせに基づいて新たなシーケンスを作成し、シーケンス記憶部162に記録する。シーケンスの学習方法はこれらに限られず、入力されたログから新たにシーケンスを定義することが可能な任意の学習アルゴリズムを用いてよい。
 以上のように、ログ分析システム100-1は、フォーマットおよびシーケンスの学習部を備えるため、未知のフォーマットおよびシーケンスのログから新たにフォーマットおよびシーケンスを生成し、記録することができる。
(第4の実施形態)
 本実施形態は、シーケンス情報の編集を行うための画面を提供する。図10A、10Bは、表示装置20を用いる例示的なシーケンス情報の編集画面を示す模式図である。図10Aに示す画面Dは、分析対象ログ10から指定されたログをシーケンスに追加するための画面である。画面Dは、分析対象ログ10中のログD1と、シーケンスIDを選択するための選択ボックスD2と、選択した内容を登録するための設定ボタンD3とを含む。
 ユーザは、入力装置を用いて、シーケンスに追加したい1つ以上のログD1に対して、選択ボックスD2上でシーケンスIDを選択した後、設定ボタンD3を押下する。その後、ログ分析システム100は、シーケンス記憶部162に記録されたシーケンス情報において、選択ボックスD2上で選択されたシーケンスIDに対して、シーケンスに追加したいログD1に対応するフォーマットIDを追加する。シーケンス記憶部162に選択ボックスD2上で選択されたシーケンスIDがシーケンス記憶部162のシーケンス情報に未登録である場合には、選択ボックスD2上で選択されたシーケンスIDと、シーケンスに追加したいログD1に対応するフォーマットIDとの組を新たに記録する。
 図10Bに示す画面Eは、シーケンス記憶部162に記録されたシーケンス情報を変更するための画面である。画面Eは、シーケンス記憶部162中のシーケンスIDを表示するシーケンスID欄E1と、該シーケンスIDに関連付けられたフォーマットIDを表示するフォーマットID欄E2と、順序変更ボタンE3と、削除ボタンE4と、設定ボタンE5とを含む。
 フォーマットID欄E2は、シーケンスIDに関連付けられたフォーマットIDを、シーケンス記憶部162中のシーケンス情報により定義された順番で上から下に表示する。順序変更ボタンE3は、フォーマットID欄E2のフォーマットIDを移動させるボタンであり、押下される度にフォーマットIDが上又は下に1つ移動する。また、削除ボタンE4は、フォーマットID欄E2のフォーマットIDを削除するボタンであり、押下されるとフォーマットIDを削除する。
 ユーザは、入力装置を用いて、順序変更ボタンE3によるフォーマットIDの順序変更、又は削除ボタンE4によりフォーマットIDの削除を行った後、設定ボタンE5を押下する。その後、ログ分析システム100は、シーケンス記憶部162に記録されたシーケンス情報において、画面Eで設定されたようにフォーマットIDの順序を変更し、又はフォーマットIDを削除する。
 図10A、10Bに示す画面は一例であり、シーケンス記憶部162中のシーケンス情報を編集可能であれば、どのような画面を用いてもよい。
(その他の実施形態)
 図11は、上述の各実施形態に係るログ分析システム100の概略構成図である。図11には、ログ分析システム100がログのシーケンスに基づいてログの分析を行う装置として機能するための構成例が示されている。ログ分析システム100は、分析対象ログ10のうち複数のログが、予め決められたいずれのシーケンスに合致するかを判定するシーケンス判定部130と、シーケンス判定部130によりシーケンスに合致すると判定された複数のログを、シーケンスに基づいて集約して出力するログ集約部140と、を備える。
 本発明は、上述の実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲において適宜変更可能である。
 上述の実施形態の機能を実現するように該実施形態の構成を動作させるプログラム(より具体的には、図6に示す処理をコンピュータに実行させるプログラム)を記録媒体に記録させ、該記録媒体に記録されたプログラムをコードとして読み出し、コンピュータにおいて実行する処理方法も各実施形態の範疇に含まれる。すなわち、コンピュータ読取可能な記録媒体も各実施形態の範囲に含まれる。また、上述のプログラムが記録された記録媒体はもちろん、そのプログラム自体も各実施形態に含まれる。
 該記録媒体としては例えばフロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、磁気テープ、不揮発性メモリカード、ROMを用いることができる。また該記録媒体に記録されたプログラム単体で処理を実行しているものに限らず、他のソフトウェア、拡張ボードの機能と共同して、OS上で動作して処理を実行するものも各実施形態の範疇に含まれる。
 上述の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
 分析対象ログのうち複数のログが、予め決められたいずれのシーケンスに合致するかを判定するシーケンス判定部と、
 前記シーケンス判定部により前記シーケンスに合致すると判定された前記複数のログを、前記シーケンスに基づいて集約して出力するログ集約部と、
 を備えるログ分析システム。
(付記2)
 前記シーケンスは、前記複数のログに係る情報と、前記複数のログを出力する順序とを関連付ける情報である付記1に記載のログ分析システム。
(付記3)
 前記複数のログが予め決められたいずれの形式に合致するかを判定する形式判定部をさらに備え、
 前記複数のログに係る情報は、前記形式を示す情報を含む付記2に記載のログ分析システム。
(付記4)
 前記形式判定部は、前記形式に基づいて前記複数のログから変数値を抽出するように構成され、
 前記複数のログに係る情報は、前記変数値を示す情報を含む付記3に記載のログ分析システム。
(付記5)
 前記分析対象ログは複数のデータからなり、
 前記シーケンス判定部は、前記複数のデータから読み取った前記複数のログに対して判定を行うように構成される付記1~4のいずれか一項に記載のログ分析システム。
(付記6)
 前記シーケンスに合致しないと判定された前記複数のログに基づいて、前記シーケンスを新たに生成するシーケンス学習部をさらに備える付記1~5のいずれか一項に記載のログ分析システム。
(付記7)
 分析対象ログのうち複数のログが、予め決められたいずれのシーケンスに合致するかを判定する工程と、
 前記シーケンスに合致すると判定された前記複数のログを、前記シーケンスに基づいて集約して出力する工程と、
 を備えるログ分析方法。
(付記8)
 コンピュータに、
 分析対象ログのうち複数のログが、予め決められたいずれのシーケンスに合致するかを判定する工程と、
 前記シーケンスに合致すると判定された前記複数のログを、前記シーケンスに基づいて集約して出力する工程と、
 を実行させるログ分析プログラム。
 この出願は、2015年11月13日に出願された日本出願特願2015-223053を基礎とする優先権を主張し、その開示の全てをここに取り込む。

 

Claims (8)

  1.  分析対象ログのうち複数のログが、予め決められたいずれのシーケンスに合致するかを判定するシーケンス判定部と、
     前記シーケンス判定部により前記シーケンスに合致すると判定された前記複数のログを、前記シーケンスに基づいて集約して出力するログ集約部と、
     を備えるログ分析システム。
  2.  前記シーケンスは、前記複数のログに係る情報と、前記複数のログを出力する順序とを関連付ける情報である請求項1に記載のログ分析システム。
  3.  前記複数のログが予め決められたいずれの形式に合致するかを判定する形式判定部をさらに備え、
     前記複数のログに係る情報は、前記形式を示す情報を含む請求項2に記載のログ分析システム。
  4.  前記形式判定部は、前記形式に基づいて前記複数のログから変数値を抽出するように構成され、
     前記複数のログに係る情報は、前記変数値を示す情報を含む請求項3に記載のログ分析システム。
  5.  前記分析対象ログは複数のデータからなり、
     前記シーケンス判定部は、前記複数のデータから読み取った前記複数のログに対して判定を行うように構成される請求項1~4のいずれか一項に記載のログ分析システム。
  6.  前記シーケンスに合致しないと判定された前記複数のログに基づいて、前記シーケンスを新たに生成するシーケンス学習部をさらに備える請求項1~5のいずれか一項に記載のログ分析システム。
  7.  分析対象ログのうち複数のログが、予め決められたいずれのシーケンスに合致するかを判定する工程と、
     前記シーケンスに合致すると判定された前記複数のログを、前記シーケンスに基づいて集約して出力する工程と、
     を備えるログ分析方法。
  8.  コンピュータに、
     分析対象ログのうち複数のログが、予め決められたいずれのシーケンスに合致するかを判定する工程と、
     前記シーケンスに合致すると判定された前記複数のログを、前記シーケンスに基づいて集約して出力する工程と、
     を実行させるログ分析プログラム。

     
PCT/JP2016/004844 2015-11-13 2016-11-09 ログ分析システム、方法およびプログラム WO2017081866A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US15/774,484 US11232013B2 (en) 2015-11-13 2016-11-09 Log analysis system, log analysis method, and log analysis program for a user interface
JP2017549986A JP7006272B2 (ja) 2015-11-13 2016-11-09 ログ分析システム、方法およびプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015-223053 2015-11-13
JP2015223053 2015-11-13

Publications (1)

Publication Number Publication Date
WO2017081866A1 true WO2017081866A1 (ja) 2017-05-18

Family

ID=58694824

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/004844 WO2017081866A1 (ja) 2015-11-13 2016-11-09 ログ分析システム、方法およびプログラム

Country Status (3)

Country Link
US (1) US11232013B2 (ja)
JP (1) JP7006272B2 (ja)
WO (1) WO2017081866A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113127317B (zh) * 2021-03-24 2022-07-12 深圳乐播科技有限公司 日志的采集处理方法、系统、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007249694A (ja) * 2006-03-16 2007-09-27 Nec Corp ログフォーマット変換装置、ログフォーマット変換方法、及びログフォーマット変換プログラム
JP2008041041A (ja) * 2006-08-10 2008-02-21 Hitachi Information Systems Ltd ログ通知条件定義支援装置とログ監視システムおよびプログラムとログ通知条件定義支援方法
WO2013136418A1 (ja) * 2012-03-12 2013-09-19 株式会社日立製作所 ログ管理計算機、及びログ管理方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002358216A (ja) * 2000-08-08 2002-12-13 System Support:Kk コンピュータ監視システム
JP2005141663A (ja) 2003-11-10 2005-06-02 Hitachi Ltd イベントログ解析支援装置、イベントログ表示方法
JP2006020984A (ja) 2004-07-06 2006-01-26 Showa Device Plant Kk 遠赤外線光テラヘルツ波の発振装置
JP2006252459A (ja) 2005-03-14 2006-09-21 Nomura Research Institute Ltd 監視装置及び監視方法
JP2006259811A (ja) 2005-03-15 2006-09-28 Nec Corp ログ作成装置及びプログラム
JP4626823B2 (ja) 2006-07-11 2011-02-09 横河電機株式会社 アラーム情報表示装置およびアラーム情報表示方法
US8499240B2 (en) * 2008-10-31 2013-07-30 Sap Ag Rule-based presentation of log messages on a graphic timeline
US9400733B2 (en) * 2010-12-01 2016-07-26 Microsoft Technology Licensing, Llc Pattern matching framework for log analysis
US8589342B2 (en) * 2011-09-16 2013-11-19 International Business Machines Corporation Log message optimization to ignore or identify redundant log messages
US9729671B2 (en) * 2014-10-05 2017-08-08 YScope Inc. Systems and processes for computer log analysis
US9552249B1 (en) * 2014-10-20 2017-01-24 Veritas Technologies Systems and methods for troubleshooting errors within computing tasks using models of log files
US10614085B2 (en) * 2016-05-26 2020-04-07 International Business Machines Corporation System impact based logging with enhanced event context
US10073767B2 (en) * 2017-01-18 2018-09-11 Pivotal Software, Inc. Trace Management
US10824497B2 (en) * 2018-08-29 2020-11-03 Oracle International Corporation Enhanced identification of computer performance anomalies based on computer performance logs
US10528454B1 (en) * 2018-10-23 2020-01-07 Fmr Llc Intelligent automation of computer software testing log aggregation, analysis, and error remediation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007249694A (ja) * 2006-03-16 2007-09-27 Nec Corp ログフォーマット変換装置、ログフォーマット変換方法、及びログフォーマット変換プログラム
JP2008041041A (ja) * 2006-08-10 2008-02-21 Hitachi Information Systems Ltd ログ通知条件定義支援装置とログ監視システムおよびプログラムとログ通知条件定義支援方法
WO2013136418A1 (ja) * 2012-03-12 2013-09-19 株式会社日立製作所 ログ管理計算機、及びログ管理方法

Also Published As

Publication number Publication date
US11232013B2 (en) 2022-01-25
US20200257610A1 (en) 2020-08-13
JP7006272B2 (ja) 2022-01-24
JPWO2017081866A1 (ja) 2018-08-30

Similar Documents

Publication Publication Date Title
JP6708219B2 (ja) ログ分析システム、方法およびプログラム
WO2017104119A1 (ja) ログ分析システム、方法およびプログラム
WO2017094262A1 (ja) ログ分析システム、方法およびプログラム
US10579461B2 (en) Log message grouping apparatus, log message grouping system, and log message grouping method
EP3165984A1 (en) An event analysis apparatus, an event analysis method, and an event analysis program
JP6787340B2 (ja) ログ分析システム、ログ分析方法及びプログラム
WO2018066661A1 (ja) ログ分析方法、システムおよび記録媒体
JPWO2018122890A1 (ja) ログ分析方法、システムおよびプログラム
US11119886B2 (en) Software analysis apparatus, software analysis method, and computer readable medium
JPWO2018069950A1 (ja) ログ分析方法、システムおよびプログラム
CN109815243B (zh) 一种文档界面化修改时的结构化存储方法和装置
WO2017081866A1 (ja) ログ分析システム、方法およびプログラム
JP2004302678A (ja) データベース検索経路表示方法
CN109359108B (zh) 报表提取方法、装置、存储介质及电子设备
WO2017094263A1 (ja) ログ分析システム、方法およびプログラム
JP6798504B2 (ja) ログ分析システム、ログ分析方法及びプログラム
JPWO2018122889A1 (ja) 異常検出方法、システムおよびプログラム
JP2007041638A (ja) シーケンス図作成装置、シーケンス図作成プログラムおよびシーケンス図作成プログラムを記録したコンピュータ読取り可能な記録媒体
CN113641523A (zh) 一种日志处理方法及装置
JP6965748B2 (ja) ログ分析システム、方法およびプログラム
EP3591481A1 (en) Device configuration management apparatus, system, and program
US20220004481A1 (en) Log analysis device, log analysis method, and program
JP2020021278A (ja) 分析方法及び計算機
JP7103392B2 (ja) 異常検出方法、システムおよびプログラム
CN114283437A (zh) 图例识别方法、装置、设备及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16863831

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017549986

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16863831

Country of ref document: EP

Kind code of ref document: A1