Information processing device, information processing method and information processing program

The information processing apparatus automates the confirmation of resource usage status by monitoring performance, determining threshold violations, and outputting relevant data, thereby reducing investigation time and improving response to performance issues.

JP2025082907AActive Publication Date: 2025-05-30OBIC CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2023196461
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-11-20
Publication Date
2025-05-30
Estimated Expiration
2043-11-20

AI Technical Summary

Technical Problem

Existing systems require manual and time-consuming processes to confirm resource usage status, leading to lengthy investigation times when bottlenecks occur.

Method used

An information processing apparatus with a monitoring unit that generates performance information, a determination unit that sets threshold values, and an output control unit that automatically outputs performance information and command line arguments to external devices at predetermined intervals when resource thresholds are exceeded.

Benefits of technology

Enables rapid and easy confirmation of resource usage status, significantly reducing investigation time and allowing for timely identification and resolution of performance issues.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025082907000001_ABST
    Figure 2025082907000001_ABST
Patent Text Reader

Abstract

To easily and quickly confirm a usage status of a resource.SOLUTION: An information processing device comprises a storage unit in which at least one application process is stored, and a control unit which controls operation of each unit, by executing the application process. Moreover, the control unit comprises a monitoring unit, a determination unit, and an output control unit. The monitoring unit monitors an operation situation of each unit based on the application process, and generates performance information indicating the load of each unit. The determination unit discriminates whether or not a value of the generated performance information is equal to or more than a threshold value set for each unit. Then, the output control unit outputs a command-line argument of the application process to an external apparatus and controls it, and while at least the value of the performance information is determined to be equal to or more than the threshold value, outputs the performance information to the external apparatus and controls it for each predetermined time.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an information processing apparatus, an information processing method, and an information processing program.

Background Art

[0002] For example, a service provider that operates a data center manages applications by managing physical devices and managing each of a plurality of virtual operation systems assigned to each customer by virtual technology.

[0003] Patent Document 1 (Japanese Patent Translation Laid-Open No. 2016-511463) discloses a management system that stores write data of I / O (input / output) commands for a storage volume and manages a storage system.

[0004] This management system analyzes performance information of I / O operations for a certain period for each storage volume, derives a periodic time window having the same type of I / O performance characteristics, and determines the type of service level objective (SLO) for each derived periodic time window. Further, a threshold value of the SLO is calculated, and for each storage volume, the type of SLO of a certain periodic monitoring window and the threshold value of the SLO of that periodic monitoring window are provided to the user. Then, it is monitored for each storage volume whether the service level value of that periodic monitoring window violates the SLO based on the threshold value of the SLO of that periodic monitoring window.

Prior Art Documents

Patent Documents

[0005]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0006] Here, the usage status of resources such as the CPU usage rate (CPU: Central Processing Unit), memory usage amount, and disk access count of a terminal device such as a server device can be confirmed based on performance counters.

[0007] However, conventionally, when a bottleneck or the like occurred, the operator manually confirmed the resource consumption amount for each process regarding the usage status of resources. For this reason, there were problems in that it required extremely troublesome confirmation work and the investigation time also became long.

[0008] The present invention has been made in view of the above-described problems, and an object thereof is to provide an information processing apparatus, an information processing method, and an information processing program that enable easy and rapid confirmation of the usage status of resources.

Means for Solving the Problems

[0009] In order to solve the above-described problems and achieve the object, an information processing apparatus according to the present invention is an information processing apparatus including a storage unit in which at least one application process is stored, and a control unit that controls the operations of each unit by executing the application process, wherein the control unit includes: a monitoring unit that monitors the operation status of each unit based on the application process and generates performance information indicating the load of each unit; a determination unit that determines whether or not the value of the generated performance information is equal to or greater than a threshold value set for each unit; and an output control unit that controls output to an external device of the command line argument of the application process and controls output to the external device of the performance information at predetermined time intervals while it is determined that at least the value of the performance information is equal to or greater than the threshold value.

[0010] In addition, in order to solve the above-described problems and achieve the object, an information processing method according to the present invention is an information processing method of an information processing apparatus including a storage unit in which at least one application process is stored and a control unit that controls operations of respective units by executing the application process. The control unit includes a monitoring unit, a determination unit, and an output control unit. The monitoring unit monitors an operation status of each unit based on the application process and generates performance information indicating a load of each unit. The determination unit determines whether or not a value of the generated performance information is equal to or greater than a threshold value set for each unit. The output control unit controls output of command line arguments of the application process to an external device and controls output of the performance information to the external device at predetermined time intervals while it is determined that at least the value of the performance information is equal to or greater than the threshold value.

