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

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

Info

Publication number
WO2017104119A1
WO2017104119A1 PCT/JP2016/005083 JP2016005083W WO2017104119A1 WO 2017104119 A1 WO2017104119 A1 WO 2017104119A1 JP 2016005083 W JP2016005083 W JP 2016005083W WO 2017104119 A1 WO2017104119 A1 WO 2017104119A1
Authority
WO
WIPO (PCT)
Prior art keywords
log
abnormality
output
format
determination target
Prior art date
Application number
PCT/JP2016/005083
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 US16/060,138 priority Critical patent/US20180365124A1/en
Priority to JP2017556325A priority patent/JP6780655B2/ja
Publication of WO2017104119A1 publication Critical patent/WO2017104119A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3485Performance evaluation by tracing or monitoring for I/O devices
    • 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
    • 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
    • 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/0781Error filtering or prioritizing based on a policy defined by the user or on a policy defined by a hardware/software module, e.g. according to a severity level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3041Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is an input/output interface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment

Definitions

  • the present invention relates to a log analysis system, method, and program for performing log analysis.
  • logs including event results and messages are output from a plurality of devices and programs.
  • the log analysis system detects an abnormal thing according to a predetermined standard from the outputted logs, and outputs it to a user (for example, an operator) as an abnormal log.
  • Some error logs can be ignored depending on the situation.
  • the user refers to the abnormality log displayed on the screen and inputs an ignore instruction from the screen.
  • the log analysis system automatically ignores the error log that matches the predetermined rule.
  • the technique described in Patent Document 1 accepts designation of a process to be extracted from a user, extracts an error log corresponding to the process, and defines the process in advance for the error log. Analysis is performed using the analysis rules. As a result, a log related to a specific process designated by the user can be extracted, and other logs can be ignored.
  • the context related to the error log is entangled with various factors such as the log output immediately before, performance information, alive monitoring information, etc., so it is difficult for the user to manually define the rule including the context.
  • the present invention has been made in view of the above-described problem, and provides a log analysis system, method, and program capable of determining whether or not to ignore an abnormal log based on a situation in which the abnormal log is output.
  • the purpose is to provide.
  • 1st aspect of this invention is a log analysis system, Comprising: The memory
  • a determination unit that determines to ignore the determination target log when the information indicating the determined status is similar to the information indicating the status in which the ignored log is output.
  • a log analysis method in which information indicating a situation in which a log that has been ignored based on an input from a user has been output in the past is read, and a determination target log is output. Determining whether to ignore the determination target log when the information indicating the situation is similar to the information indicating the situation where the ignored log is output.
  • a log analysis program comprising: a step of reading information indicating a situation in which a log that has been ignored based on an input from a user in the past is output to a computer; A step of determining to ignore the determination target log when information indicating the output status is similar to information indicating the status of the ignored log being output.
  • the present invention it is possible to determine whether or not to ignore the abnormality log based on the information indicating the situation in which the determination target log is output.
  • 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 log abnormality analysis unit 130, an ignorance determination unit 140, an output unit 150, and an abnormality case registration unit 160 as processing units.
  • the log analysis system 100 includes a format storage unit 171, a model storage unit 172, and an abnormality case information storage unit 173 as storage units.
  • the log input unit 110 acquires the analysis target log 10 in the analysis target period 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 log analysis system 100 is not limited to a specific type of log, and can analyze a wide variety of logs. For example, a log that records a message output from an operating system or an application such as a syslog or an event log can be used as the analysis target log 10.
  • the format determination unit 120 is a variable extraction unit, determines which format pre-recorded in the format storage unit 171 for each log included in the analysis target log 10, and selects a compatible format. To separate each log into variable and constant parts.
  • the format is a log format determined in advance based on log characteristics. The log characteristics include a property that it is easy or difficult to change between logs that are similar to each other, and a property that a character string that can be regarded as a portion that easily changes in the log is described.
  • the variable part is a changeable part in the format, and the constant part is a part that does not change in the format.
  • the value of the variable part in the input log (including numerical values, character strings, and other data) is called a variable value.
  • the variable part and the constant part are different for each format. Therefore, a part defined as a variable part in one format may be defined as a constant part in another format, and vice versa.
  • FIG. 2B is a schematic diagram of an exemplary format recorded in the format storage unit 171.
  • the format includes a character string that represents the format associated with the unique ID.
  • the format is defined as a variable part by describing a predetermined identifier in a variable part in the log, and a part other than the variable part in the log is defined as a constant part.
  • “ ⁇ variable: timestamp>” indicates a variable portion representing a time stamp
  • ⁇ variable: character string> indicates a variable portion representing an arbitrary character string
  • > Represents a variable part representing an arbitrary numerical value
  • ⁇ variable: IP> represents a variable part representing an arbitrary IP address.
  • the identifier of the variable part is 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 only by the constant part without including the variable part, or may be configured only by the variable part without including the constant part.
  • the format determination unit 120 determines that the log in the fifth line in FIG. 2A conforms to 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, “SV002” 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 in the format storage unit 171 as a text file, or may be recorded in the format storage unit 171 as a database table.
  • the log abnormality analysis unit 130 determines whether the log whose format has been determined by the format determination unit 120 is abnormal based on a model recorded in advance in the model storage unit 172.
  • a model is a definition of the normal behavior of a log.
  • the model storage unit 172 one or more models are recorded in advance.
  • the model is defined by a combination of a format regarded as normal and a variable value.
  • the model is, for example, that a numeric variable value is within a predetermined range in a certain format, or that a character string variable value is already registered in a certain format.
  • the model is not limited to this, and any definition may be used.
  • the log abnormality analysis unit 130 determines that the log is abnormal when the input log does not match any model in the model storage unit 172. On the other hand, when the input log matches any model in the model storage unit 172, the log abnormality analysis unit 130 determines that the log is a normal log.
  • the ignore determination unit 140 determines whether to ignore the abnormality log output from the log abnormality analysis unit 130 based on the abnormality case information recorded in the abnormality case information storage unit 173.
  • the abnormality case information is information indicating a situation (that is, context) in which an abnormality log that has been ignored based on input from the user in the past has been output.
  • FIG. 3A is a schematic diagram of exemplary abnormality case information.
  • the abnormal case information includes a format ID, which is a format identifier, and a variable value applied to the format, which are associated with the abnormal case ID, which is a unique identifier.
  • the format ID and the variable value are information included in the abnormality log itself that is determined by the ignore determination unit 140.
  • the format ID indicates which format the abnormality log corresponds to, and the variable value indicates a specific variable value that the abnormality log has in the format.
  • the abnormality case information includes the immediately preceding sequence, the CPU usage rate, and the stop device associated with the abnormality case ID.
  • the immediately preceding sequence, the CPU usage rate, and the stop device are information on the environment in which the abnormality log to be determined by the ignore determination unit 140 is output.
  • the immediately preceding sequence is sequence information and is a list of format IDs of logs output within a predetermined time (for example, within 5 minutes) before the time when the abnormality log was output.
  • a sequence is a permutation or combination of format IDs in the list.
  • the abnormality case information in FIG. 3A indicates that logs with format IDs 039, 585, and 585 appear in order as an immediately preceding sequence before the abnormality log.
  • the sequence information does not include the format ID of the abnormality log itself, but may include it.
  • the sequence information is not limited to the log before the time when the abnormality log is output, and may be acquired from logs within a predetermined time before and after the time. Further, the sequence information is not limited to logs within a predetermined time, and may be acquired from a predetermined number (for example, three) of logs.
  • the CPU usage rate is performance information, and is the CPU usage rate of the device related to the abnormality log at the time when the abnormality log is output.
  • the abnormality case information in FIG. 3A indicates that the CPU usage rate at the time when the abnormality log is output is 37%.
  • a device (server, network device, virtual machine, etc.) related to the abnormality log is, for example, a device that outputs an abnormality log or a device connected to a device that outputs an abnormality log.
  • an average value of CPU usage rates of a plurality of devices may be used as a CPU usage rate, or a list of CPU usage rates of a plurality of devices may be used.
  • the performance information is not limited to the CPU usage rate, and any information related to the performance of the apparatus, such as a memory usage rate, a network communication amount, or a combination thereof, may be used.
  • Stop device is life / death monitoring information, and is a list of devices or programs that are stopped at the time when the error log is output.
  • the abnormal case information in FIG. 3A indicates that the apparatus having the identifier of SV003 (here, the server name) is stopped.
  • the life and death monitoring information is not limited to the stop device, and any information related to the operating state of the device or program, such as a list of devices or programs being executed, may be used.
  • the target of the alive monitoring information may be any device or program such as a device connected to the device via a wire or a network, a network device connecting the devices, a virtual machine being executed, or a program.
  • the abnormal case information may include the format appearance ratio.
  • the appearance ratio of the format is the ratio of the format ID of the log output within a predetermined time (for example, within 5 minutes) based on the time when the abnormal log was output.
  • the appearance ratio of the format may or may not include the abnormality log itself.
  • the appearance ratio of the format in which the format ID of 039 is about 33% and the format ID of 585 is about 66% within 5 minutes from the time when the abnormality log is output is calculated. Can do.
  • the abnormal case information may include a sequence appearance ratio.
  • the appearance ratio of the sequence is a ratio of the log sequence (format ID permutation or combination) output within a predetermined time (for example, within 5 minutes) based on the time when the abnormality log was output.
  • the appearance ratio of the format may or may not include the abnormality log itself. For example, in FIG. 3A, the sequence including the format IDs of 039 and 585 in order within 5 minutes from the time when the abnormality log is output is 50%, and the sequence including the format IDs of 585 and 585 is 50%. It is possible to calculate the appearance ratio of a sequence that exists.
  • Exceptional case information is not limited to all of these pieces of information, and at least some of these pieces of information may be used.
  • the abnormal case information is generated based on a situation in which an abnormal log that has been ignored based on an input from the user in the past is output by the abnormal case registration unit 160 described later, and is recorded in the abnormal case information storage unit 173.
  • the ignorance determination unit 140 can determine whether or not to automatically ignore based on the situation (context) in which the abnormality log is output.
  • the ignore determination unit 140 collects information (referred to as context information) indicating a situation in which a determination target abnormality log is output.
  • FIG. 3B is a schematic diagram of exemplary context information.
  • the item of context information corresponds to the item of abnormality case information generated from the past abnormality log described above.
  • the ignore determination unit 140 collects context information from a device that outputs an abnormality log and a device related to the abnormality log.
  • the context information according to the present embodiment includes an abnormality log as a determination target and a log (referred to as a previous log) output within a predetermined time (for example, within 5 minutes) before the time when the abnormality log is output. .
  • the immediately preceding log is not limited to a log before the time when the abnormality log is output, and may be a log within a predetermined time before and after the time.
  • the format ID of the format determined by the format determination unit 120 is appended to the end of each log for reference, but the format ID itself is not included in the log.
  • the context information according to the present embodiment includes the CPU usage rate of the device related to the abnormality log at the time when the abnormality log is output, and the stop device at the time.
  • the ignore determination unit 140 determines which abnormality case information recorded in the abnormality case information storage unit 173 is similar to the context information generated from the abnormality log to be determined. In the present embodiment, the ignore determination unit 140 determines that the context information and the abnormality case information are similar when all of the following conditions (1) to (5) are satisfied.
  • the format ID of the abnormality log of the context information matches the format ID of the abnormality case information. Specifically, the ignore determination unit 140 determines that the format ID of the abnormality log of the context information is the format of the abnormality case information. When it is the same as the ID, it is determined that they match. (2) Each variable value in the context information abnormality log is similar to each variable value in the abnormality case information. Specifically, the ignore determination unit 140 determines that there is an abnormality in the context information when the variable value is a character string.
  • variable value in the log is based on the variable value of the abnormal case information as a standard (for example, a character other than the last character matches or is defined by a combination of a constant character string and a changing number) If they match, it is determined that they are similar.
  • the ignore determination unit 140 has a variable value in the abnormality log of the context information within a predetermined range (for example, ⁇ 10% to + 10%) based on the variable value of the abnormality case information. In the case, it is determined that they are similar.
  • the immediately preceding log of context information matches the immediately preceding sequence of abnormality case information.
  • the ignore determination unit 140 determines that the permutation or combination of the format IDs of the immediately preceding context information log is immediately before the abnormal case information. When the sequence IDs are the same as the permutations or combinations of the format IDs, it is determined that they match. Note that the ignorance determination unit 140 may determine that not all of the immediately preceding log of context information but a part of the log is identical to the immediately preceding sequence. (4) The CPU usage rate of the context information is similar to the CPU usage rate of the abnormal case information. Specifically, the ignore determination unit 140 determines that the CPU usage rate of the context information is the CPU usage rate of the abnormal case information. When the values are within a predetermined range (for example, ⁇ 10% to + 10%) as a reference, it is determined that they are similar.
  • a predetermined range for example, ⁇ 10% to + 10%
  • the ignore determination unit 140 determines that at least a part of the context information stop device is the same as the abnormal case information stop device. If it is, it is determined that they are similar. Note that the ignorance determination unit 140 may determine that all of them are the same as the stop device of the abnormality case information instead of a part of the stop devices of the context information.
  • the ignorance determination unit 140 may determine that the context information and the abnormality case information are similar when a part of all the conditions (1) to (5) is satisfied. Further, instead of or in addition to the conditions (1) to (5), the appearance ratio of the above format or the appearance ratio of the sequence may be used as a condition.
  • the ignore determination unit 140 ignores the abnormality log. Ignoring the abnormality log means that the abnormality log is not output from the output unit 150 or the like, and no user action is required. On the other hand, if the ignorance determination unit 140 determines that the context information generated from the abnormality log to be determined is not similar to any abnormality case information recorded in the abnormality case information storage unit 173, Enter the error log.
  • the output unit 150 outputs an abnormality log determined by the ignore determination unit 140 as not similar to any abnormality case information.
  • the output unit 150 outputs an abnormality log to the display device 20, and the display device 20 displays the abnormality log as a corresponding input screen image for the user.
  • the output unit 150 may output an alert by generating a sound or light together with the abnormality log or by displaying a predetermined message on the display device 20.
  • the display device 20 includes a display unit such as a liquid crystal display for displaying images and a CRT (Cathode Ray Tube) display.
  • the display device 20 includes input devices such as a keyboard, a mouse, and a touch panel, and receives input from the user. Then, the display device 20 inputs the correspondence content for each abnormality log input by the user to the log analysis system 100.
  • FIG. 4 is a schematic diagram showing an exemplary correspondence input screen A using the display device 20.
  • the correspondence input screen A shown in FIG. 4 includes an abnormality log A1 output from the log abnormality analysis unit 130, a selection box A2 for designating correspondence contents for each abnormality log A1, and a setting button A3 for registering the selected contents.
  • the selection box A2 is, for example, “ignore” indicating that the abnormal log A1 is ignored, “corresponding completed” indicating that some correspondence has been performed on the abnormal log A1, and determination of the correspondence as the content of the abnormality log A1 Includes “pending" to indicate that has not yet been done.
  • the user uses the input device to select the corresponding contents on the selection box A2 for each abnormality log A1, and then presses the setting button A3. Thereafter, the log analysis system 100 records the correspondence content selected on the selection box A2 in association with each abnormality log A1. Further, when the correspondence selected in the selection box A2 indicates that the abnormality log A1 is ignored, the abnormality case registration unit 160 described later generates abnormality case information based on the abnormality log A1, and the abnormality case Register in the information storage unit 173.
  • the correspondence input screen A shown in FIG. 4 is an example, and any method may be used as long as the user can input the correspondence contents for the abnormality log.
  • the abnormality case registration unit 160 generates abnormality case information from the abnormality log determined to be ignored by the user, and records it in the abnormality case information storage unit 173. Specifically, the abnormality case registration unit 160 first reads the correspondence content input by the user using the input device with respect to the abnormality log to be determined. In the case where the correspondence content input by the user indicates that the abnormality log to be determined is ignored, the abnormality case registration unit 160 uses the same method as the above-described ignorance determination unit 140 to perform context information on the abnormality log to be determined. To collect. The abnormality case registration unit 160 generates abnormality case information based on the collected context information and registers it in the abnormality case information storage unit 173.
  • the abnormality case ID of the abnormality case information is generated by acquiring an arbitrary character string or numerical value not registered in the abnormality case information storage unit 173.
  • the format ID and variable value of the abnormality case information are generated by extracting the format ID and variable value (however, excluding the time stamp here) from the abnormality log of the context information using the determination result by the format determination unit 120.
  • the immediately preceding sequence of abnormal case information is generated by extracting the format ID from the immediately preceding log of context information using the determination result by the format determining unit 120.
  • the CPU usage rate and the stop device of the abnormality case information are the same as the CPU usage rate and the stop device of the context information.
  • the method of generating the abnormal case information based on the context information is not limited to these, and any rules such as excluding values, converting values, and patterning values may be used.
  • the abnormality case registration unit 160 may select abnormality case information based on an input operation by the user as described below. In the case where the correspondence content of ignoring the abnormality log is input by the user on the correspondence input screen A described above, the abnormality case registration unit 160 first generates temporary abnormality case information based on the abnormality log. Next, the abnormality case registration unit 160 presents temporary abnormality case information to the user via the display device 20.
  • FIG. 5 is a schematic diagram illustrating an exemplary abnormality case information selection screen B using the display device 20.
  • the abnormal case information selection screen B shown in FIG. 5 includes the abnormal case information B1 generated by the abnormal case registration unit 160 and each piece of information included in the abnormal case information B1 (abnormality log, immediately preceding log, performance information, and alive monitoring information).
  • the check box B2 When the check box B2 is turned on, the corresponding information is selected, and when the check box B2 is turned off, the corresponding information is deselected.
  • the user uses the check box B2 to select information as a basis for determining the corresponding content on the abnormality case information selection screen B, and presses the setting button B3. Thereafter, the abnormality case registration unit 160 registers the abnormality case information selected based on the user input in the abnormality case information storage unit 173. For example, when only the previous log is selected from the abnormality case information, the abnormality case registration unit 160 may delete other information that has not been selected, such as performance information and life / death monitoring information, from the abnormality case information. Alternatively, the abnormality case registration unit 160 may define the other case information in the abnormality case information so that the other information is not used as a condition for similarity determination when the ignore determination unit 140 collates with a past abnormality case.
  • the abnormal case information selection screen B shown in FIG. 5 is an example, and any method may be used as long as the user can input the selection contents of the abnormal case information.
  • a check box B2 may be provided for each variable value included in the abnormality log, and selection by the user may be accepted. Further, a check box B2 may be provided for each log included in the immediately preceding log, and selection by the user may be accepted.
  • FIG. 6 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 executes the program recorded in the storage device 103 to thereby execute the log input unit 110, the format determination unit 120, the log abnormality analysis unit 130, the ignore determination unit 140, the output unit 150, and the abnormality in FIG. It functions as a case registration unit 160.
  • the storage device 103 functions as the format storage unit 171, the model storage unit 172, and the abnormality case information storage unit 173 in FIG. 1.
  • 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. 7 is a diagram showing a flowchart of the log analysis method according to the present embodiment.
  • the format determination unit 120 determines which format included in the format storage unit 171 each log included in the analysis target log 10 matches, and the log abnormality analysis unit 130 analyzes the format determined. It is determined whether each log of the target log 10 is abnormal based on a model recorded in advance in the model storage unit 172 (step S101). When the input log does not match any model in the model storage unit 172, the log abnormality analysis unit 130 determines that the log is an abnormality log. On the other hand, when the input log matches any model in the model storage unit 172, the log abnormality analysis unit 130 determines that the log is a normal log.
  • the subsequent processing is performed with each of the abnormality logs acquired in step S101 as a determination target.
  • a plurality of abnormality logs may be processed in parallel, or another abnormality log may be processed after the processing of one abnormality log is completed.
  • the ignorance determination unit 140 determines whether or not the determination target abnormality log corresponds to a known abnormality case based on the abnormality case information recorded in the abnormality case information storage unit 173 (step S102). Specifically, the ignorance determination unit 140 determines that an abnormality log to be determined is present when there is a format ID that matches the format ID of the abnormality log in the abnormality case information format ID recorded in the abnormality case information storage unit 173. It is determined that it corresponds to a known abnormality case, and otherwise, it is determined that it does not correspond to a known abnormality case.
  • the abnormality case whose determination target abnormality log is known It may be determined whether or not this is true.
  • the ignore determination unit 140 collects context information of the abnormality log to be determined (step S104).
  • the context information includes the abnormality log itself, the immediately preceding log, the CPU usage rate, and the stop device.
  • the ignorance determination unit 140 is within a predetermined time (for example, from the time when the abnormal log is output among the logs whose format is determined by the format determination unit 120 (that is, the abnormal log and the normal log) (for example, What was output within 5 minutes) is acquired as the previous log.
  • the time when the abnormality log is output is acquired from, for example, the time stamp portion in the abnormality log.
  • the ignorance determination unit 140 acquires, from a performance information monitoring system (device or program) (not shown), the CPU usage rate of the device that output the abnormal log at the time when the abnormal log was output as the CPU usage rate. Further, the ignorance determination unit 140 acquires, as a stop device, a list of devices or programs that are stopped at the time when the abnormality log is output from a life and death monitoring system (device or program) (not shown).
  • the ignore determination unit 140 compares each abnormality case information recorded in the abnormality case information storage unit 173 with the context information of the abnormality log acquired in step S104 (step S105). As described above, the ignorance determination unit 140 determines whether the abnormal log of context information, the immediately preceding log, the CPU usage rate, and the stop device are predetermined for any abnormal case information recorded in the abnormal case information storage unit 173. When the condition is satisfied, it is determined that the context information of the abnormality log to be determined is similar to the abnormality case information.
  • step S105 When it is determined in step S105 that the context information of the abnormality log to be determined is similar to any abnormality case information recorded in the abnormality case information storage unit 173 (YES in step S106), the ignore determination unit 140 The determination target abnormality log is ignored (step S107). Then, the process for the abnormality log to be determined ends.
  • step S102 When it is determined in step S102 that the abnormality log to be determined does not correspond to a known abnormality case (NO in step S103), or any abnormality case information whose context information is recorded in the abnormality case information storage unit 173 in step S105 Are determined not to be similar to each other (NO in step S106), the output unit 150 outputs an abnormality log to the user using the display device 20 (step S108).
  • the user refers to the abnormality log output in step S108 and inputs the corresponding contents using the input device.
  • the log analysis system 100 performs a response according to the response content input by the user. For example, if the correspondence is “ignore”, the abnormality log is erased from the display device 20 as being ignored, and if it is “pending”, the display of the abnormality log on the display device 20 is continued. .
  • the log analysis system 100 may perform a predetermined process according to other input correspondence contents.
  • the abnormality case registration unit 160 reads the correspondence content input by the user (step S109).
  • the correspondence content read in step S109 indicates that the abnormality log is ignored (YES in step S110)
  • the abnormality case registration unit 160 collects context information of the abnormality log to be determined (step S111).
  • the abnormality case registration unit 160 generates abnormality case information based on the context information collected in step S111 and registers it in the abnormality case information storage unit 173 (step S112). Then, the process for the abnormality log to be determined ends.
  • step S109 When the correspondence content read in step S109 indicates a correspondence other than ignoring the abnormality log (NO in step S110), the process for the abnormality log to be determined ends.
  • the log analysis system 100 determines whether or not to ignore based on the context information of the abnormality log to be determined. Therefore, the abnormality log can be automatically ignored according to the situation where the abnormality log is output. Furthermore, since the log analysis system 100 automatically generates the abnormality case information from the abnormality log ignored by the user, the abnormality case information can be easily defined from the context information related to the abnormality log.
  • FIG. 8 is a block diagram of the log analysis system 200 according to the present embodiment.
  • the log analysis system 200 includes an abnormal case selection unit 280 that is a processing unit, and a determined log storage unit 274 that is a storage unit.
  • the determined log storage unit 274 sequentially records and accumulates the logs whose format is determined by the format determining unit 120 (that is, the abnormal log and the normal log).
  • the abnormality case selection unit 280 is provided in the preceding stage of the abnormality case registration unit 160, and is input to the abnormality case registration unit 160 for generating abnormality case information based on the log recorded in the determined log storage unit 274. Select information.
  • the abnormality case selection unit 280 excludes those corresponding to format IDs that are widely generated in the logs recorded in the determined log storage unit 274 from the immediately preceding log in the context information.
  • Widely occurring format IDs are, for example, format IDs in which the number of appearances per unit time (that is, the appearance frequency) is equal to or greater than a predetermined threshold. Any other definition may be used as the definition of the widely generated format ID.
  • the abnormal case selection unit 280 excludes a case corresponding to a widely occurring sequence in the log recorded in the determined log storage unit 274 from the immediately preceding log in the context information.
  • a widely occurring sequence is, for example, a permutation or combination of a plurality of format IDs whose number of appearances per unit time is equal to or greater than a predetermined threshold. Any other definition may be used as the definition of a widely occurring sequence. Further, both the widely generated format ID and sequence may be excluded from the context information.
  • the abnormality case registration unit 160 generates abnormality case information related to the ignored abnormality log based on the context information whose contents are selected by the abnormality case selection unit 280, and registers the abnormality case information in the abnormality case information storage unit 173.
  • the abnormality case registration unit 160 Since the log format and sequence that occur widely other than when an error log is output are output regardless of the error, it does not contribute to the determination of whether or not the case is abnormal, but rather the accuracy of the determination The probability of lowering is high.
  • the abnormality case registration unit 160 generates abnormality case information from which a widely generated log format or sequence other than when an abnormality log is output is excluded. For this reason, the ignorance determination unit 140 determines whether or not the abnormality log to be determined corresponds to a past abnormality case without using information on the format or sequence of a log that has occurred widely other than when the abnormality log is output ( That is, whether or not to ignore automatically can be determined.
  • FIG. 9 is a block diagram of the log analysis system 300 according to the present embodiment.
  • the log analysis system 300 includes a common variable extraction unit 380 as a processing unit in addition to the configuration of FIG.
  • the common variable extraction unit 380 is provided before the abnormality case registration unit 160, and is input to the abnormality case registration unit 160 for generating abnormality case information based on the variable value included in the abnormality log to be determined. Sort out.
  • the common variable extraction unit 380 extracts a variable value (referred to as a common variable value) from the abnormality log to be determined based on the format determined by the format determination unit 120.
  • the common variable extraction unit 380 may use all the variable values as the common variable value, or may use some of the variable values selected based on a predetermined rule. For example, among the variable values in the abnormality log, only those relating to the constituent elements (server, network device, virtual machine, application, etc.) may be used.
  • the common variable extraction unit 380 includes, in the context information, a log including any one of the common variable values among logs output within a predetermined time (for example, within 5 minutes) before the time when the abnormality log is output.
  • Log immediately before The immediately preceding log is not limited to a log before the time when the abnormality log is output, and may be a log within a predetermined time before and after the time.
  • the common variable extraction unit 380 uses the performance information (for example, CPU usage rate) of the device that matches any of the common variable values at the time when the abnormality log is output as the performance information in the context information.
  • the common variable extraction unit 380 uses life / death monitoring information (for example, a stop device) of a device that matches one of the common variable values at the time when the abnormality log is output as life / death monitoring information in the context information.
  • the abnormality case registration unit 160 generates abnormality case information related to the ignored abnormality log based on the context information extracted by the common variable extraction unit 380, and registers the abnormality case information in the abnormality case information storage unit 173.
  • the abnormality case registration unit 160 uses only the log including variable values (common variable values) included in the abnormality log or device performance information that matches the common variable values, and alive monitoring information. To generate abnormal case information. For this reason, the ignorance determination unit 140 determines whether or not the determination target abnormality log corresponds to a past abnormality case (that is, whether or not to automatically ignore) using only information directly related to the abnormality log. can do.
  • FIG. 10 is a block diagram of a log analysis system 400 according to the present embodiment.
  • the log analysis system 400 includes a format learning unit 491 and a model learning unit 492 in addition to the configuration of FIG.
  • the format learning unit 491 creates a new format if the determination target log does not conform to any format recorded in the format storage unit 171. Record in the storage unit 171.
  • the format learning unit 491 As a first method for the format learning unit 491 to learn the format, the format learning unit 491 accumulates a plurality of logs whose formats are unknown, and a variable part that changes statistically and a constant that does not change. By separating the part, it can be defined as a new format. As a second method for the format learning unit 491 to learn the format, the format learning unit 491 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 changed as a variable part and determining the other part as a constant 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 model learning unit 492 creates a new model if the determination target log does not match any model recorded in the model storage unit 172. Record in the model storage unit 172.
  • the log abnormality analysis unit 130 determines that a log that does not match any model recorded in advance in the model storage unit 172 is an abnormality log. However, even if the log is unknown, the log may be a normal log. is there. In this case, when the user inputs an instruction that the log that does not match the model in the model storage unit 172 is a normal log via the input device, the model learning unit 492 creates a new model based on the format and variable value of the log. Is recorded in the model storage unit 172.
  • the model learning method is not limited to this, and an arbitrary learning algorithm that can newly define a model from an input log may be used.
  • the log analysis system 400 since the log analysis system 400 includes a format and model learning unit, it is possible to newly generate and record a format and model from a log including an unknown format and model.
  • FIG. 11 is a schematic configuration diagram of the log analysis systems 100, 200, 300, and 400 according to the above-described embodiments.
  • FIG. 11 shows a configuration example for the log analysis systems 100, 200, 300, and 400 to function as a device that determines whether or not to ignore a determination target abnormality log based on abnormality case information. .
  • the log analysis system 100, 200, 300, 400 includes an abnormality case information storage unit 173 as a storage unit that records information indicating a situation in which a log that has been ignored based on input from the user in the past is output, and a determination target When the information indicating the status of the output of the log is similar to the information indicating the status of the ignored log being output, the ignore determination unit as the determination unit that determines to ignore the determination target log 140.
  • a program that operates the configuration of the embodiment so as to realize the functions of the above-described embodiment (more specifically, a program that causes a computer to execute the processing illustrated in FIG. 7) is recorded on a 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 storage unit that records information indicating a situation in which a log that was ignored based on input from the user in the past was output;
  • a determination unit that determines to ignore the determination target log when the information indicating the state in which the determination target log is output is similar to the information indicating the state in which the ignored log is output;
  • a log analysis system comprising:
  • the format determination unit determines which of a plurality of predetermined formats the plurality of logs output within a predetermined time with reference to the time when the determination target log is output. Further configured, The log analysis system according to supplementary note 3, wherein the information indicating a situation in which the determination target log is output includes a permutation or a combination of the formats of the plurality of logs.
  • Appendix 5 A determination log storage unit for accumulating the log whose format is determined by the format determination unit;
  • the appendix 4 further includes a selection unit that excludes the format appearing at a frequency equal to or higher than a predetermined threshold in the log accumulated in the determined log storage unit from the permutation or combination of the formats of the plurality of logs.
  • Log analysis system
  • appendix 6 Any one of appendices 3 to 5, further comprising: an extraction unit that extracts only information including a value of the variable portion in the determination target log from information indicating a situation in which the determination target log is output.
  • an extraction unit that extracts only information including a value of the variable portion in the determination target log from information indicating a situation in which the determination target log is output.
  • Appendix 7 The log according to any one of appendices 1 to 6, wherein the information indicating the status of output of the determination target log includes at least one of device performance information and life / death monitoring information related to the determination target log. Analysis system.
  • a log analysis method comprising:

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本発明は、異常ログが出力された状況に基づいて、異常ログを無視するか否か判定することができるログ分析システム、方法およびプログラムを提供する。本発明の一実施形態に係るログ分析システム100は、過去にユーザからの入力に基づいて無視されたログが出力された状況を示す情報を記録する異常事例情報記憶部173と、判定対象のログが出力された状況を示す情報が、前記無視されたログが出力された状況を示す情報に類似する場合に、前記判定対象のログを無視することを判定する無視判定部140と、を備える。

Description

ログ分析システム、方法およびプログラム
 本発明は、ログの分析を行うためのログ分析システム、方法およびプログラムに関する。
 一般的にコンピュータ上で実行されるシステムにおいては、複数の装置およびプログラムから、イベントの結果やメッセージ等を含むログが出力される。ログ分析システムは、出力されたログの中から所定の基準に従って異常なものを検出し、異常ログとしてユーザ(例えば、オペレータ等)に対して出力する。
 異常ログの中には、状況に応じて無視できるものが存在する。そのような場合には、ユーザが画面上に表示された異常ログを参照し、画面から無視の指示を入力する。
 あるいは、ログ分析システムは、所定の規則に合致する異常ログを自動的に無視する。このような例として、特許文献1に記載の技術は、ユーザから抽出対象とする処理の指定を受け付け、該処理に該当するエラーログを抽出し、該エラーログに対して該処理について予め定義された解析ルールを用いて解析を行う。これにより、ユーザが指定した特定の処理に係るログを抽出し、それ以外のログについては無視することができる。
特開2002-207612号公報
 しかしながら、近年のシステムの大型化に伴ってログの数が増大しているため、ユーザが全ての異常ログを参照して個別に無視するか否かの指示を入力することは、大きな負担となる。
 また、同一の異常ログが出力されていても、その異常ログが出力された状況(すなわちコンテキスト)によって無視できる場合と無視できない場合が存在する。特許文献1の技術は単純に指定した処理に合致するか否かという規則を用いるため、本来は無視できないコンテキストで出力された異常ログであっても、無視してしまうという問題がある。
 異常ログに係るコンテキストには、直前に出力されたログ、性能情報、死活監視情報等の様々な要因が絡み合うため、ユーザが手動でコンテキストを含む規則を定義することは難しい。
 本発明は、上述の問題に鑑みて行われたものであって、異常ログが出力された状況に基づいて、異常ログを無視するか否か判定することができるログ分析システム、方法およびプログラムを提供することを目的とする。
 本発明の第1の態様は、ログ分析システムであって、過去にユーザからの入力に基づいて無視されたログが出力された状況を示す情報を記録する記憶部と、判定対象のログが出力された状況を示す情報が、前記無視されたログが出力された状況を示す情報に類似する場合に、前記判定対象のログを無視することを判定する判定部と、を備える。
 本発明の第2の態様は、ログ分析方法であって、過去にユーザからの入力に基づいて無視されたログが出力された状況を示す情報を読み出す工程と、判定対象のログが出力された状況を示す情報が、前記無視されたログが出力された状況を示す情報に類似する場合に、前記判定対象のログを無視することを判定する工程と、を備える。
 本発明の第3の態様は、ログ分析プログラムであって、コンピュータに、過去にユーザからの入力に基づいて無視されたログが出力された状況を示す情報を読み出す工程と、判定対象のログが出力された状況を示す情報が、前記無視されたログが出力された状況を示す情報に類似する場合に、前記判定対象のログを無視することを判定する工程と、を実行させる。
 本発明によれば、判定対象のログが出力された状況を示す情報に基づいて、異常ログを無視するか否か判定することができる。
第1の実施形態に係るログ分析システムのブロック図である。 第1の実施形態に係る分析対象ログの模式図である。 第1の実施形態に係るフォーマットの模式図である。 第1の実施形態に係る異常事例情報の模式図である。 第1の実施形態に係るコンテキスト情報の模式図である。 第1の実施形態に係る対応入力画面を示す模式図である。 第1の実施形態に係る異常事例情報選択画面を示す模式図である。 第1の実施形態に係るログ分析システムの概略構成図である。 第1の実施形態に係るログ分析方法のフローチャートを示す図である。 第2の実施形態に係るログ分析システムのブロック図である。 第3の実施形態に係るログ分析システムのブロック図である。 第4の実施形態に係るログ分析システムのブロック図である。 各実施形態に係るログ分析システムのブロック図である。
 以下、図面を参照して、本発明の実施形態を説明するが、本発明は本実施形態に限定されるものではない。なお、以下で説明する図面で、同機能を有するものは同一符号を付け、その繰り返しの説明は省略することもある。
(第1の実施形態)
 図1は、本実施形態に係るログ分析システム100のブロック図である。図1において、矢印は主なデータの流れを示しており、図1に示したもの以外のデータの流れがあってよい。図1において、各ブロックはハードウェア(装置)単位の構成ではなく、機能単位の構成を示している。そのため、図1に示すブロックは単一の装置内に実装されてよく、あるいは複数の装置内に別れて実装されてよい。ブロック間のデータの授受は、データバス、ネットワーク、可搬記憶媒体等、任意の手段を介して行われてよい。
 ログ分析システム100は、処理部として、ログ入力部110、フォーマット判定部120、ログ異常分析部130、無視判定部140、出力部150および異常事例登録部160を備える。また、ログ分析システム100は、記憶部として、フォーマット記憶部171、モデル記憶部172および異常事例情報記憶部173を備える。
 ログ入力部110は、分析対象の期間の分析対象ログ10を取得し、ログ分析システム100に入力する。分析対象ログ10は、ログ分析システム100の外部から取得されてよく、あるいはログ分析システム100の内部に予め記録されたものを読み出すことにより取得されてよい。分析対象ログ10は、1つ以上の装置又はプログラムから出力される1つ以上のログを含む。分析対象ログ10は、任意のデータ形式(ファイル形式)で表されたログであり、例えばバイナリデータ又はテキストデータでよい。また、分析対象ログ10はデータベースのテーブルとして記録されてよく、あるいはテキストファイルとして記録されてよい。
 図2Aは、例示的な分析対象ログ10の模式図である。本実施形態における分析対象ログ10は、装置又はプログラムから出力される1つのログを1単位とし、1つ以上の任意の数のログを含む。1つのログは1行の文字列でよく、あるいは複数行の文字列でよい。すなわち、分析対象ログ10は分析対象ログ10に含まれるログの総体を指し、ログは分析対象ログ10から抜き出された1つのログを指す。各ログは、タイムスタンプおよびメッセージ等を含む。ログ分析システム100は、特定の種類のログに限らず、広範な種類のログを分析対象とすることができる。例えば、syslog、イベントログ等のオペレーティングシステムやアプリケーションなどから出力されるメッセージを記録するログを分析対象ログ10として用いることができる。
 フォーマット判定部120は、変数抽出部であり、分析対象ログ10に含まれる各ログに対して、フォーマット記憶部171に予め記録されているいずれのフォーマットに適合するかを判定し、適合するフォーマットを用いて各ログを変数部分と定数部分とに分離する。フォーマットとは、ログの特性に基づいて予め決められた、ログの形式である。ログの特性は、互いに類似するログ間で変化しやすい又は変化しづらいという性質や、ログ中で変化しやすい部分とみなせる文字列が記載されているという性質を含む。変数部分とはフォーマットの中で変化可能な部分であり、定数部分とはフォーマットの中で変化しない部分である。入力されたログ中の変数部分の値(数値、文字列およびその他のデータを含む)を変数値と呼ぶ。変数部分および定数部分はフォーマット毎に異なる。そのため、あるフォーマットでは変数部分として定義される部分が、別のフォーマットでは定数部分として定義されることや、その逆があり得る。
 図2Bは、フォーマット記憶部171に記録される例示的なフォーマットの模式図である。フォーマットは、一意のIDに関連付けられたフォーマットを表す文字列を含む。フォーマットは、ログ中の変化可能な部分に所定の識別子を記載することによって変数部分として規定し、ログ中の変数部分以外の部分を定数部分として規定する。変数部分の識別子として、例えば「<変数:タイムスタンプ>」はタイムスタンプを表す変数部分を示し、「<変数:文字列>」は任意の文字列を表す変数部分を示し、「<変数:数値>」は任意の数値を表す変数部分を示し、「<変数:IP>」は任意のIPアドレスを表す変数部分を示す。変数部分の識別子はこれらに限られず、正規表現や、取り得る値のリスト等の任意の方法により定義されてよい。また、フォーマットは変数部分を含まずに定数部分のみによって構成されてよく、あるいは定数部分を含まずに変数部分のみによって構成されてよい。
 例えば、フォーマット判定部120は、図2Aの5行目のログを、図2BのIDが223であるフォーマットに適合すると判定する。そして、フォーマット判定部120は、判定されたフォーマットに基づいて該ログを処理し、タイムスタンプである「2015/08/17 08:29:59」、文字列である「SV002」およびIPアドレスである「192.168.1.23」を変数値として決定する。
 図2Bにおいて、フォーマットは視認性のために文字列のリストで表されているが、任意のデータ形式(ファイル形式)で表されてよく、例えばバイナリデータ又はテキストデータでよい。また、フォーマットはテキストファイルとしてフォーマット記憶部171に記録されてよく、あるいはデータベースのテーブルとしてフォーマット記憶部171に記録されてよい。
 ログ異常分析部130は、フォーマット判定部120によりフォーマットが判定されたログに対して、モデル記憶部172に予め記録されているモデルに基づいて異常か否かを判定する。モデルとは、ログの正常な振る舞いの定義である。モデル記憶部172には、1つ以上のモデルが予め記録されている。本実施形態において、モデルは、正常とみなすフォーマットと変数値との組み合わせによって定義される。モデルは、例えばあるフォーマットにおいて数値の変数値が所定の範囲内であること、あるフォーマットにおいて文字列の変数値が登録済のものであること等である。モデルはこれに限られず、任意の定義でよい。
 ログ異常分析部130は、入力されたログがモデル記憶部172中のいずれのモデルにも適合しない場合に該ログは異常であると判定する。一方、ログ異常分析部130は、入力されたログがモデル記憶部172中のいずれかのモデルに適合する場合に該ログは正常ログであると判定する。
 無視判定部140は、ログ異常分析部130から出力される異常ログに対して、異常事例情報記憶部173に記録された異常事例情報に基づいて無視するか否かの判定を行う。異常事例情報は、過去にユーザからの入力に基づいて無視された異常ログが出力された状況(すなわちコンテキスト)を示す情報である。
 図3Aは、例示的な異常事例情報の模式図である。異常事例情報は、一意の識別子である異常事例IDに関連付けられた、フォーマットの識別子であるフォーマットIDおよび該フォーマットに適用される変数値を含む。フォーマットIDおよび変数値は、無視判定部140が判定対象とする異常ログ自身が有する情報である。フォーマットIDは異常ログがいずれのフォーマットに該当するかを示し、変数値は異常ログが該フォーマット中で有する具体的な変数値を示す。
 さらに、異常事例情報は、異常事例IDに関連付けられた、直前シーケンス、CPU使用率、および停止デバイスを含む。直前シーケンス、CPU使用率および停止デバイスは、無視判定部140が判定対象とする異常ログが出力された環境の情報である。
 直前シーケンスは、シーケンス情報であり、異常ログが出力された時刻以前の所定の時間以内(例えば5分以内)に出力されたログのフォーマットIDのリストである。シーケンスは、リスト中のフォーマットIDの順列又は組み合わせである。図3Aの異常事例情報は、直前シーケンスとして異常ログの前にフォーマットIDが039、585、585のログが順に出現することを示す。ここでシーケンス情報は異常ログ自身のフォーマットIDを含まないが、含んでもよい。シーケンス情報は、異常ログが出力された時刻以前のログに限られず、該時刻を基準とした前後の所定の時間以内のログから取得されてよい。また、シーケンス情報は、所定の時間以内のログに限られず、所定の個数(例えば3個)のログから取得されてよい。
 CPU使用率は、性能情報であり、異常ログが出力された時刻における、該異常ログに関連する装置のCPUの使用率である。図3Aの異常事例情報は、異常ログが出力された時刻におけるCPU使用率が37%であることを示す。異常ログに関連する装置(サーバ、ネットワーク機器、仮想マシン等)は、例えば異常ログを出力した装置、あるいは異常ログを出力した装置に接続された装置である。異常ログに関連する装置が複数存在する場合には、CPU使用率として、複数の装置のCPU使用率の平均値を用いてよく、あるいは複数の装置のCPU使用率のリストを用いてよい。また、性能情報として、CPU使用率に限られず、メモリの使用率、ネットワークの通信量、又はそれらの組み合わせ等、装置の性能に係る任意の情報を用いてよい。
 停止デバイスは、死活監視情報であり、異常ログが出力された時刻に停止中の装置又はプログラムのリストである。図3Aの異常事例情報は、SV003の識別子(ここではサーバ名)を有する装置が停止中であることを示す。死活監視情報として、停止デバイスに限られず、実行中の装置又はプログラムのリスト等、装置又はプログラムの稼動状態に係る任意の情報を用いてよい。死活監視情報の対象は、装置に配線又はネットワークを介して接続されている装置、装置間を接続するネットワーク機器、実行中の仮想マシン又はプログラム等の任意の装置又はプログラムでよい。
 また、異常事例情報は、フォーマットの出現比率を含んでよい。フォーマットの出現比率は、異常ログが出力された時刻を基準とした所定の時間以内(例えば5分以内)に出力されたログのフォーマットIDの割合である。フォーマットの出現比率は異常ログ自身を含んでよく、又は含まなくてよい。例えば図3Aでは、異常ログが出力された時刻から遡って5分以内における、039のフォーマットIDが約33%であり、585のフォーマットIDが約66%であるというフォーマットの出現比率を算出することができる。
 また、異常事例情報は、シーケンスの出現比率を含んでよい。シーケンスの出現比率は、異常ログが出力された時刻を基準とした所定の時間以内(例えば5分以内)に出力されたログのシーケンス(フォーマットIDの順列又は組み合わせ)の割合である。フォーマットの出現比率は異常ログ自身を含んでよく、又は含まなくてよい。例えば図3Aでは、異常ログが出力された時刻から遡って5分以内における、039、585のフォーマットIDを順に含むシーケンスが50%であり、585、585のフォーマットIDを順に含むシーケンスが50%であるというシーケンスの出現比率を算出することができる。
 異常事例情報として、これらの情報の全てに限らず、これらの情報のうち少なくとも一部が用いられてよい。
 異常事例情報は、後述する異常事例登録部160によって、過去にユーザからの入力に基づいて無視された異常ログが出力された状況に基づいて生成され、異常事例情報記憶部173に記録される。無視判定部140は、このような異常事例情報を用いることによって、異常ログが出力される状況(コンテキスト)に基づいて自動的に無視するか否かの判定を行うことができる。
 無視判定部140は、判定対象の異常ログが出力される状況を示す情報(コンテキスト情報という)を収集する。図3Bは、例示的なコンテキスト情報の模式図である。コンテキスト情報の項目は、上述した過去の異常ログから生成された異常事例情報の項目に対応している。無視判定部140は、異常ログを出力する装置、および異常ログに関連する装置から、コンテキスト情報を収集する。
 本実施形態に係るコンテキスト情報は、判定対象である異常ログと、該異常ログが出力された時刻以前の所定の時間以内(例えば5分以内)に出力されたログ(直前ログという)とを含む。直前ログは、異常ログが出力された時刻以前のログに限られず、該時刻を基準とした前後の所定の時間以内のログでもよい。なお、各ログの末尾には参考のために括弧書きでフォーマット判定部120によって判定されたフォーマットのフォーマットIDが付記されているが、フォーマットID自体はログに含まれない。さらに、本実施形態に係るコンテキスト情報は、異常ログが出力された時刻における該異常ログに関連する装置のCPU使用率、および該時刻における停止デバイスを含む。
 無視判定部140は、判定対象の異常ログから生成したコンテキスト情報が、異常事例情報記憶部173に記録されたいずれの異常事例情報に類似するかを判定する。本実施形態において、無視判定部140は、以下の(1)~(5)の条件が全て満たされる場合に、コンテキスト情報と異常事例情報とが類似していることを判定する。
(1)コンテキスト情報の異常ログのフォーマットIDと、異常事例情報のフォーマットIDとが合致すること
 具体的には、無視判定部140は、コンテキスト情報の異常ログのフォーマットIDが、異常事例情報のフォーマットIDと同一である場合に、合致していると判定する。
(2)コンテキスト情報の異常ログ中の各変数値と、異常事例情報の各変数値とが類似すること
 具体的には、無視判定部140は、変数値が文字列のとき、コンテキスト情報の異常ログ中の変数値が、異常事例情報の変数値を基準として所定の規則(例えば末尾の1文字以外が一致すること、あるいは一定の文字列と変化する数字の組み合わせで定義されていること)に合致している場合に、類似していると判定する。また、無視判定部140は、変数値が数値のとき、コンテキスト情報の異常ログ中の変数値が、異常事例情報の変数値を基準として所定の範囲内(例えば-10%~+10%)である場合に、類似していると判定する。
(3)コンテキスト情報の直前ログが、異常事例情報の直前シーケンスに合致すること
 具体的には、無視判定部140は、コンテキスト情報の直前ログのフォーマットIDの順列又は組み合わせが、異常事例情報の直前シーケンスのフォーマットIDの順列又は組み合わせと同一である場合に、合致していると判定する。なお、無視判定部140は、コンテキスト情報の直前ログの全てではなく、一部が直前シーケンスと同一である場合に合致していると判定してもよい。
(4)コンテキスト情報のCPU使用率と、異常事例情報のCPU使用率とが類似すること
 具体的には、無視判定部140は、コンテキスト情報のCPU使用率が、異常事例情報のCPU使用率を基準として所定の範囲内(例えば-10%~+10%)である場合に、類似していると判定する。
(5)コンテキスト情報の停止デバイスが、異常事例情報の停止デバイスに類似すること
 具体的には、無視判定部140は、コンテキスト情報の停止デバイスの少なくとも一部が、異常事例情報の停止デバイスと同一である場合に、類似していると判定する。なお、無視判定部140は、コンテキスト情報の停止デバイスの一部ではなく、全てが異常事例情報の停止デバイスと同一である場合に類似していると判定してもよい。
 無視判定部140は、(1)~(5)の条件の全てではなく、一部が満たされる場合に、コンテキスト情報と異常事例情報とが類似していることを判定してもよい。また、(1)~(5)の条件に代えて又は加えて、上述のフォーマットの出現比率又はシーケンスの出現比率を条件として用いてもよい。
 無視判定部140は、判定対象の異常ログから生成したコンテキスト情報が、異常事例情報記憶部173に記録されたいずれかの異常事例情報に類似すると判定した場合に、該異常ログを無視する。異常ログを無視することは、出力部150からの異常ログの出力等を行わず、ユーザによる対応を求めないことである。一方、無視判定部140は、判定対象の異常ログから生成したコンテキスト情報が、異常事例情報記憶部173に記録されたいずれの異常事例情報にも類似しないと判定した場合に、出力部150に該異常ログを入力する。
 出力部150は、無視判定部140によっていずれの異常事例情報にも類似しないと判定された異常ログの出力を行う。本実施形態において、出力部150は表示装置20に異常ログを出力し、表示装置20はユーザに向けて異常ログを対応入力画面画像として表示する。出力部150は、異常ログとともに、音や光を発生すること、あるいは表示装置20上での所定のメッセージを表示することによってアラートを出力してもよい。
 表示装置20は、画像を表示するための液晶ディスプレイ、CRT(Cathode Ray Tube)ディスプレイ等の表示部を備える。また、表示装置20は、キーボード、マウス、タッチパネル等の入力装置を備え、ユーザからの入力を受け付ける。そして、表示装置20は、ユーザにより入力された各異常ログに対する対応内容をログ分析システム100に入力する。
 図4は、表示装置20を用いる例示的な対応入力画面Aを示す模式図である。図4に示す対応入力画面Aは、ログ異常分析部130から出力された異常ログA1と、各異常ログA1に対する対応内容を指定する選択ボックスA2と、選択した内容を登録するための設定ボタンA3とを含む。選択ボックスA2は、異常ログA1に対する対応内容として、例えば異常ログA1を無視することを示す「無視」、異常ログA1に対して何らかの対応を行ったことを示す「対応済」、および対応の判断をまだ行っていないことを示す「保留」を含む。
 ユーザは、入力装置を用いて、各異常ログA1に対して選択ボックスA2上で対応内容を選択した後、設定ボタンA3を押下する。その後、ログ分析システム100は、選択ボックスA2上で選択された対応内容を各異常ログA1に関連付けて記録する。さらに、選択ボックスA2上で選択された対応内容が、異常ログA1を無視することを示す場合に、後述する異常事例登録部160は該異常ログA1に基づいて異常事例情報を生成し、異常事例情報記憶部173に登録する。
 図4に示す対応入力画面Aは一例であり、ユーザが異常ログに対する対応内容を入力できれば、いずれの方法を用いてもよい。
 異常事例登録部160は、ユーザによって無視すると判断された異常ログから異常事例情報を生成し、異常事例情報記憶部173に記録する。具体的には、まず異常事例登録部160は、判定対象の異常ログに対して、ユーザが入力装置を用いて入力した対応内容を読み取る。ユーザにより入力される対応内容が判定対象の異常ログを無視することを示す場合に、異常事例登録部160は、上述の無視判定部140と同様の方法で、判定対象の異常ログに係るコンテキスト情報を収集する。異常事例登録部160は、収集されたコンテキスト情報に基づいて、異常事例情報を生成し、異常事例情報記憶部173に登録する。
 例として、異常事例登録部160が図3Bに示すコンテキスト情報に基づいて図3Aに示す異常事例情報を生成する方法を以下に説明する。異常事例情報の異常事例IDは、異常事例情報記憶部173に未登録の任意の文字列又は数値を取得することにより生成される。異常事例情報のフォーマットIDおよび変数値は、フォーマット判定部120による判定結果を用いて、コンテキスト情報の異常ログからフォーマットIDおよび変数値(ただし、ここではタイムスタンプを除外)を抽出することによって生成される。異常事例情報の直前シーケンスは、フォーマット判定部120による判定結果を用いて、コンテキスト情報の直前ログからフォーマットIDを抽出することによって生成される。異常事例情報のCPU使用率および停止デバイスは、コンテキスト情報のCPU使用率および停止デバイスと同一である。コンテキスト情報に基づいて異常事例情報を生成する方法は、これらに限られず、値を除外すること、値を変換すること、値をパターン化すること等、任意の規則を用いてよい。
 また、異常事例登録部160は、下記の通りユーザによる入力操作に基づいて異常事例情報を選択してもよい。上述の対応入力画面Aにおいてユーザによって異常ログを無視するという対応内容が入力された場合、異常事例登録部160は、まず、該異常ログに基づき、仮の異常事例情報を生成する。次に、異常事例登録部160は、表示装置20を介して、ユーザに対して仮の異常事例情報を提示する。図5は、表示装置20を用いる例示的な異常事例情報選択画面Bを示す模式図である。図5に示す異常事例情報選択画面Bは、異常事例登録部160により生成された異常事例情報B1と、異常事例情報B1に含まれる各情報(異常ログ、直前ログ、性能情報および死活監視情報)について対応内容を決定する根拠とした情報か否かを選択するチェックボックスB2と、選択した内容を登録するための設定ボタンB3とを含む。チェックボックスB2がオンになっている場合には対応する情報が選択されており、チェックボックスB2がオフになっている場合には対応する情報の選択が解除されていることを示す。
 ユーザは、異常事例情報選択画面Bにおいて対応内容を決定する根拠とした情報を、チェックボックスB2を用いて選択し、設定ボタンB3を押下する。その後、異常事例登録部160は、ユーザの入力に基づいて選択された異常事例情報を異常事例情報記憶部173に登録する。例えば、異常事例登録部160は、異常事例情報のうち直前ログのみが選択された場合、性能情報や死活監視情報などの選択されなかったその他の情報を、異常事例情報から削除してもよい。あるいは、異常事例登録部160は、無視判定部140が過去の異常事例と照合を行う際に、前記その他の情報を類似判定の条件としないように異常事例情報中に定義してもよい。
 図5に示す異常事例情報選択画面Bは一例であり、ユーザが異常事例情報の選択内容を入力できれば、いずれの方法を用いてもよい。例えば、異常ログに含まれる各変数値についてチェックボックスB2を設け、ユーザによる選択を受け付けてもよい。また、直前ログに含まれる各ログについてチェックボックスB2を設け、ユーザによる選択を受け付けてもよい。
 図6は、本実施形態に係るログ分析システム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および異常事例登録部160として機能する。また、本実施形態において記憶装置103は、図1のフォーマット記憶部171、モデル記憶部172および異常事例情報記憶部173として機能する。
 ログ分析システム100は、図6に示す具体的な構成に限定されない。ログ分析システム100は、1つの装置に限られず、2つ以上の物理的に分離した装置が有線又は無線で接続されることにより構成されていてもよい。ログ分析システム100に含まれる各部は、それぞれ電気回路構成により実現されていてもよい。ここで、電気回路構成とは、単一のデバイス、複数のデバイス、チップセット又はクラウドを概念的に含む文言である。
 また、ログ分析システム100の少なくとも一部がSaaS(Software as a Service)形式で提供されてよい。すなわち、ログ分析システム100を実現するための機能の少なくとも一部が、ネットワーク経由で実行されるソフトウェアによって実行されてよい。
 図7は、本実施形態に係るログ分析方法のフローチャートを示す図である。まず、フォーマット判定部120は分析対象ログ10に含まれる各ログがフォーマット記憶部171に予め記録されているいずれのフォーマットに合致するかを判定し、ログ異常分析部130はフォーマットが判定された分析対象ログ10の各ログに対してモデル記憶部172に予め記録されているモデルに基づいて異常か否かを判定する(ステップS101)。ログ異常分析部130は、入力されたログがモデル記憶部172中のいずれのモデルにも適合しない場合に該ログは異常ログであると判定する。一方、ログ異常分析部130は、入力されたログがモデル記憶部172中のいずれかのモデルに適合する場合に該ログは正常ログであると判定する。
 以降の処理は、ステップS101で取得された異常ログの1つ1つを判定対象として行われる。複数の異常ログが並行して処理されてよく、あるいは1つの異常ログの処理が終了した後に別の1つの異常ログが処理されてよい。
 無視判定部140は、異常事例情報記憶部173に記録された異常事例情報に基づいて、判定対象の異常ログが、既知の異常事例に該当するか否かを判定する(ステップS102)。具体的には、無視判定部140は、異常事例情報記憶部173に記録された異常事例情報のフォーマットIDの中に異常ログのフォーマットIDと一致するものが存在する場合に判定対象の異常ログは既知の異常事例に該当すると判定し、そうでない場合に既知の異常事例に該当しないと判定する。また、フォーマットIDが一致するか否かに加えて、異常ログ中の変数値が異常事例情報中の変数値に一致又は類似するか否かに基づいて、判定対象の異常ログが既知の異常事例に該当するか否かを判定してもよい。
 ステップS102において判定対象の異常ログが既知の異常事例に該当すると判定された場合には(ステップS103のYES)、無視判定部140は、判定対象の異常ログのコンテキスト情報の収集を行う(ステップS104)。本実施形態において、コンテキスト情報は、異常ログ自身、直前ログ、CPU使用率、および停止デバイスを含む。具体的には、無視判定部140は、フォーマット判定部120によってフォーマットが判定されたログ(すなわち、異常ログおよび正常ログ)のうち、異常ログが出力された時刻から遡って所定の時間以内(例えば5分以内)に出力されたものを直前ログとして取得する。異常ログが出力された時刻は、例えば異常ログ中のタイムスタンプの部分から取得される。また、無視判定部140は、不図示の性能情報監視システム(装置又はプログラム)から、異常ログが出力された時刻における異常ログを出力した装置のCPUの使用率をCPU使用率として取得する。また、無視判定部140は、不図示の死活監視システム(装置又はプログラム)から、異常ログが出力された時刻における停止中の装置又はプログラムのリストを、停止デバイスとして取得する。
 次に、無視判定部140は、異常事例情報記憶部173に記録された各異常事例情報と、ステップS104で取得された異常ログのコンテキスト情報との比較を行う(ステップS105)。上述のように、無視判定部140は、コンテキスト情報の異常ログ、直前ログ、CPU使用率、および停止デバイスが、異常事例情報記憶部173に記録されたいずれかの異常事例情報に対して所定の条件を満たす場合に、判定対象の異常ログのコンテキスト情報は、該異常事例情報と類似すると判定する。
 ステップS105において判定対象の異常ログのコンテキスト情報が、異常事例情報記憶部173に記録されたいずれかの異常事例情報に類似すると判定された場合には(ステップS106のYES)、無視判定部140は、判定対象の異常ログを無視する(ステップS107)。そして、判定対象の異常ログに対する処理は終了する。
 ステップS102において判定対象の異常ログが既知の異常事例に該当しないと判定された場合(ステップS103のNO)、あるいはステップS105においてコンテキスト情報が異常事例情報記憶部173に記録されたいずれの異常事例情報にも類似しないと判定された場合には(ステップS106のNO)、出力部150は、表示装置20を用いて、ユーザに対して異常ログを出力する(ステップS108)。
 ユーザはステップS108で出力された異常ログを参照し、入力装置を用いて対応内容を入力する。ログ分析システム100は、ユーザから入力された対応内容に応じた対応を行う。例えば、対応内容が「無視」であればその異常ログを無視するものとして表示装置20上からその異常ログを消去し、「保留」であれば表示装置20上のその異常ログの表示を継続する。また、ログ分析システム100は、その他入力された対応内容に応じて所定の処理を行ってよい。
 次に、異常事例登録部160は、ユーザから入力された対応内容を読み取る(ステップS109)。そして、ステップS109で読み取られた対応内容が異常ログの無視を示す場合に(ステップS110のYES)、異常事例登録部160は、判定対象の異常ログのコンテキスト情報の収集を行う(ステップS111)。異常事例登録部160は、ステップS111で収集されたコンテキスト情報に基づいて、異常事例情報を生成し、異常事例情報記憶部173に登録する(ステップS112)。そして、判定対象の異常ログに対する処理は終了する。
 ステップS109で読み取られた対応内容が異常ログの無視以外の対応を示す場合に(ステップS110のNO)、判定対象の異常ログに対する処理は終了する。
 一般的に、同一の種類の異常ログが出力されていても、その異常ログが出力された状況、すなわちコンテキストによって無視できる場合と無視できない場合が存在する。本実施形態に係るログ分析システム100は、判定対象の異常ログのコンテキスト情報に基づいて、無視するか否かを決定する。そのため、異常ログが出力された状況に応じて、異常ログを自動的に無視することができる。さらに、ログ分析システム100は、ユーザにより無視された異常ログから異常事例情報を自動的に生成するため、異常ログに係るコンテキスト情報から異常事例情報を容易に定義することができる。
(第2の実施形態)
 本実施形態では、異常事例情報を生成する際に、異常ログの出力時以外にも広く発生しているログやシーケンスを異常事例情報の元となるコンテキスト情報から除外する。これにより、異常ログが既知の異常事例か否かの判定に貢献しない情報を用いずに判定を行うことができ、判定の精度を向上させることができる。
 図8は、本実施形態に係るログ分析システム200のブロック図である。ログ分析システム200は、図1の構成に加えて、処理部である異常事例選別部280、および記憶部である判定済ログ記憶部274を備える。
 判定済ログ記憶部274は、フォーマット判定部120によりフォーマットが判定されたログ(すなわち、異常ログおよび正常ログ)を逐次記録し、蓄積する。異常事例選別部280は、異常事例登録部160の前段に設けられ、判定済ログ記憶部274に記録されたログに基づいて、異常事例情報の生成のために異常事例登録部160に入力される情報を選別する。
 具体的には、異常事例選別部280は、コンテキスト情報中の直前ログから、判定済ログ記憶部274に記録されたログにおいて広く発生しているフォーマットIDに該当するものを除外する。広く発生しているフォーマットIDは、例えば単位時間あたりの出現数(すなわち出現頻度)が所定の閾値以上であるフォーマットIDである。広く発生しているフォーマットIDの定義として、その他任意の定義を用いてよい。
 別の方法として、異常事例選別部280は、コンテキスト情報中の直前ログから、判定済ログ記憶部274に記録されたログにおいて広く発生しているシーケンスに該当するものを除外する。広く発生しているシーケンスは、例えば単位時間あたりの出現数が所定の閾値以上である、複数のフォーマットIDの順列又は組み合わせである。広く発生しているシーケンスの定義として、その他任意の定義を用いてよい。また、コンテキスト情報から、広く発生しているフォーマットIDおよびシーケンスの両方を除外してもよい。
 そして、異常事例登録部160は、異常事例選別部280によって内容が選別されたコンテキスト情報に基づいて、無視された異常ログに係る異常事例情報を生成し、異常事例情報記憶部173に登録する。
 異常ログの出力時以外にも広く発生しているログのフォーマットおよびシーケンスは、異常とは関係なく出力されるため、異常事例に該当するか否かの判定には貢献せず、むしろ判定の精度を低下させる蓋然性が高い。本実施形態に係るログ分析システム200において、異常事例登録部160は異常ログの出力時以外にも広く発生しているログのフォーマット又はシーケンスが除外された異常事例情報を生成する。そのため、無視判定部140は、異常ログの出力時以外にも広く発生しているログのフォーマット又はシーケンスの情報を用いずに、判定対象の異常ログが過去の異常事例に該当するか否か(すなわち、自動的に無視するか否か)を判定することができる。
(第3の実施形態)
 本実施形態では、異常事例情報を生成する際に、異常ログに含まれる変数値を含むログ、および異常ログに含まれる変数値に関連する性能情報、死活監視情報のみを用いる。これにより、判定対象の異常ログの内容に直接関係する情報のみを用いて判定を行うことができ、判定の精度を向上させることができる。
 図9は、本実施形態に係るログ分析システム300のブロック図である。ログ分析システム300は、図1の構成に加えて、処理部である共通変数抽出部380を備える。
 共通変数抽出部380は、異常事例登録部160の前段に設けられ、判定対象の異常ログに含まれる変数値に基づいて、異常事例情報の生成のために異常事例登録部160に入力される情報を選別する。
 具体的には、共通変数抽出部380は、フォーマット判定部120により判定されたフォーマットに基づいて、判定対象の異常ログから変数値(共通変数値という)を抽出する。このとき、共通変数抽出部380は、共通変数値として、全ての変数値を用いてよく、あるいは所定の規則に基づいて選択される一部の変数値を用いてよい。例えば、異常ログ中の変数値の中で、構成要素(サーバ、ネットワーク機器、仮想マシン、アプリケーション等)に係るもののみを用いてよい。
 そして、共通変数抽出部380は、異常ログが出力された時刻以前の所定の時間以内(例えば5分以内)に出力されたログのうち、共通変数値のいずれかを含むログを、コンテキスト情報中の直前ログとする。直前ログは、異常ログが出力された時刻以前のログに限られず、該時刻を基準とした前後の所定の時間以内のログでもよい。また、共通変数抽出部380は、異常ログが出力された時刻における、共通変数値のいずれかに合致する装置の性能情報(例えばCPU使用率)を、コンテキスト情報中の性能情報とする。また、共通変数抽出部380は、異常ログが出力された時刻における、共通変数値のいずれかに合致する装置の死活監視情報(例えば停止デバイス)を、コンテキスト情報中の死活監視情報とする。
 そして、異常事例登録部160は、共通変数抽出部380によって抽出されたコンテキスト情報に基づいて、無視された異常ログに係る異常事例情報を生成し、異常事例情報記憶部173に登録する。
 本実施形態に係るログ分析システム300において、異常事例登録部160は異常ログに含まれる変数値(共通変数値)を含むログ又は共通変数値に合致する装置の性能情報、死活監視情報のみを用いて、異常事例情報を生成する。そのため、無視判定部140は、異常ログに直接関係する情報のみを用いて、判定対象の異常ログが過去の異常事例に該当するか否か(すなわち、自動的に無視するか否か)を判定することができる。
(第4の実施形態)
 図10は、本実施形態に係るログ分析システム400のブロック図である。ログ分析システム400は、図1の構成に加えて、フォーマット学習部491およびモデル学習部492を備える。
 フォーマット学習部491は、フォーマット判定部120がフォーマットの判定を行う際、判定対象のログがフォーマット記憶部171に記録されているいずれのフォーマットにも適合しない場合に、新たなフォーマットを作成してフォーマット記憶部171に記録する。
 フォーマット学習部491がフォーマットを学習するための第1の方法として、フォーマット学習部491は、フォーマットが未知である複数のログを蓄積し、それらに対して統計的に変化する変数部分と変化しない定数部分とを分離することによって、新たなフォーマットとして定義することができる。フォーマット学習部491がフォーマットを学習するための第2の方法として、フォーマット学習部491は、既知の変数値のリストを読み込み、フォーマットが未知であるログの中で既知の変数値と一致する又は類似する部分を変数部分と判定し、それ以外の部分を定数部分と判定することによって、新たなフォーマットを定義することができる。既知の変数値として、値そのものを用いてよく、あるいは正規表現のようなパターンを用いてよい。フォーマットの学習方法はこれらに限られず、入力されたログに対して新たなフォーマットを定義することが可能な任意の学習アルゴリズムを用いてよい。
 モデル学習部492は、ログ異常分析部130がモデルの判定を行う際、判定対象のログがモデル記憶部172に記録されているいずれのモデルにも適合しない場合に、新たなモデルを作成してモデル記憶部172に記録する。
 通常、ログ異常分析部130はモデル記憶部172に予め記録されているいずれのモデルにも適合しないログを異常ログと判定するが、モデルが未知であるログであっても正常ログである場合がある。この場合に、ユーザは入力装置を介してモデル記憶部172のモデルに適合しないログが正常ログであるという指示を入力すると、モデル学習部492は当該ログのフォーマットおよび変数値に基づいて新たなモデルを作成し、モデル記憶部172に記録する。モデルの学習方法はこれに限られず、入力されたログから新たにモデルを定義することが可能な任意の学習アルゴリズムを用いてよい。
 以上のように、ログ分析システム400は、フォーマットおよびモデルの学習部を備えるため、未知のフォーマットおよびモデルを含むログから新たにフォーマットおよびモデルを生成し、記録することができる。
(その他の実施形態)
 図11は、上述の各実施形態に係るログ分析システム100、200、300、400の概略構成図である。図11には、ログ分析システム100、200、300、400が異常事例情報に基づいて判定対象の異常ログを無視するか否かの判定を行う装置として機能するための構成例が示されている。ログ分析システム100、200、300、400は、過去にユーザからの入力に基づいて無視されたログが出力された状況を示す情報を記録する記憶部としての異常事例情報記憶部173と、判定対象のログが出力された状況を示す情報が、前記無視されたログが出力された状況を示す情報に類似する場合に、前記判定対象のログを無視することを判定する判定部としての無視判定部140と、を備える。
 本発明は、上述の実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲において適宜変更可能である。
 上述の実施形態の機能を実現するように該実施形態の構成を動作させるプログラム(より具体的には、図7に示す処理をコンピュータに実行させるプログラム)を記録媒体に記録させ、該記録媒体に記録されたプログラムをコードとして読み出し、コンピュータにおいて実行する処理方法も各実施形態の範疇に含まれる。すなわち、コンピュータ読取可能な記録媒体も各実施形態の範囲に含まれる。また、上述のプログラムが記録された記録媒体はもちろん、そのプログラム自体も各実施形態に含まれる。
 該記録媒体としては例えばフロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、磁気テープ、不揮発性メモリカード、ROMを用いることができる。また該記録媒体に記録されたプログラム単体で処理を実行しているものに限らず、他のソフトウェア、拡張ボードの機能と共同して、OS上で動作して処理を実行するものも各実施形態の範疇に含まれる。
 上述の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
 過去にユーザからの入力に基づいて無視されたログが出力された状況を示す情報を記録する記憶部と、
 判定対象のログが出力された状況を示す情報が、前記無視されたログが出力された状況を示す情報に類似する場合に、前記判定対象のログを無視することを判定する判定部と、
 を備えるログ分析システム。
(付記2)
 ユーザにより入力された前記判定対象のログに対する対応内容を読み取り、前記対応内容が前記判定対象のログを無視することを示す場合に、前記判定対象のログが出力された状況を示す情報を、前記無視されたログが出力された状況を示す情報として前記記憶部に記録する登録部を備える、付記1に記載のログ分析システム。
(付記3)
 前記判定対象のログが、前記判定対象のログの中で変化可能な変数部分と前記判定対象のログの中で変化しない定数部分とを含む、予め決められた複数の形式のいずれに合致するか判定する形式判定部をさらに備え、
 前記判定対象のログが出力された状況を示す情報は、前記判定対象のログの前記形式、および前記判定対象のログ中の前記変数部分の値の少なくとも一方を含む、付記1又は2に記載のログ分析システム。
(付記4)
 前記形式判定部は、前記判定対象のログが出力された時刻を基準として所定の時間内に出力された複数のログが、前記予め決められた複数の形式のいずれに合致するか判定するようにさらに構成され、
 前記判定対象のログが出力された状況を示す情報は、前記複数のログの前記形式の順列又は組み合わせを含む、付記3に記載のログ分析システム。
(付記5)
 前記形式判定部により前記形式が判定されたログを蓄積する判定済ログ記憶部をさらに備え、
 前記複数のログの前記形式の順列又は組み合わせから、前記判定済ログ記憶部に蓄積されたログ中に所定の閾値以上の頻度で出現する前記形式を除外する選別部をさらに備える、付記4に記載のログ分析システム。
(付記6)
 前記判定対象のログが出力された状況を示す情報から、前記判定対象のログ中の前記変数部分の値を含む情報のみを抽出する抽出部をさらに備える、付記3~5のいずれか一項に記載のログ分析システム。
(付記7)
 前記判定対象のログが出力された状況を示す情報は、前記判定対象のログに関連する装置の性能情報および死活監視情報の少なくとも一方を含む、付記1~6のいずれか一項に記載のログ分析システム。
(付記8)
 過去にユーザからの入力に基づいて無視されたログが出力された状況を示す情報を読み出す工程と、
 判定対象のログが出力された状況を示す情報が、前記無視されたログが出力された状況を示す情報に類似する場合に、前記判定対象のログを無視することを判定する工程と、
 を備えるログ分析方法。
(付記9)
 コンピュータに、
 過去にユーザからの入力に基づいて無視されたログが出力された状況を示す情報を読み出す工程と、
 判定対象のログが出力された状況を示す情報が、前記無視されたログが出力された状況を示す情報に類似する場合に、前記判定対象のログを無視することを判定する工程と、
 を実行させるログ分析プログラム。
 この出願は、2015年12月14日に出願された日本出願特願2015-242945を基礎とする優先権を主張し、その開示の全てをここに取り込む。

 

Claims (9)

  1.  過去にユーザからの入力に基づいて無視されたログが出力された状況を示す情報を記録する記憶部と、
     判定対象のログが出力された状況を示す情報が、前記無視されたログが出力された状況を示す情報に類似する場合に、前記判定対象のログを無視することを判定する判定部と、
     を備えるログ分析システム。
  2.  ユーザにより入力された前記判定対象のログに対する対応内容を読み取り、前記対応内容が前記判定対象のログを無視することを示す場合に、前記判定対象のログが出力された状況を示す情報を、前記無視されたログが出力された状況を示す情報として前記記憶部に記録する登録部を備える、請求項1に記載のログ分析システム。
  3.  前記判定対象のログが、前記判定対象のログの中で変化可能な変数部分と前記判定対象のログの中で変化しない定数部分とを含む、予め決められた複数の形式のいずれに合致するか判定する形式判定部をさらに備え、
     前記判定対象のログが出力された状況を示す情報は、前記判定対象のログの前記形式、および前記判定対象のログ中の前記変数部分の値の少なくとも一方を含む、請求項1又は2に記載のログ分析システム。
  4.  前記形式判定部は、前記判定対象のログが出力された時刻を基準として所定の時間内に出力された複数のログが、前記予め決められた複数の形式のいずれに合致するか判定するようにさらに構成され、
     前記判定対象のログが出力された状況を示す情報は、前記複数のログの前記形式の順列又は組み合わせを含む、請求項3に記載のログ分析システム。
  5.  前記形式判定部により前記形式が判定されたログを蓄積する判定済ログ記憶部をさらに備え、
     前記複数のログの前記形式の順列又は組み合わせから、前記判定済ログ記憶部に蓄積されたログ中に所定の閾値以上の頻度で出現する前記形式を除外する選別部をさらに備える、請求項4に記載のログ分析システム。
  6.  前記判定対象のログが出力された状況を示す情報から、前記判定対象のログ中の前記変数部分の値を含む情報のみを抽出する抽出部をさらに備える、請求項3~5のいずれか一項に記載のログ分析システム。
  7.  前記判定対象のログが出力された状況を示す情報は、前記判定対象のログに関連する装置の性能情報および死活監視情報の少なくとも一方を含む、請求項1~6のいずれか一項に記載のログ分析システム。
  8.  過去にユーザからの入力に基づいて無視されたログが出力された状況を示す情報を読み出す工程と、
     判定対象のログが出力された状況を示す情報が、前記無視されたログが出力された状況を示す情報に類似する場合に、前記判定対象のログを無視することを判定する工程と、
     を備えるログ分析方法。
  9.  コンピュータに、
     過去にユーザからの入力に基づいて無視されたログが出力された状況を示す情報を読み出す工程と、
     判定対象のログが出力された状況を示す情報が、前記無視されたログが出力された状況を示す情報に類似する場合に、前記判定対象のログを無視することを判定する工程と、
     を実行させるログ分析プログラム。

     
PCT/JP2016/005083 2015-12-14 2016-12-08 ログ分析システム、方法およびプログラム WO2017104119A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US16/060,138 US20180365124A1 (en) 2015-12-14 2016-12-08 Log analysis system, log analysis method, and log analysis program
JP2017556325A JP6780655B2 (ja) 2015-12-14 2016-12-08 ログ分析システム、方法およびプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015-242945 2015-12-14
JP2015242945 2015-12-14

Publications (1)

Publication Number Publication Date
WO2017104119A1 true WO2017104119A1 (ja) 2017-06-22

Family

ID=59056210

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/005083 WO2017104119A1 (ja) 2015-12-14 2016-12-08 ログ分析システム、方法およびプログラム

Country Status (3)

Country Link
US (1) US20180365124A1 (ja)
JP (1) JP6780655B2 (ja)
WO (1) WO2017104119A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108762965A (zh) * 2018-05-22 2018-11-06 东旭集团有限公司 日志查找方法、系统及生产设备
JP2020038427A (ja) * 2018-09-03 2020-03-12 富士通株式会社 情報処理方法、情報処理装置および情報処理プログラム
WO2020075809A1 (ja) * 2018-10-11 2020-04-16 日本電信電話株式会社 情報処理装置、データ分析方法及びプログラム
CN112805687A (zh) * 2018-10-11 2021-05-14 日本电信电话株式会社 信息处理装置、异常分析方法以及程序

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6669156B2 (ja) * 2015-02-17 2020-03-18 日本電気株式会社 アプリケーション自動制御システム、アプリケーション自動制御方法およびプログラム
US10516684B1 (en) * 2016-04-21 2019-12-24 Instart Logic, Inc. Recommending and prioritizing computer log anomalies
CN111274059B (zh) * 2020-01-21 2023-10-10 浙江大华技术股份有限公司 一种从设备的软件异常处理方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008198123A (ja) * 2007-02-15 2008-08-28 Hitachi Information Systems Ltd 障害検知システム及び障害検知プログラム
JP2014106851A (ja) * 2012-11-29 2014-06-09 Fujitsu Ltd 情報処理装置、情報処理方法及びプログラム
WO2015146086A1 (ja) * 2014-03-28 2015-10-01 日本電気株式会社 ログ分析システム、障害原因分析システム、ログ分析方法、および、記録媒体

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4819014B2 (ja) * 2007-09-20 2011-11-16 株式会社日立製作所 ログ解析方法、ログ格納装置及びプログラム
WO2014196129A1 (ja) * 2013-06-03 2014-12-11 日本電気株式会社 障害分析装置、障害分析方法、および、記録媒体

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008198123A (ja) * 2007-02-15 2008-08-28 Hitachi Information Systems Ltd 障害検知システム及び障害検知プログラム
JP2014106851A (ja) * 2012-11-29 2014-06-09 Fujitsu Ltd 情報処理装置、情報処理方法及びプログラム
WO2015146086A1 (ja) * 2014-03-28 2015-10-01 日本電気株式会社 ログ分析システム、障害原因分析システム、ログ分析方法、および、記録媒体

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108762965A (zh) * 2018-05-22 2018-11-06 东旭集团有限公司 日志查找方法、系统及生产设备
JP2020038427A (ja) * 2018-09-03 2020-03-12 富士通株式会社 情報処理方法、情報処理装置および情報処理プログラム
JP7111965B2 (ja) 2018-09-03 2022-08-03 富士通株式会社 情報処理方法、情報処理装置および情報処理プログラム
JPWO2020075809A1 (ja) * 2018-10-11 2021-09-02 日本電信電話株式会社 情報処理装置、データ分析方法及びプログラム
CN112805687A (zh) * 2018-10-11 2021-05-14 日本电信电话株式会社 信息处理装置、异常分析方法以及程序
JPWO2020075801A1 (ja) * 2018-10-11 2021-09-02 日本電信電話株式会社 情報処理装置、異常分析方法及びプログラム
CN112654969A (zh) * 2018-10-11 2021-04-13 日本电信电话株式会社 信息处理装置、数据分析方法及程序
EP3798840A4 (en) * 2018-10-11 2022-03-02 Nippon Telegraph And Telephone Corporation INFORMATION PROCESSING DEVICE, DATA ANALYSIS METHOD AND PROGRAM
EP3842944A4 (en) * 2018-10-11 2022-04-27 Nippon Telegraph And Telephone Corporation INFORMATION PROCESSING DEVICE, ANOMALITY ANALYSIS METHOD AND PROGRAM
JP7103427B2 (ja) 2018-10-11 2022-07-20 日本電信電話株式会社 情報処理装置、データ分析方法及びプログラム
WO2020075809A1 (ja) * 2018-10-11 2020-04-16 日本電信電話株式会社 情報処理装置、データ分析方法及びプログラム
JP7180686B2 (ja) 2018-10-11 2022-11-30 日本電信電話株式会社 情報処理装置、異常分析方法及びプログラム
US11863574B2 (en) 2018-10-11 2024-01-02 Nippon Telegraph And Telephone Corporation Information processing apparatus, anomaly analysis method and program
US11962605B2 (en) 2018-10-11 2024-04-16 Nippon Telegraph And Telephone Corporation Information processing apparatus, data analysis method and program

Also Published As

Publication number Publication date
JP6780655B2 (ja) 2020-11-04
JPWO2017104119A1 (ja) 2018-09-27
US20180365124A1 (en) 2018-12-20

Similar Documents

Publication Publication Date Title
WO2017104119A1 (ja) ログ分析システム、方法およびプログラム
WO2017094262A1 (ja) ログ分析システム、方法およびプログラム
JP6708219B2 (ja) ログ分析システム、方法およびプログラム
JP6787340B2 (ja) ログ分析システム、ログ分析方法及びプログラム
JP5913145B2 (ja) ログ可視化装置及び方法及びプログラム
WO2018122890A1 (ja) ログ分析方法、システムおよびプログラム
WO2018069950A1 (ja) ログ分析方法、システムおよびプログラム
JP6741217B2 (ja) ログ分析システム、方法およびプログラム
CN112433705A (zh) 脚本生成方法、装置、电子设备及存储介质
JP6955676B2 (ja) ログ分析方法、システムおよび記録媒体
JP5711677B2 (ja) 監視情報分析装置及び方法
US9235423B2 (en) Availability evaluation device and availability evaluation method
JPWO2020202433A1 (ja) 情報処理装置およびapi使用履歴表示プログラム
JP6798504B2 (ja) ログ分析システム、ログ分析方法及びプログラム
CN108170838B (zh) 话题演变的可视化展现方法、应用服务器及计算机可读存储介质
JP6756378B2 (ja) 異常検出方法、システムおよびプログラム
WO2017081866A1 (ja) ログ分析システム、方法およびプログラム
CN111143325B (zh) 一种数据采集的监测方法、监测装置及可读存储介质
WO2017085921A1 (ja) ログ分析システム、方法およびプログラム
US20220004481A1 (en) Log analysis device, log analysis method, and program
US20220253529A1 (en) Information processing apparatus, information processing method, and computer readable medium
CN109522340B (zh) 一种数据统计方法、装置及设备
JP2020191137A (ja) 異常検出方法、システムおよびプログラム
CN115840772A (zh) 一种客群数据统计方法、装置、电子设备及存储介质
JP2018165897A (ja) 表示制御装置、表示制御方法、およびコンピュータプログラム

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: 16875108

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017556325

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: 16875108

Country of ref document: EP

Kind code of ref document: A1