Correction assistance server
Patent Information
- Application Number
- PCT/JP2025/006038
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-02-21
- Publication Date
- 2026-08-27
Smart Images

Figure JP2025006038_27082026_PF_FP_ABST
Abstract
Description
Correction Support Server
[0001] The present invention relates to a correction support server.
[0002] When an error occurs, a computer program outputs an error message. However, usually, just referring to the error message often does not reveal the cause or the solution. To obtain solutions such as identifying the cause and modifying the program, it takes a long time, such as analyzing peripheral data like logs based on the experience and intuition of experts. Therefore, a technique has been proposed to analyze the error content and error location based on the error code included in the error message and display it on the screen (see, for example, Patent Document 1).
[0003] Japanese Patent Application Laid-Open No. 09-297721
[0004] However, the prior art disclosed in Patent Document 1 has a problem that although it can display the error content and occurrence location clearly, it cannot know the cause of the error or the solution to the error.
[0005] The present invention has been made to solve the above problems, and the main object is to provide a correction support server capable of knowing the cause of an error and the solution to the error.
[0006] To solve the above problems, the correction support server according to the present invention extracts a suspected processing location near the time from an error message and an application log and displays it, holds the error message, its cause, and solution candidates, and displays the solution candidates according to the error that occurs.
[0007] According to the present invention, the cause of an error and the solution to the error can be known.
[0008] This is an explanatory diagram of a service provision system including a correction support server according to an embodiment. This is a block diagram of the correction support server according to an embodiment. This is an explanatory diagram showing an example of a problem location in trace information. This is an explanatory diagram showing an example of extracting the location around the time of error occurrence in the application log. This is a flowchart showing an example of conventional fault correction work. This is a flowchart showing an example of fault correction work by the correction support server according to an embodiment. This is a flowchart showing an example of conventional extraction work of the location around the time of error occurrence in the application log. This is a flowchart showing an example of extraction work of the location around the time of error occurrence in the application log by the correction support server according to an embodiment. This is a flowchart showing an example of operation when the correction support server according to an embodiment extracts the location around the time of error occurrence in the application log. This is an explanatory diagram of conventional error time extraction work. This is an explanatory diagram (1) of the extraction work of the location around the time of error occurrence by the correction support server according to an embodiment. This is an explanatory diagram (2) of the extraction work of the location around the time of error occurrence by the correction support server according to an embodiment. This is an explanatory diagram (3) of the extraction work of the location around the time of error occurrence by the correction support server according to an embodiment. This is an explanatory diagram of error resolution candidate data stored in the resolution candidate database. This is a flowchart showing an example of learning operation of suitable error resolution candidates by the correction support server according to an embodiment. This is a flowchart illustrating an example of the learning operation of a suitable application log by the correction support server according to the embodiment. This is a hardware configuration diagram showing an example of a computer that implements the functions of the correction support server according to the embodiment.
[0009] Hereinafter, embodiments of the present invention (hereinafter referred to as "these embodiments") will be described in detail with reference to the drawings. Note that each figure is merely a schematic representation to the extent necessary for a thorough understanding of the present invention. Therefore, the present invention is not limited to the illustrated examples. Furthermore, in each figure, common or similar components are denoted by the same reference numerals, and their redundant descriptions are omitted.
[0010] <Configuration of the Correction Support Server> The configuration of the correction support server 103 according to this embodiment will be described below with reference to Figures 1 and 2. Figure 1 is an explanatory diagram of the service provision system 100 including the correction support server 103 according to this embodiment. Figure 2 is a block diagram of the correction support server 103.
[0011] The correction support server 103 according to this embodiment is a device for assisting in the correction of faults such as program errors and communication errors. The correction support server 103 targets log files and extracts the portion of the log near the time the error occurred and displays it on the display unit, thereby effectively supporting the operator's correction work on the faulty portion. Furthermore, the correction support server 103 can effectively support the operator's correction work on the faulty portion by searching for error resolution candidates from the resolution candidate database 23 according to the error that occurs and displaying them on the display unit. Here, we will explain assuming that the correction support server 103 is incorporated into a service provision system 100 that provides web information to users. Furthermore, here we will explain assuming that the service provision system 100 is a system that provides distribution services such as weather forecasts.
[0012] As shown in Figure 1, the service provision system 100 comprises a Web server 101, a database server 102, and a correction support server 103, and is connected to a user terminal 106 via a communication line. The Web server 101 is a server that transmits Web information to the user terminal 106 in response to requests from the user. The database server 102 is a server that stores various data. Here, the Web server 101 and the database server 102 are described as working together to execute application software AP. The correction support server 103 is a server that assists workers in correcting fault locations. In this embodiment, the correction support server 103 is described as an independent, standalone server, but the correction support server 103 can be integrated into other servers such as the Web server 101 and the database server 102.
[0013] The user terminal 106 sends request information RQ to the service provision system 100 in response to the user's operation. The Web server 101 of the service provision system 100 responds to the request information RQ by, for example, executing process A to generate acquired data Dta and sending it to the database server 102. The database server 102 responds to the acquired data Dta by, for example, executing process B to generate acquired data Dtb and sending it to the Web server 101. The Web server 101 generates response information RP based on the acquired data Dtb and sends it to the user terminal 106. For example, suppose the user terminal 106 sends request information RQ such as "Service: Weather, Date: Tomorrow, Region: Tokyo". In response, the service provision system 100 can send response information RP such as "Tomorrow in Tokyo will be cloudy then sunny" to the user terminal 106.
[0014] Such a service provision system 100 can, for example, make it easier to understand the linkage between trace information Tr related to process A and trace information Tr related to process B by arranging the execution time of process A and the execution time of process B in chronological order.
[0015] As shown in Figure 2, the correction support server 103 includes a time vicinity extraction unit 11, a solution candidate search unit 12, a solution candidate learning unit 13, and an application log learning unit 14. The time vicinity extraction unit 11 is a component that extracts the portion of the log near the time of error occurrence based on the time information of the error message and trace information and displays it on the display unit. The solution candidate search unit 12 is a component that searches for error resolution candidates from the solution candidate database 23 according to the error that occurs and displays them on the display unit. The solution candidate learning unit 13 is a component that learns suitable solution candidates. Here, "suitable" means suitable for use in error correction work (the same applies hereinafter). The solution candidate learning unit 13 stores the error resolution candidates searched by the solution candidate search unit 12 in the solution candidate database 23 while learning them so that more suitable error resolution candidates are ranked higher. The application log learning unit 14 is a component that learns suitable application logs. The application log learning unit 14 stores the portion of the log near the time of error occurrence extracted by the time vicinity extraction unit 11 in the log database while learning them so that more suitable application logs are ranked higher. In this explanation, the application log learning unit 14 is described as performing learning on application logs. However, the application log learning unit 14 can be configured to perform learning on logs other than application logs. In this case, the "application log learning unit 14" may be referred to as the "log learning unit."
[0016] Furthermore, the correction support server 103 has an error message storage unit 21, a trace information storage unit 22, and a solution candidate database 23 in its storage 20. The error message storage unit 21 is a storage unit that stores error messages. The trace information storage unit 22 is a storage unit that stores trace information. The solution candidate database 23 is a storage unit that stores error resolution candidates.
[0017] The correction support server 103 also has a CPU (Central Processing Unit) 31 that performs various calculations and a memory 32 that stores various information and programs. The correction support server 103 is also equipped with a network interface card 33 for connecting to a network. Furthermore, the correction support server 103 is connected by wired or wireless means to input devices 61 such as a keyboard and mouse, and output devices 62 such as a display unit.
[0018] <Operation of the Correction Support Server> The operation of the correction support server 103 will be described below. When an error occurs, the correction support server 103 extracts the section of the log near the time the error occurred based on the error message and the time information of the trace information, and displays it on the display unit. This allows the correction support server 103 to effectively support the operator's correction work on the faulty section. Figure 3 is an explanatory diagram showing an example of a problem area in the trace information Tr10. Figure 4 is an explanatory diagram showing an example of extracting the section of the application log near the time the error occurred.
[0019] Figure 3 shows an example of trace information Tr10 when an error occurs. As an example, Figure 3 shows trace information Tr10 that includes the error message "Error code E001: A serious problem has occurred" and file information. Figure 4 shows how to extract the log location near the time the error occurred based on the time information Ti10 included in the trace information Tr10. In the example shown in Figure 4, time information Ti11, which is around the time of time information Ti10, is extracted from the screen Sc11 of the first application log as the location near the time the error occurred in the log. In the example shown in Figure 4, time information Ti12, which is around the time of time information Ti10, is extracted from the screen Sc12 of the second application log as the location near the time the error occurred in the log. In the example shown in Figure 4, time information Ti13, which is around the time of time information Ti10, is extracted from the screen Sc13 of the third application log as the location near the time the error occurred in the log. Note that the application log screen Sc is not limited to the example shown. Furthermore, the time information Ti is not limited to the example shown.
[0020] The operation of the correction support server 103 is realized by the flow shown in Figure 5B. In order to explain the characteristics of the operation of the correction support server 103 in an easy-to-understand manner, first, the conventional method will be explained with reference to Figure 5A, and then the method of this embodiment will be explained with reference to Figure 5B. Figure 5A is a flowchart showing an example of a conventional fault correction operation. Figure 5B is a flowchart showing an example of a fault correction operation by the correction support server 103 according to this embodiment.
[0021] As shown in Figure 5A, in conventional fault repair work, steps S110 to S150 are performed. In this process, steps S110, S120, and S150 are performed by a worker terminal (not shown) operated by the worker, while steps S130 and S140 are performed manually by the worker.
[0022] Specifically, when the worker terminal (not shown) detects an error (step S110), it collects trace information (step S120). Next, a worker, including a developer or operator, operates the worker terminal to identify the suspected application based on the error message in the trace information (step S130). Next, the worker operates the worker terminal to determine which process caused the error from the log of the suspected application (step S140). Finally, the worker terminal accepts a correction of the program defect (bug) at the location of the error (step S150).
[0023] In contrast, as shown in Figure 5B, in the fault correction work of this embodiment, the processes from steps S110 to S150 are performed as follows. In this case, in the fault correction work of this embodiment, all processes from steps S110 to S150 are performed by the correction support server 103.
[0024] Specifically, when the correction support server 103 detects an error (step S110), it collects trace information (step S120). Next, based on the error message in the trace information, the correction support server 103 automatically scans the logs of the suspected application and displays the processing location of the problem and potential solutions on the display unit (step S131). Next, the correction support server 103 accepts the correction of the program defect (bug) at the location of the error (step S150).
[0025] The conventional fault correction procedure shown in Figure 5A and the fault correction procedure of this embodiment shown in Figure 5B have differences as shown in Figures 6A and 6B. Figure 6A is a flowchart showing an example of the conventional procedure for extracting the location of an error near the time of occurrence in an application log. Figure 6B is a flowchart showing an example of the procedure for extracting the location of an error near the time of occurrence in an application log by the correction support server 103 according to this embodiment.
[0026] In the conventional fault repair work shown in Figure 6A, the process in step S210 is performed by a worker terminal (not shown), and the processes in steps S220 to S230 are performed manually by the worker. The processes in steps S210 and S220 and S230 shown in Figure 6A correspond to the processes in steps S110 and S130 shown in Figure 5A, respectively.
[0027] Specifically, the worker terminal (not shown) detects the occurrence of an error (step S210). The worker terminal then notifies the worker of the detection of the error. The worker, including the developer or operator, operates the worker terminal to display the error occurrence time information on the display unit and visually confirms it (step S220). Next, the worker operates the worker terminal to manually refer to the application log to find the time of the error occurrence or the location immediately before or after it (step S230).
[0028] In contrast, in this embodiment shown in Figure 6B, the correction work for the faulty area is performed by the correction support server 103 in steps S210 and S221. The processes in steps S210 and S221 shown in Figure 6B correspond to the processes in steps S110 and S131 shown in Figure 5B, respectively.
[0029] Specifically, the correction support server 103 detects the occurrence of an error (step S210). Then, based on the error occurrence time information, the correction support server 103 automatically extracts the time at or near that time and displays the application log locations around that time on the display unit (step S221).
[0030] Thus, the correction support server 103 has a time vicinity extraction unit 11 that extracts locations around the time (before or after, or near) the time in question, even if the time information does not perfectly match. The operation of the time vicinity extraction unit 11 will be explained below with reference to Figure 7. Figure 7 is a flowchart showing an example of the operation when the correction support server 103 extracts locations around the time an error occurred in the application log.
[0031] As shown in Figure 7, first, the time vicinity extraction unit 11 of the correction support server 103 determines whether or not there is a row that matches the time information (step S310).
[0032] If it is determined in step S310 that there is a line that matches the time information ("Yes"), the time vicinity extraction unit 11 displays the matching line and the lines before and after it on the display unit. For example, if there is a matching line in the first application log, the time vicinity extraction unit 11 displays the matching line and the lines before and after it on the display unit (step S315). After step S315, the process proceeds to step S340.
[0033] On the other hand, if it is determined in step S310 that there are no rows that match the time information ("No"), the time vicinity extraction unit 11 determines whether there are any rows that match the time information after subtracting, for example, one second, from the already matched logs (step S320).
[0034] In step S320, if it is determined that there is a line that matches the time information after subtracting one second, other than the already matched log ("Yes"), the time vicinity extraction unit 11 displays the matching line and the lines before and after it on the display unit. For example, if there is a matching line in the next application log other than the already matched log, the time vicinity extraction unit 11 displays the matching line and the lines before and after it on the display unit (step S325). After step S325, the process proceeds to step S340.
[0035] On the other hand, if it is determined in step S320 that there are no rows that match the time information ("No"), the time vicinity extraction unit 11 determines whether there are any rows that match the time information with, for example, 1 second added, in addition to the logs that have already been matched (step S330).
[0036] In step S320, if it is determined that there is a line that matches the time information by adding 1 second to the already matched log ("Yes"), the time vicinity extraction unit 11 displays the matching line and the lines before and after it on the display unit. For example, if there is a matching line in the next application log other than the already matched log, the time vicinity extraction unit 11 displays the matching line and the lines before and after it on the display unit (step S335). After step S335, the process proceeds to step S340.
[0037] On the other hand, if it is determined in step S330 that there are no rows that match the time information ("No"), or after any of the processes in steps S315, S325, or S335, the time vicinity extraction unit 11 determines whether the subtracted or added number of seconds has reached the specified number of seconds (step S340).
[0038] If, in step S340, it is determined that the number of seconds subtracted or added has reached the specified number of seconds ("Yes"), the correction support server 103 terminates the processing of the series of routines. On the other hand, if, in step S340, it is determined that the number of seconds subtracted or added has not reached the specified number of seconds ("No"), the process returns to step S320.
[0039] Such a correction support server 103 can automatically perform tasks that were previously done manually by workers, such as those shown in Figure 8. Figure 8 is an explanatory diagram of the conventional error occurrence time extraction process.
[0040] Figure 8 shows, as an example, screen Sc20 when extracting the time of error occurrence from a Linux application log file "sample1.log" with, for example, 100 lines. In the conventional method of extracting the time of error occurrence, the operator manually enters the command "cat" into the operator's terminal (not shown) to display the contents of "sample1.log". Based on this, the operator performs the task of extracting the time of error occurrence.
[0041] In contrast, in this embodiment, the correction support server 103 automatically extracts the portion of the log near the time of error occurrence using the time vicinity extraction unit 11, thus eliminating the need for such extraction work. Figures 9 to 11 are explanatory diagrams of the error occurrence time vicinity extraction work performed by the correction support server 103.
[0042] Figure 9 shows, as an example, screen Sc21 when extracting the section around the time of error occurrence from a Linux application log file "sample1.log" which has, for example, 100 lines. In this embodiment, the error extraction process searches the log file for lines that match or are close to the time the error occurred, and extracts them. For example, let's say the time the error occurred is "2024 / 12 / 10:17:37:43". In this case, the correction support server 103 uses the command "grep" to search the log file for lines that match the time (matching lines) and extracts them. In some cases, multiple lines may match. In that case, the correction support server 103 displays which line number the first line is as a representative line. In the example shown in Figure 9, the display result shows that the line (representative line) with the time "2024 / 12 / 10:17:37:43" is line 51. If no row matches the time "2024 / 12 / 10:17:37:43", the system searches for a row matching a time, for example, "2024 / 12 / 10:17:37:42" (one second less than the original time), using the method described above. If no row matches "2024 / 12 / 10:17:37:42", the system searches for a row matching a time, for example, "2024 / 12 / 10:17:37:44" (one second added to the original time), using the method described above. The search is performed sequentially in this manner until a row matching the time information is detected. If no matching row is found in any of the searches, the process is repeated until the specified number of seconds is reached.
[0043] After that, the correction support server 103 extracts any lines before and after the representative line by the near-time extraction unit 11 and displays them on the display unit. For example, as shown in FIG. 10, the correction support server 103 searches for any lines before and after the representative line from the log file using the commands "head" and "tail" and displays them on the display unit. FIG. 10 shows, as an example, a screen Sc22 when searching for any lines before and after the representative line and displaying them on the display unit. Here, it is assumed that the representative line is the 51st line and any 10 lines before and after it. As a result, the correction support server 103 searches for 10 lines before and after the 51st line, which is the representative line, that is, from the 41st [= 51 - 10] line to the 61st [= 51 + 10] line, from the log file using the commands "head" and "tail" and displays them on the display unit. In this way, the correction support server 103 displays on the display unit the line (representative line) whose extraction target time is "2024 / 12 / 10:17:37:43" and 10 lines before and after it. The flowchart of FIG. 7 represents performing such processing.
[0044] When subtraction (for example, 51 - 10) is performed and the value becomes 0 or a negative number, as shown in FIG. 11, the correction support server 103 displays the first line of the minimum number and the subsequent lines. FIG. 11 shows, as an example, a screen Sc23 when subtraction is performed and the value becomes 0 or a negative number. For example, in the case where the first line when the time is "2024 / 12 / 10:17:37:15" is the 8th line, the lower limit value is "8 - 10 = -2", so it becomes the first line of the minimum number, and the upper limit value is "8 + 10 = 18". Therefore, in this case, the correction support server 103 displays lines from the 1st line to the 18th line on the display unit.
[0045] In addition, the correction support server 103 searches for error solution candidates from the solution candidate database 23 according to the generated error and displays them on the display unit. Thereby, the correction support server 103 can support the operator's correction work for the failure location well. FIG. 12 is an explanatory diagram of error solution candidate data So11 stored in the solution candidate database 23.
[0046] In the example shown in FIG. 12, the error solution candidate data So11 is configured to include an error message, a cause of the error, a solution, and solution candidates. For example, for the error message "SyntaxError", the error solution candidate data So11 stores information such as "error in code syntax or writing method" as the cause of the error and "rewrite to correct syntax" as the solution in association with each other. Also, for the error message "SyntaxError", the error solution candidate data So11 stores code "1 - a", "1 - b", "1 - c", etc. as solution candidates in association with each other. The code "1 - a" has the content of "add ':' colon after ')' in def syntax". The code "1 - b" has the content of "add closing parenthesis ')' after function arguments". The code "1 - c" has the content of "delete unnecessary full-width spaces". In addition to "SyntaxError", the error solution candidate data So11 stores solution candidates for "NameError", "TypeError", "ValueError", "IndetationError", etc.
[0047] The solution candidate search unit 12 searches for error solution candidates from the error solution candidate data So11 according to the content of the occurring error and displays them on the display unit. At that time, the solution candidate learning unit 13 stores the error solution candidates searched by the solution candidate search unit 12 in the solution candidate database 23 while learning them so that more suitable error solution candidates are ranked higher. Thereby, when the solution candidate search unit 12 searches for error solution candidates and displays them on the display unit, more suitable error solution candidates are displayed higher. Therefore, the operator can preferentially perform the error correction work from the more suitable error solution candidates.
[0048] FIG. 13 is a flowchart showing an example of the learning operation of more suitable error solution candidates by the correction support server 103, and represents the operations of the solution candidate search unit 12 and the solution candidate learning unit 13 of such a correction support server 103.
[0049] In the example shown in Figure 13, first, an experienced worker prepares the initial solution candidate database 23 by writing the "solution candidate" column, which is associated with (linked to) the error message in the error resolution candidate data So11 (step S610).
[0050] After step S610, if a developer or operator discovers a new solution, the solution candidate learning unit 13 adds that solution to the "solution candidate" column (step S620).
[0051] After step S620, the solution candidate learning unit 13 assigns points [for example, +1] to the "solution candidate" that the operator found helpful (step S630).
[0052] After step S630, the solution candidate learning unit 13 sorts the "solution candidates" in descending order of the total points obtained (step S640).
[0053] The solution candidate learning unit 13 repeatedly performs the processes in steps S620, S630, and S640 to learn suitable "solution candidates" (step S650).
[0054] When an error occurs, the solution candidate search unit 12 searches the solution candidate database 23 for error resolution candidates according to the error that occurred and displays them on the display unit. At that time, the solution candidate search unit 12 displays the most suitable "solution candidates" stored higher up in the error resolution candidate data So 11 (step S660). Here, "suitable" means, as described above, that it is suitable for use in the error correction work.
[0055] As shown in Figure 14, the correction support server 103 can also perform such processing on application logs. Figure 14 is a flowchart showing an example of a preferred application log learning operation by the correction support server 103.
[0056] In the example shown in Figure 14, when an error occurs, the time-related extraction unit 11 of the correction support server 103 scans the logs of the suspected application. At that time, the time-related extraction unit 11 scans the logs of the suspected application using the log file of the application software AP located on the Web server 101 or the database server 102 at the time the error occurred (step S710).
[0057] After step S710, if a worker, including a developer or operator, finds an application log with an error message, the application log learning unit 14 extracts the application log with that error message, writes the application log file name to another file, and makes it a target for learning (step S720).
[0058] After step S720, when the operator assigns points [e.g., +1] to a helpful "solution candidate," the application log learning unit 14 assigns points [e.g., +1] to the application log file associated with it (step S730).
[0059] After step S730, the application log learning unit 14 sorts the application log files in descending order of the total points obtained (step S740).
[0060] The application log learning unit 14 repeatedly performs the processes in steps S720, S730, and S740 to learn suitable application logs (step S750).
[0061] When an error occurs, the time-related extraction unit 11 searches the file log for application logs according to the error that occurred and displays them on the display unit. At that time, the time-related extraction unit 11 displays the most suitable application logs stored higher up in the file log (step S760).
[0062] <Hardware Configuration> The correction support server 103 according to this embodiment is implemented by a computer 900 having a configuration such as that shown in Figure 15. Figure 15 is a hardware configuration diagram showing an example of a computer 900 that implements the functions of the correction support server 103. The computer 900 has a CPU (Central Processing Unit) 901, ROM (Read Only Memory) 902, RAM 903, HDD (Hard Disk Drive) 904, input / output I / F (Interface) 905, communication I / F 906, and media I / F 907.
[0063] The CPU 901 operates based on programs stored in the ROM 902 or HDD 904. The ROM 902 stores boot programs executed by the CPU 901 when the computer 900 starts up, as well as programs related to the computer 900's hardware.
[0064] The CPU 901 controls input devices 910, such as a mouse and keyboard, and output devices 911, such as a display unit and printer, via the input / output interface 905. The CPU 901 acquires data from the input devices 910 and outputs the generated data to the output devices 911 via the input / output interface 905.
[0065] The HDD 904 stores programs executed by the CPU 901 and data used by those programs. The communication I / F 906 receives data from other devices via a communication network (e.g., NW (Network) 920) and outputs it to the CPU 901, and also transmits data generated by the CPU 901 to other devices via the communication network.
[0066] The media interface 907 reads a program or data stored in the recording medium 912 and outputs it to the CPU 901 via the RAM 903. The CPU 901 loads the program related to the desired processing from the recording medium 912 onto the RAM 903 via the media interface 907 and executes the loaded program. The recording medium 912 can be an optical recording medium such as a DVD (Digital Versatile Disc) or PD (Phase Change Rewritable Disk), a magneto-optical recording medium such as an MO (Magneto Optical Disk), a magnetic recording medium, or a semiconductor memory.
[0067] For example, when computer 900 functions as the correction support server 103 of the present invention, the CPU 901 of computer 900 realizes the function of the correction support server 103 by executing a program loaded on RAM 903. The HDD 904 stores the data in RAM 903. The CPU 901 reads and executes a program related to the target processing from the recording medium 912. Alternatively, the CPU 901 may read a program related to the target processing from another device via a communication network (NW 920).
[0068] <Effects> The effects of the correction support server 103 according to the present invention will be described below. (1) The correction support server 103 according to the present invention has a time vicinity extraction unit 11 that targets log files and extracts the portion of the log around the time the error occurred. The time vicinity extraction unit 11 is characterized by extracting the portion of the log around the time the error occurred based on the error message and the time information of the trace information and displaying it on the display unit.
[0069] In this way, the correction support server 103 according to the present invention can automatically extract the portion of the log near the time the error occurred and display it on the display unit. As a result, the correction support server 103 according to the present invention can effectively support the operator's correction work on the faulty portion.
[0070] (2) The correction support server 103 of (1) further includes a log learning unit (application log learning unit 14) that learns suitable logs (application logs) that can be used for error correction work. The log learning unit is characterized by learning suitable logs by storing in the log database the locations of the logs extracted by the time vicinity extraction unit 11 around the time the error occurred, so that suitable logs are ranked higher.
[0071] In this way, the correction support server 103 according to the present invention can learn the locations of logs near the time of error occurrence so that suitable logs (application logs) are ranked higher. The correction support server 103 according to the present invention can further support the operator's correction work on fault locations.
[0072] (3) The correction support server 103 of (1) includes a solution candidate database 23 that stores error messages, error causes, and error resolution candidates, and a solution candidate search unit 12 that searches for error resolution candidates. The solution candidate search unit 12 is characterized by searching for error resolution candidates from the solution candidate database 23 according to the error that occurs and displaying them on the display unit.
[0073] In this way, the correction support server 103 according to the present invention can search for error resolution candidates in response to automatically occurring errors and display them on the display unit. As a result, the correction support server 103 according to the present invention can effectively support the operator's correction work on faulty locations.
[0074] (4) The correction support server 103 in (3) further has a solution candidate learning unit 13 that learns suitable error resolution candidates that can be used for error correction work. The solution candidate learning unit 13 is characterized by learning suitable error resolution candidates by storing the error resolution candidates searched by the solution candidate search unit 12 in the solution candidate database 23, so that the more suitable the error resolution candidate, the higher it ranks.
[0075] In this way, the correction support server 103 according to the present invention can learn error resolution candidates so that more suitable error resolution candidates are ranked higher. The correction support server 103 according to the present invention can further better support the operator's correction work on fault locations.
[0076] It should be noted that the present invention is not limited to the embodiments described above, and various modifications and alterations can be made without departing from the spirit of the invention. Furthermore, the embodiments described above are described in detail in order to explain the spirit of the invention in an easy-to-understand manner. Therefore, the present invention is not necessarily limited to having all the described components. In addition, the present invention can be modified by adding other components to one component, or by changing some components to other components. Furthermore, the present invention can be modified by deleting some components.
[0077] For example, in the embodiment described above, the correction support server 103 was described as an independent, standalone server, but the correction support server 103 can be integrated into other servers such as the web server 101 or the database server 102.
[0078] 11 Time vicinity extraction unit 12 Solution candidate search unit 13 Solution candidate learning unit 14 Application log learning unit (log learning unit) 20 Storage 21 Error message storage unit 22 Trace information storage unit 23 Solution candidate database 31 CPU 32 Memory 33 Network interface card 61 Input device (keyboard, mouse) 62 Output device (display unit) 100 Service provision system 101 Web server 102 Database server 103 Correction support server 106 User terminal AP Application software Dta, Dtb Acquired data Tr, Tr10 Trace information Ti, Ti10, Ti11, Ti12, Ti13 Time information Sc, Sc11, Sc12, Sc13, Sc20, Sc21, Sc22, Sc23 Screen So11 Error resolution candidate data RP Response information RQ Request Information
Claims
1. A correction support server having a time-period extraction unit that targets log files and extracts the portion of the log around the time the error occurred, wherein the time-period extraction unit extracts the portion of the log around the time the error occurred based on the error message and the time information of the trace information and displays it on a display unit.
2. The correction support server according to claim 1, further comprising a log learning unit that learns suitable logs that can be used for error correction work, wherein the log learning unit learns suitable logs by learning the locations of the logs extracted by the time vicinity extraction unit around the time the error occurred and storing them in a log database, such that the more suitable logs are ranked higher.
3. The correction support server according to claim 1, comprising: a solution candidate database that stores error messages, error causes, and error resolution candidates; and a solution candidate search unit that searches for error resolution candidates, wherein the solution candidate search unit searches for error resolution candidates from the solution candidate database according to the error that occurs and displays them on the display unit.
4. The correction support server according to claim 1, further comprising a solution candidate learning unit that learns suitable error resolution candidates that can be used for error correction work, wherein the solution candidate learning unit learns suitable error resolution candidates by learning the error resolution candidates searched by the solution candidate search unit and storing them in the solution candidate database, such that the more suitable the error resolution candidate, the higher the ranking.