[0011] In addition, in order to solve the above-described problems and achieve the object, an information processing program according to the present invention is an information processing program of an information processing apparatus including a storage unit in which at least one application process is stored and a computer that controls operations of respective units by executing the application process. The computer is caused to function as a monitoring unit that monitors an operation status of each unit based on the application process and generates performance information indicating a load of each unit, a determination unit that determines whether or not a value of the generated performance information is equal to or greater than a threshold value set for each unit, and an output control unit that controls output of command line arguments of the application process to an external device and controls output of the performance information to the external device at predetermined time intervals while it is determined that at least the value of the performance information is equal to or greater than the threshold value.

Effect of the Invention

[0012] The present invention can make it possible to easily and quickly confirm the usage status of resources.

Brief Description of the Drawings

[0013]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Figure 12

Figure 13

Figure 14

Figure 15

Figure 16

Figure 17

Figure 18

Figure 19

Figure 20

Figure 21

DETAILED DESCRIPTION OF THE INVENTION

[0014] Hereinafter, a server device according to an embodiment to which the present invention is applied will be described in detail with reference to the drawings. Note that the present invention is not limited to the following embodiments.

[0015] [Overview] A service provider that operates a data center manages applications by managing physical devices and performing management for each of a plurality of virtual operating systems (OSs) assigned to each customer using virtual technology.

[0016] The usage form of the system is shifting from an "on-premises type" where customers manage physical devices themselves, a "hosting type" where physical devices are leased and used via a network, to a "cloud type" where applications are used via a network. In this case, customers do not need to own expensive physical server devices, but use services provided by service providers via server devices and pay fees according to the service content used.

[0017] The service content also includes resource allocation (CPU core allocation (CPU: Central Processing Unit), memory capacity, disk performance). This resource allocation greatly affects the response performance of the system. Service providers propose the amount of server resources required based on past implementation cases or information such as the number of concurrent users applied by customers. However, there is also the intention of the customer side to operate with the monthly cost suppressed as much as possible, and often the service cannot be started with a sufficient amount of resources.

[0018] In the case of the on-premises type, since expensive physical server devices are purchased, there is often an excess of server resources from the beginning, and performance problems are less likely to surface compared to the cloud type. Therefore, as the usage form of the system shifts from the on-premises type to the cloud type, the number of incidents of performance-related failures tends to increase.

[0019] Also, in both the on-premises type and the hosting type, since the customer needs to manage the application level and the OS level themselves, when problems such as the operation or response of the application occur, the customer also identifies the cause by themselves. However, in the cloud type service, since the service provider is responsible for the management of physical devices, virtual OS, and applications, early cause investigation and response when problems occur are directly related to customer satisfaction. Therefore, early cause investigation and response when problems occur are becoming more important than ever.

[0020] Here, heretofore, when a failure occurred, information such as CPU, memory, and disk load was checked from the performance counter to identify the bottleneck, and countermeasures such as adding resources if there were insufficient resources were taken. And by checking each log information, the application causing the bottleneck was identified.

[0021] By checking the performance counters (for example, CPU usage rate per process, memory usage amount per process, number of disk accesses per process, etc.) indicating the usage status of the resources of the server device, it is possible to determine which process is the bottleneck. However, in order to investigate the cause of the bottleneck in detail, when a failure occurs due to insufficient resources, it is necessary for the operator to manually check which process is consuming how much resources.

[0022] Also, when constantly recording log information, there is a concern that the amount of data to be accumulated will increase, and the investigation time will increase due to the increase in the log information to be investigated.

[0023] Furthermore, considering the resource investigation cost required to obtain the investigation log information, it is not realistic to constantly record the log information of all processes.

[0024] For these reasons, the server device of the embodiment is configured to automatically output the following information in a situation where an adverse effect on performance is assumed. Note that the "situation where an adverse effect on performance is assumed" is, for example, a situation where the CPU usage rate is above 90% in 5 minutes, a situation where the free memory is less than 512 MB, or a situation where the average disk queue is 7 or more in 30 minutes. Such situations may be combined to determine the "situation where an adverse effect on performance is assumed", or the numerical values of parameters such as 90% and 512 MB may be changed to arbitrary numerical values for use.

[0025] 1. Performance information of all processes As an example, the server device according to the embodiment outputs process identification information (process ID), CPU usage rate, memory usage amount (private bytes), and memory usage amount (working set) as performance information. Such performance information can be obtained by using the "typeperf command" in the command prompt in a Windows (registered trademark) environment. Also, in a Linux (registered trademark) environment, the above-mentioned performance information can be obtained by using the "ps aux command".

[0026] 2. Command-line arguments of all processes Also, as an example, the server device according to the embodiment outputs the process ID, application name, and command-line arguments of all processes. For example, in a Windows (registered trademark) environment, these pieces of information can be obtained by using the "Get-WmiObject cmdlet" of "PowerShell". Also, in a Linux (registered trademark) environment, " <pid>The full path of the application and the command line arguments can be obtained from the file in " / cmdline".

[0027] [Hardware Configuration] As shown in FIG. 1, the server device 1 of the embodiment includes a storage unit 2, a control unit 3, a communication interface unit 4, and an input / output interface unit 5. Note that the operating environment of the server device 1 of the embodiment will be described assuming, as an example, a Windows (registered trademark) environment.

[0028] An input device 6 and an output device 7 are connected to the input / output interface unit 5. As the output device 7, a display unit such as a monitor device (including a home television), a printing device, or a speaker device, etc. corresponds. As the input device 6, in addition to a keyboard device, a mouse device, and a microphone device, etc., a monitor device that cooperates with the mouse device to realize a pointing device function can also be used.

[0029] The communication interface unit 4 is connected to a network 50 such as a wide area network such as the Internet or a private network such as a LAN (Local Area Network). A terminal device 51 of a customer who uses the server device 1 is connected to the network 50.

[0030] As the memory unit 2, for example, a storage device such as a ROM (Read Only Memory), a RAM (Random Access Memory), a HDD (Hard Disk Drive), or an SSD (Solid State Drive) can be used. The memory unit 2 stores an information processing program that enables easy and quick confirmation of the usage status of resources. Also, the memory unit 2 stores a batch file (*.bat) 11 of the "typeperf command". Further, the memory unit 2 stores a PowerShell script file (*.ps1) of the "Get-WmiObject cmdlet" corresponding to the command line arguments of all processes. Additionally, the memory unit 2 is provided with a FIFO storage area 12 for storing a queue in a first-in first-out input / output form, and a temporary storage area (temporary storage unit) 13.

[0031] [Functional Configuration of Information Processing Apparatus] Next, the control unit 3, which is a CPU, functions as a monitoring unit 21, a determination unit 22, an acquisition unit 23, and an output control unit 24 as shown in FIG. 1 by executing the information processing program stored in the memory unit 2.

[0032] The monitoring unit 21 monitors the operation status of each unit based on the application process and generates performance information indicating the load of each unit. The determination unit 22 determines whether the value of the generated performance information is equal to or greater than the threshold value set for each unit. The acquisition unit 23 acquires the performance information of all processes when a situation where a negative impact on performance is assumed occurs. The output control unit 24 controls the output of the command line arguments of the application process to an external device, and controls the output of the performance information to the external device at predetermined time intervals while it is determined that at least the value of the performance information is equal to or greater than the threshold value.

[0033] Specifically, the output control unit 24 controls the output of the performance information and the command line arguments including the process identification information of the application process.

[0034] Further, the output control unit 24 combines the performance information and the command line arguments based on the process identification information of the application process and performs output control.

[0035] Also, the output control unit 24 performs output control on a graph indicating the load magnitude of each unit, which is generated based on the performance information, together with the command line arguments.

[0036] Also, when a desired graph is specified, the output control unit 24 performs output control on the command line arguments with the same process identification information as that of the specified graph in a display form different from other command line arguments.

[0037] [Load Monitoring Operation] FIG. 2 is a flowchart showing the flow of the load monitoring operation of the server device 1 according to the embodiment. The control unit 3 functions as the above-described monitoring unit 21 to output control unit 24 based on the information processing program stored in the storage unit 2, and repeatedly executes the processes of step S1 to step S4 from when the main power of the server device 1 is turned on until it is turned off.

[0038] In step S1, the monitoring unit 21 monitors the operation status of each unit based on the application process (constantly monitors) and generates performance information indicating the load of each unit.

[0039] In step S2, the determination unit 22 determines whether the value of the generated performance information is equal to or greater than the threshold value set for each unit, thereby determining whether the current situation is likely to have an adverse effect on performance.

[0040] Specifically, the determination unit 22 determines, for example, whether the CPU usage rate has reached 90% or more in 5 minutes, whether the free capacity of the temporary storage unit 13 has become less than 512 MB, and / or whether the average disk queue stored in the FIFO storage area 12 has reached 7 or more in 30 minutes.

[0041] When it is determined by the determination operation of the determination unit 22 that the current situation is likely to have an adverse impact on performance, the acquisition unit 23 acquires the performance information of all processes in step S3.

[0042] Figure 3 shows an example of the "typeperf command" of batch file 11 executed by the acquisition unit 23 when it is determined that the current situation is likely to have an adverse impact on performance. In the "typeperf command" parameters shown in this Figure 3, "-sc" indicates the number of samples, "-si" indicates the sampling interval (seconds), "-o" indicates the output destination path, and "-y" indicates the counter to be output.

[0043] As shown in Figure 4, the counters to be output are set to "¥Process(*)¥ID Process", "¥Process(*)¥%% Processor Time", "¥Process(*)¥Private Bytes", and "¥Process(*)¥Working Set".

[0044] "¥Process(*)¥ID Process" is the process identification information (process ID). By outputting this process ID, the performance information of the process when an abnormality occurs can be associated with other information (for example, command line argument information, etc.).

[0045] "¥Process(*)¥%% Processor Time" is the ratio of the elapsed time used by the process. The monitoring unit 21 calculates the CPU usage rate of the process by dividing this value by the number of cores.

[0046] "¥Process(*)¥Private Bytes" is the current size (capacity: bytes) of the memory area that cannot be shared with other processes.

[0047] "¥Process(*)¥Working Set" is the size (capacity: bytes) of the memory area used by the process.

[0048] In step S4, the output control unit 24 outputs (display control) the command line arguments of the application process to the external device (output device 7), and outputs (display control) the performance information to the external device (output device 7) at predetermined time intervals while it is determined that at least the value of the performance information is equal to or greater than the threshold value.

[0049] FIG. 5 and FIG. 6 show an example of a series of performance information for each process output by the output control unit 24. As can be seen from FIGS. 5 and 6, the output control unit 24 outputs the performance information of each process including a process ID such as "7676". The layouts of FIGS. 5 and 6 have the flow of the recording time in the column direction (vertical axis), and the performance information for each recording time is arranged for each process in the row direction (horizontal axis).

[0050] In the server device 1 of the embodiment, it is possible to change the layout to a different layout and output the performance information as shown in FIGS. 7 and 8 by an instruction operation of an operator or the like. That is, FIGS. 7 and 8 show a series of performance information for each process, similar to FIGS. 5 and 6. In the case of the layouts of FIGS. 7 and 8, the counter items for each process are arranged in the column direction (vertical axis), and the row direction (horizontal axis) is the flow of the recording time.

[0051] In the case of the layouts of FIGS. 7 and 8, since the transition of the performance information of each process can be displayed along the flow of time on the horizontal axis, it is possible to make it easier for the operator to recognize the performance information of each process. Also, in the case of this layout, as shown in FIG. 8, the performance information of each process can be grouped and displayed for each application such as application A and application B, and it is possible to make it easier for the operator to recognize the performance information of each process.

[0052] In addition, as shown in FIGS. 9 and 10, when there are multiple processes with the same process name, such as "w3wp", the output control unit 24 mainly groups and outputs the performance information of each process by attaching a serial number with "#" at the end of the process name of each process, such as "w3wp", "w3wp#1", "w3wp#2", etc., as shown in FIG. 10. This can make it easier for the operator to recognize the performance information for each process.

[0053] On the other hand, FIG. 11 is a diagram showing an example of a cmdlet for obtaining command-line arguments. The example in FIG. 11 is an example using the Get-WmiObject cmdlet of PowerShell (registered trademark) in the OS environment of Windows (registered trademark).

[0054] As shown in FIG. 12, this Get-WmiObject cmdlet is set to obtain "ProcessID: process ID", "Name: process name", and "CommandLine: command-line arguments".

[0055] FIG. 13 is a diagram showing an example of the command-line arguments obtained by the acquisition unit 23 based on the Get-WmiObject cmdlet and output by the output control unit 24. As shown in FIG. 13, the output control unit 24 outputs the command-line arguments including the process ID and the process name.

[0056] By outputting the command-line arguments including the process ID in this way, even when there are three Web application processes with the same process name as "w3wp.exe", as shown in FIG. 13, the operator can recognize that the process ID of the Web application process with the application pool name "WebApp1AppPool" is "1052".

[0057] Similarly, the operator can recognize that the process ID of the Web application process with the application pool name "WebApp2AppPool" is "2660", and the operator can recognize that the process ID of the Web application process with the application pool name "WebApp3AppPool" is "6816".

[0058] [Investigation Case] The following describes an investigation case of such a server device 1.

[0059] [First Investigation Case] First, assume that a failure occurs in which the load on the control unit 3 (CPU) of the server device 1 becomes 100% irregularly, and the performance of the entire system deteriorates. Therefore, the cause of becoming 100% irregularly will be investigated and improvement will be attempted.

[0060] In such a case, conventionally, the operator specifies the date and time and period during which the CPU is consumed nearly 100% from the performance information (specifically, the CPU usage rate of the entire server device) that is constantly acquired. In addition, the operator checks whether there is any problem from various log information (such as OS event log information) before and after the specified period, and identifies the cause.

[0061] In the case of such a conventional method, if log information effective for the investigation can be collected, it is possible to identify which application (process) has a problem. However, it takes time to check the log information, and the log information is not always output. Therefore, the information obtained is less than the time required for the investigation. Also, when no information is obtained, it is necessary to wait until the failure occurs again, and check the processes operating in the server device 1 in a situation where the CPU is under high load to identify the problem location.

[0062] In the case of the server device 1 according to an embodiment that conducts an investigation using the performance information of all processes with respect to such a conventional method, first, as illustrated in FIG. 15, the operator specifies the date and time and period during which the CPU (control unit 3) is consumed close to 100% from the performance information (specifically, the CPU (control unit 3) utilization rate of the entire server device 1) that is constantly acquired.

[0063] Next, the operator checks whether the performance information of all processes is output before and after the specified period. Then, the operator checks the output result of the performance information of all processes and identifies the process with the highest CPU (control unit 3) utilization rate.

[0064] Thereby, it can be inferred that there is a cause in the process with significant CPU (control unit 3) consumption, and the investigation can be narrowed down to the log information of the causative process. Also, even when the log information is not output, since the fact that the utilization rate of the CPU (control unit 3) is significantly high can be confirmed, it is also possible to take a measure to temporarily prohibit the use of that process. Further, since the causative process can be identified without waiting for the recurrence of the failure, the failure can be dealt with in a short time.

[0065] Specifically, in the application, as illustrated in FIG. 14, there may be a case where ticket information (information capable of identifying a user such as a user ID, terminal name, IP address, etc.) is passed to command line arguments. Assume a system that records this ticket information as log information in the storage unit 2.

[0066] In this case, as shown in FIG. 15, based on the output results of the performance information of all processes, the operator can determine that the cause is Application A. That is, the operator can first confirm from the CPU (control unit 3) time ratio of all processes and the CPU time ratio of the processes of Application A that the CPU is used by Application A for most of the time. Also, the operator can confirm the process ID of "4812" as the process ID of that process. And the operator can recognize that the time period when the CPU is under high load is around "16:14:43 on August 16, 2023".

[0067] Next, the operator filters and extracts the log information of the relevant application from the ticket information of the command line arguments to identify the operator (who) of the program that caused the problem, the operation time (when it was started), the operation content (what operations were performed), etc.

[0068] That is, as shown in FIG. 16, based on the output results of the command line arguments of all processes, the operator checks the ticket information (information that can identify the user such as user ID, terminal name, IP address, etc.) and recognizes the user ID of "User1" corresponding to the process ID of "4812". Then, the operator specifies the time period of "16:00 on August 16, 2023" that includes the time period when the CPU is under high load recognized from the performance information, and the user ID of "User1" corresponding to the process ID of "4812" to specify the filtering of the log information.

[0069] When this specification is made, the output control unit 24 refers to the log information of the ticket information stored in the storage unit 2 based on the specified conditions, filters and extracts the log information corresponding to the time period of "16:00 on August 16, 2023" and the user ID of "User1" corresponding to the process ID of "4812", and displays it via the output device 7 (it may also be printed and output).

[0070] FIG. 17 shows an example of displaying log information of ticket information as the extraction result. As shown in this FIG. 17, the log information is composed of a recording date and time, a user ID, a computer name, an operation, a status, and details. In the case of the example in this FIG. 17, at 16:14:40 on August 16, 2023, the user with the user ID of "User1" has failed in printing. Therefore, the operator can presume that it is highly possible that the performance of the server device 1 has decreased due to this printing operation.

[0071] As described above, the server device 1 of the embodiment can extract and display log information effective for investigation, and can identify which application (process) has a problem in a short time.

[0072] [Second investigation case] Next, assume that the CPU (control unit 3) of the server device 1 providing a web application has a load of 100% utilization rate and hangs up. In this case, it is necessary to identify the web application program that caused the hang-up from among the plurality of web application programs stored in the server device 1.

[0073] In such a case, conventionally, the operator identifies the date and time and period when the CPU is consumed nearly 100% from the performance information (specifically, the CPU utilization rate of the entire server device) that the operator always obtains. Then, the operator identifies the cause by referring to the log information of the web application program before and after the identified period.

[0074] In the case of such a conventional method, if log information effective for investigation can be collected, it is possible to identify which application (process) has a problem. However, it takes time to check the log information, and the log information is not always output. Therefore, the information obtained is less than the time required for the investigation. Also, when no information is obtained, it is necessary to wait again until a failure occurs, and check the processes operating in the server device 1 in a situation where the CPU has a high load to identify the problem location.

[0075] Here, in the case of the server device 1 of the embodiment that conducts an investigation using the performance information of all processes, first, the operator can determine whether there is a problem with the worker process (w3wp.exe) set in the application pool.

[0076] However, in the case of a Web application program, it is common to set the application pool so that a plurality of Web application programs operate in their respective worker processes (w3wp.exe). In this case, since the execution file of the worker process is the same "w3wp.exe", the process names of the performance counters are expressed as "w3wp#1", "w3wp#2", "w3wp#2",... Therefore, it becomes difficult to identify the application pool in which a problem has occurred.

[0077] For this reason, in the server device 1 of the embodiment, as shown in FIG. 19, the operator performs pre-settings so as to use different application pools for each Web application. As a result, as exemplified in FIG. 18, even for worker processes of the same "w3wp.exe", the application pool names included in the command line arguments can be set to different application pool names such as "WebApp1AppPool", "WebApp2AppPool", "WebApp3AppPool", etc., and the Web application program in which a problem has occurred can be easily identified.

[0078] [Combination Process of Performance Information and Command Line Arguments Based on Process ID] Next, the server device 1 of the embodiment can combine and output the performance information of all processes and the command line arguments of all processes based on the process ID.

[0079] As described above, each piece of performance information and each command-line argument includes a process ID. Therefore, when the operator designates the combination process of the performance information and the command-line argument, as shown in FIG. 20, the output control unit 24 combines each piece of performance information and each command-line argument based on the date and time and the process ID. The example in FIG. 20 is an example of combined data obtained by combining the performance information of each process ID and each command-line argument along the row direction along the flow of time in the column direction.

[0080] Also, when the operator designates the graph display of the combined data, as shown in FIG. 21, the output control unit 24 generates combined data for displaying on a single screen the graphs of the performance information of each process ID and the command-line arguments of each process ID, and displays the combined data via the output device 7.

[0081] The graph shown in FIG. 21 has the time axis as the horizontal axis and the CPU (control unit 3) usage rate as the vertical axis. The thick-line graph is the graph of the performance information of the process ID "1000". Also, the dotted-line graph is the graph of the performance information of the process ID "2000", and the thin-line graph is the graph of the performance information of the process ID "3000".

[0082] Also, for the command-line arguments shown in FIG. 21, the record in the first column is the command-line argument of the process ID "1000", the record in the second column is the command-line argument of the process ID "2000", and the record in the third column is the command-line argument of the process ID "3000".

[0083] Of the graphs of the performance information of each process ID shown in FIG. 21, assume that the operator has specified and operated a desired graph. The output control unit 24 detects the command line argument to which the process ID of the specified graph is attached. Then, the output control unit 24 generates combined data in which the command line argument to which the process ID of the specified graph is attached has a display form different from that of other command line arguments, and displays the combined data via the output device 7.

[0084] In the example of FIG. 21, since the graph of the process ID of "1000" shows a higher CPU (control unit 3) usage rate than the graphs of other process IDs, this is an example in which the operator has specified and operated the graph of the process ID of "1000". By this specified operation, the output control unit 24 generates combined data in which the command line argument to which the specified process ID of "1000" is attached has a display form different from that of other command line arguments, and displays the combined data via the output device 7.

[0085] Note that the display in a different display form includes, for example, changing the character color, highlighting, displaying in bold, underlining, or displaying with a marker of a predetermined color.

[0086] Thus, in the example shown in FIG. 21, among the command line arguments, the record of the command line argument to which the process ID of "1000" is attached can be displayed in a display form different from that of the records of other command line arguments, making it easier for the operator to recognize.

[0087] [Effects of the Embodiment] As is clear from the above description, the server device 1 of the embodiment can easily and quickly confirm the processes that significantly consume resources. Therefore, the investigation time can be significantly shortened.

[0088] Also, instead of constantly recording log information, log information is output only in situations where it is presumed to have an adverse effect on performance. This makes it possible to efficiently use the free disk space to record log information and also conduct an efficient investigation in terms of time.

[0089] Also, when a specific process is not significantly consuming resources, it can be determined that there is an overall shortage of resources. This makes it possible to propose a well-founded addition of resources and make a cost-effective proposal to the customer.

[0090] [Contribution to the Sustainable Development Goals (SDGs) led by the United Nations] According to this embodiment, since it can contribute to improving business efficiency and making appropriate business judgments for enterprises, it becomes possible to contribute to Goals 8 and 9 of the SDGs.

[0091] Also, according to this embodiment, since it can contribute to reducing waste loss and promoting paperless and digitalization, it becomes possible to contribute to Goals 12, 13, and 15 of the SDGs.

[0092] Also, according to this embodiment, since it can contribute to strengthening control and governance, it becomes possible to contribute to Goal 16 of the SDGs.

[0093] [Other Embodiments] The present invention can be implemented in various different embodiments within the scope of the technical idea described in the claims, in addition to the embodiments described above.

[0094] For example, among the processes described in the embodiment, all or part of the processes described as being automatically performed can be manually performed, or all or part of the processes described as being manually performed can be automatically performed by a known method.

[0095] In addition, the processing procedures, control procedures, specific names, information including parameters such as registered data and search conditions for each process, screen examples, and database configurations shown in this specification and the drawings can be arbitrarily changed unless otherwise specified.

[0096] Regarding the server device 1, each illustrated component is a functional concept and does not necessarily need to be physically configured as shown in the figure.

[0097] For example, regarding the processing functions provided by the server device 1, particularly each processing function performed by the control unit 3 and the control unit 3, all or any part of them may be realized by a CPU (Central Processing Unit) and a program interpreted and executed by the CPU, or may also be realized as hardware by wired logic.

[0098] Note that the program is recorded on a non-transitory computer-readable recording medium including programmed instructions for causing the information processing device to execute the processing described in this embodiment, and is mechanically read by the server device 1 as needed. That is, in a storage unit such as a ROM or an HDD, a computer program for giving instructions to the CPU in cooperation with the OS and performing various processes is recorded. This computer program is executed by being loaded into the RAM and constitutes the control unit 3 in cooperation with the CPU.

[0099] In addition, the information processing program of this server device 1 may be stored in another server device connected to the server device 1 via an arbitrary network, and all or part of it can be downloaded as needed.

[0100] Further, an information processing program for executing the processes described in this embodiment may be stored in a non-transitory computer-readable recording medium, or may be configured as a program product. Here, this "recording medium" includes any "portable physical medium" such as a memory card, a USB (Universal Serial Bus) memory, an SD (Secure Digital) card, a flexible disk, a magneto-optical disk, a ROM, an EPROM (Erasable Programmable Read Only Memory), an EEPROM (registered trademark) (Electrically Erasable and Programmable Read Only Memory), a CD-ROM (Compact Disk Read Only Memory), an MO (Magneto-Optical Disk), a DVD (Digital Versatile Disk), and a Blu-ray (registered trademark) Disc.

[0101] Also, the "program" is a data processing method described in any language or description method, and is not limited to a form such as source code or binary code. Note that the "program" is not necessarily limited to being configured singly, and also includes those that are distributed as a plurality of modules or libraries, or those that achieve their functions in cooperation with other separate programs typified by an OS. Regarding the specific configuration, reading procedure, and installation procedure after reading for reading the recording medium in the server device 1 shown in the embodiment, well-known configurations and procedures can be used.

[0102] The storage unit 2 is a storage means such as a memory device such as a RAM or a ROM, a fixed disk device such as a hard disk, a flexible disk, and an optical disk, and stores various programs, tables, databases, and web page files used for various processes and website provision.

[0103] Further, the server device 1 may be configured by an information processing device such as a known personal computer device or a workstation, or may be configured by an information processing device to which an arbitrary peripheral device is connected. Further, the information processing device may be realized by implementing software (including programs or data, etc.) that realizes the processing described in the present embodiment.

[0104] Furthermore, the specific forms of distribution and integration of the devices are not limited to those illustrated, and all or part of them can be functionally or physically distributed and integrated in arbitrary units according to various additions or according to the function load. That is, the above-described embodiments may be arbitrarily combined and implemented, or the embodiments may be selectively implemented.

Industrial Applicability

[0105] The present invention is suitable for application to devices equipped with computers such as personal computer devices, server devices, and mobile phones.

Explanation of Signs

[0106] 1 Server device 2 Storage unit 3 Control unit 4 Communication interface unit 5 Input / output interface unit 6 Input device 7 Output device 11 Batch file 12 First-in first-out storage area (FIFO storage area) 13 Temporary storage area (temporary storage unit) 21 Monitoring unit 22 Discrimination unit 23 Acquisition unit 24 Output control unit< / pid>

Claims

1. An information processing apparatus including a storage unit storing at least one application process, and a control unit that controls operations of respective units by executing the application process, wherein the control unit includes a monitoring unit that monitors an operation status of each unit based on the application process and generates performance information indicating a load of each unit, a determination unit that determines whether or not a value of the generated performance information is equal to or greater than a threshold value set for each unit, and an output control unit that controls output of command line arguments of the application process to an external device and controls output of the performance information to the external device at predetermined time intervals while it is determined that the value of at least the performance information is equal to or greater than the threshold value. The information processing apparatus is characterized by including the above components.

2. The output control unit controls output by including process identification information of the application process in the performance information and the command line arguments. The information processing apparatus according to claim 1, characterized by the above configuration.

3. The output control unit controls output by combining the performance information and the command line arguments based on the process identification information of the application process. The information processing apparatus according to claim 2, characterized by the above configuration.

4. The output control unit controls output by outputting, together with the command line arguments, a graph indicating a magnitude of a load of each unit generated based on the performance information. The information processing apparatus according to claim 3, characterized by the above configuration.

5. When a desired graph is specified in the graph, the output control unit controls output such that the command line arguments with the same process identification information as the process identification information of the specified graph are output in a display form different from other command line arguments. The information processing apparatus according to claim 4, characterized by the above configuration.

6. An information processing method for an information processing apparatus including a storage unit storing at least one application process and a control unit that controls operations of respective units by executing the application process, wherein the control unit includes a monitoring unit, a determination unit, and an output control unit, and the monitoring unit monitors an operation status of each unit based on the application process and generates performance information indicating a load of each unit. The discrimination unit discriminates whether or not the value of the generated performance information is equal to or greater than the threshold value set for each of the units. The output control unit controls the output of the command line arguments of the application process to an external device, and controls the output of the performance information to the external device at predetermined time intervals while it is determined that the value of at least the performance information is equal to or greater than the threshold value. An information processing method characterized by the above.

7. An information processing program for an information processing apparatus including a storage unit storing at least one application process and a computer that controls the operations of each unit by executing the application process, The computer is configured to: a monitoring unit that monitors the operation status of each unit based on the application process and generates performance information indicating the load of each unit; a discrimination unit that discriminates whether or not the value of the generated performance information is equal to or greater than the threshold value set for each of the units; function as an output control unit that controls the output of the command line arguments of the application process to an external device and controls the output of the performance information to the external device at predetermined time intervals while it is determined that the value of at least the performance information is equal to or greater than the threshold value. An information processing program characterized by the above.

Citation Information

Patent Citations

  • Information processor and program

    JP2014206787A

  • Monitoring system, monitoring method, and program

    JP2023048548A

  • Management system and method for dynamic storage service level monitoring

    JP2016511463A