Monitoring device and monitoring method executed by information processor
The monitoring device identifies acquisition targets and associates alerts with specific processes to reduce costs and enhance alert relevance, addressing high costs and inefficiencies in existing monitoring systems.
Patent Information
- Application Number
- JP2024062261
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-04-08
- Publication Date
- 2025-10-21
AI Technical Summary
Existing monitoring systems for devices like embedded devices or automatic analyzers incur high costs and processing loads by constantly monitoring register values without associating alerts with specific processing or analysis results, making it difficult to identify and address abnormalities effectively.
A monitoring device that identifies acquisition target processes and variables based on alert conditions, acquires variable values only when necessary, and associates alerts with specific processing targets, reducing unnecessary monitoring and enhancing alert relevance.
This approach reduces monitoring costs and human configuration efforts by specifying when and which variables to acquire, allowing alerts to be associated with processing targets, thereby improving the efficiency and effectiveness of abnormality detection.
Smart Images

Figure 2025159578000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to a technology for detecting an abnormality or the like in a monitored device (for example, an embedded device or an automatic analyzer) and issuing an alert (warning). [Background technology]
[0002] Even if a monitored device (for example, an embedded device or an automatic analyzer) has some kind of abnormality, the abnormality may not be clearly apparent to the user of the device. On the other hand, depending on the function the device performs, it may be desirable to avoid the device continuing to operate while having an abnormality. For these reasons, there have been discussions about detecting abnormalities that occur in devices and issuing alerts (warnings).
[0003] Patent Document 1 is one of the documents disclosing prior art for detecting abnormalities and the like that occur in a device and issuing an alert (warning). Patent Document 1 discloses a technology for collecting register values of registers possessed by the device (a control system in this case), comparing the collected register values with a blacklist, and issuing an alert (warning) if the register value is not within an allowable range. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] International Publication No. 2022 / 249842 Summary of the Invention [Problem to be solved by the invention]
[0005] The prior art disclosed in Patent Document 1 monitors whether register values have changed and collects the register values if a change occurs. In other words, this prior art constantly monitors register values. As a result, this prior art may incur high costs (for example, hardware costs and processing load for monitoring) for monitoring register values.
[0006] Furthermore, depending on the type of device, such as an embedded device or an automatic analyzer, the device may output processing results or analysis results for each processing or analysis target. In such devices, if it is possible to determine which processing result (processing target) or analysis result (analysis target) an abnormality or the like that has occurred in the device is associated with, it is expected that it will be easier to take measures to resolve the abnormality or the like in the device. It is also expected that it will be possible to determine which processing target or analysis target the device should process or analyze again.
[0007] However, the prior art disclosed in Patent Document 1 does not indicate which processing result (processing target) or analysis result (analysis target) an abnormality or the like that has occurred in the device is associated with when issuing an alert (warning).
[0008] In light of the above, one of the objectives of the present disclosure may be to reduce the cost of implementing monitoring of a device (monitored device) and to associate alerts issued as a result of monitoring with targets such as processing by the monitored device. [Means for solving the problem]
[0009] In order to achieve at least one of the above objects, the present disclosure may have the following features, for example. One aspect of the present disclosure is a monitoring device. The monitoring device is configured to monitor a monitored device that executes monitored software. The monitored device executes the monitored software, thereby using one or more variables and realizing one or more monitored processes. The monitoring device includes a variable value acquisition target specifying unit, a variable value acquisition unit, an alert condition fulfillment determination unit, and a display output control unit. The variable value acquisition target identification unit identifies, based on the alert condition, which is the condition under which an alert is issued for the monitored device, and the content of the monitored process, an acquisition target process, which indicates the process from which a variable value, which is the value of a variable, is acquired, and an acquisition target variable, which indicates the variable from which a variable value is acquired when the acquisition target process is performed. The variable value acquisition unit acquires the variable value of the acquisition target variable when the acquisition target process is performed. The alert condition fulfillment determination unit determines whether the alert condition is fulfilled or not based on the variable value acquired by the variable value acquisition unit. The display output control unit controls the display or output of output information output based on the monitored process in association with information indicating whether the alert condition determined by the alert condition success / failure determination unit is met. [Effects of the Invention]
[0010] The monitoring device of the present disclosure acquires the variable value of the acquisition target variable when the acquisition target process is performed. In other words, the monitoring device of the present disclosure does not need to constantly monitor variable values, and therefore the cost of implementing monitoring of the monitored device can be reduced.
[0011] Furthermore, the monitoring device of the present disclosure performs control so that output information output based on the monitored process is associated with information indicating whether an alert condition is met and is displayed or output. In this way, when issuing an alert, the monitoring device of the present disclosure can associate the alert with output information (the target of processing by the monitored device, etc.).
[0012] As described above, the present disclosure reduces the cost of implementing monitoring of a device (monitored device) and makes it possible to associate alerts issued as a result of monitoring with targets for processing by the monitored device.
[0013] In addition, the monitoring device of the present disclosure may identify, based on the alert condition, which is the condition under which an alert is issued for the monitored device, and the content of the monitored process, an acquisition target process, which indicates the process from which a variable value, which is the value of a variable, is to be acquired, and an acquisition target variable, which indicates the variable from which a variable value is to be acquired when the acquisition target process is performed. In this way, the monitoring device disclosed herein may specify the timing of acquisition and the variables to be acquired when acquiring variable values used to determine whether an alert condition is met, thereby reducing the human cost of configuring the monitored device for monitoring (for example, setting the timing of acquisition of variable values and setting the variables to be acquired).
[0014] A method (monitoring method) or program that achieves the same processing as that achieved by the above-mentioned monitoring device (or a monitoring system that has the same functions as the monitoring device) can also achieve the same effects as the above-mentioned system. In the form of a program, costs can be reduced in many cases. Programs also make it easier to make design changes to the processing. Other features that the present disclosure may have and the effects corresponding to those features will be disclosed in this specification, claims, or drawings. [Brief explanation of the drawings]
[0015] [Figure 1] 1 illustrates a basic functional configuration of an embodiment of the present disclosure. [Figure 2] 1 illustrates an overall functional configuration of an embodiment of the present disclosure. [Figure 3] 10 shows an example of the operation of the monitored device. [Figure 4] 10 shows an alert condition information storage unit. [Figure 5] 1 shows an alert condition management screen. [Figure 6] 1 shows a state definition information storage unit. [Figure 7] 10 shows a state definition management screen. [Figure 8] 10 shows a variable value acquisition target specific information storage unit. [Figure 9] 1 shows a state transition history information storage unit. [Figure 10] 10 shows an alert condition success / failure information storage unit. [Figure 11] 1 shows a display output information storage unit. [Figure 12] The result screen is shown. [Figure 13] Illustrates computer architecture. [Figure 14] 10 shows a flowchart of the process of an alert condition management unit. [Figure 15] 10 shows a flowchart of the process of a state management unit. [Figure 16] 10 shows the functional configuration of a variable value acquisition target specifying unit. [Figure 17] 10 shows a flowchart of a process of a variable value acquisition target specifying unit. [Figure 18] 1 shows the functional configuration of a variable value acquisition unit and a state value generation unit. [Figure 19] 10 shows a flowchart of the processing of a variable value acquisition unit and a state value generation unit. [Figure 20] 10 shows the functional configuration of an alert condition success / failure determination unit. [Figure 21] 10 shows a flowchart of the process of an alert condition success / failure determination unit. [Figure 22] 1 shows the functional configuration of a monitored device output receiving unit and a display output control unit. [Figure 23] 10 shows a flowchart of a process of a monitoring target device output receiving unit. [Figure 24] 10 shows a flowchart of a process of a display output control unit. DETAILED DESCRIPTION OF THE INVENTION
[0016] Embodiments of the present disclosure will be described in detail below with reference to the drawings. Note that the embodiments described below do not limit the disclosure according to the claims, and not all of the elements and combinations thereof described in the embodiments are necessarily essential to the solutions of the present disclosure. The following description and drawings are examples for explaining the present disclosure, and appropriate omissions and simplifications have been made for clarity of explanation. The present disclosure can be implemented in various other forms. Unless otherwise specified, each component may be singular or plural. The position, size, shape, range, etc. of each component shown in the drawings may not represent the actual position, size, shape, range, etc., in order to facilitate understanding of the invention. Therefore, the present disclosure is not necessarily limited to the position, size, shape, range, etc. disclosed in the drawings. Each of the systems, devices, or functional units disclosed herein may be integrated into a single piece of hardware, or may be divided into multiple parts that work together to perform their functions. Several systems, devices, or functional units may be integrated into one hardware configuration. Each of the systems, devices, or functional units may be realized by causing a computer to execute software (programs) (as in FIG. 13). Some of the functions of the system, device, or functional unit may be realized by hardware (e.g., hardwired logic or a field programmable gate array (FPGA)), and the remaining functions may be realized by executing software (programs). All of the functions of each of the systems, devices, or functional units may be realized by hardware. Some or all of the steps shown in the flowcharts, etc. described in this disclosure may be realized by hardware. One or more systems, devices, or functional units of the present disclosure may be realized using one or more hardware resources. For this purpose, each of the systems, devices, or functional units of the present disclosure may be realized virtually. For example, a virtual computer or container technique may be used. The program may be any software that is included in the general concept of software, such as a specific monitoring device (monitoring system) or its operating method that is tailored to the intended use, created by the cooperation of software and hardware resources. In other words, the program is not limited to a specific type or form of program. Also, the program may be initially recorded in a compressed format. The same reference numbers are used in multiple drawings. In the drawings showing flowcharts, rectangular boxes indicate processing steps, and hexagonal boxes indicate conditional branching steps. In the drawings showing flowcharts, "step" is abbreviated as "S." Furthermore, the display or output aspects shown in the drawings are merely examples. Within the scope of the present disclosure, the display or output aspects may differ from those shown in the drawings.
[0017] 1. Basic functional configuration (Figure 1) 1 shows a basic functional configuration 100 (and the information handled) of a monitoring device 101 (or a monitoring system) according to an embodiment of the present disclosure. Note that not all of the functional configurations shown in FIG. 1 are essential. Furthermore, the presence of functional configurations other than those shown in FIG. 1 is not prohibited. In Figure 1 (, Figure 2, Figure 16, Figure 18, Figure 20 and Figure 22), solid rectangles with the word "unit" in their names indicate functional units. In Figure 1 (, Figure 2, Figure 16, Figure 18 and Figure 22), dotted rectangles indicate the information being handled.
[0018] The monitoring device 101 is for monitoring the monitoring target device 180. Note that instead of the monitoring device 101, a monitoring system that can provide the same functions as those provided by the monitoring device 101 may be used. The monitoring system may be made up of multiple devices. The monitored device 180 may execute monitored software 190 to use one or more variables 181 and to implement one or more monitored processes 192. Depending on the type of monitored device 180, part of the monitored processes 192 may be implemented more in hardware. The monitored device 180 may sequentially execute one or more monitored processes 192 for each process target assigned with process identification information 195 (process ID), and may output output information 307 as the process result for each process target. For example, as described below, if the monitored device 180 is an automated analyzer, it may sequentially execute one or more monitored processes 192 for each sample 302 (see FIG. 3) that is an analysis target assigned with process identification information 195 (process ID), and may output output information 307 as the analysis result for each analysis target. In FIG. 1 (and the drawings described below), sa1, sa2, ... are shown as examples of process identification information 195 (process ID). The monitoring device 101 (or monitoring system) may include a variable value acquisition target specifying unit 1601 , a variable value acquisition unit 1801 , an alert condition success / failure determining unit 2001 , and a display output control unit 2202 .
[0019] The variable value acquisition target specification unit 1601 may specify the acquisition target process 182 and the acquisition target variable 183 based on the alert condition information 401 indicating the alert condition 412 (see FIG. 4 ), which is a condition under which an alert (warning) is issued for the monitored device 180, and the contents 1621, 1622, and 1623 of the monitored process 192. The acquisition target process 182 indicates a process of the monitored process 192 from which a variable value 1811, which is the value of the variable 181, is acquired. Furthermore, the acquisition target variable 183 indicates the variable 181 from which the variable value 1811 is acquired when the acquisition target process 182 is performed. In other words, the variable value acquisition target identification unit 1601 identifies the timing for acquiring the variable value 1811 (which monitored process 192 the variable value 1811 will be acquired in conjunction with) and the variable 181 from which the variable value 1811 will be acquired (which variable 181 the variable value 1811 will be acquired for) so that the monitoring device 101 (or monitoring system) can acquire the variable value 1811 that affects whether or not the alert condition 412 indicated by the alert condition information 401 is met. The variable value acquisition target specifying unit 1601 may generate acquisition target process identification information 812 indicating the acquisition target process 182 and acquisition target variable identification information 813 indicating the acquisition target variable 183. The acquisition target process identification information 812 and the acquisition target variable identification information 813 may be collectively referred to as variable value acquisition target specification information 801. Note that different variable value acquisition target specification information 801 may include different (not completely identical) acquisition target variable identification information 813. For example, as shown in FIG. 1 , assuming that the monitoring target processes 192 are represented as α, β, γ... and the variables 181 are represented as A, B, C, D..., β as the acquisition target process 182 may be associated with B and C as the acquisition target variables 183, while γ as the acquisition target process 182 may be associated with B and D as the acquisition target variables 183.
[0020] The variable value acquisition unit 1801 acquires a variable value 1811 of an acquisition target variable 183 when an acquisition target process 182 is performed in the monitored device 180. In the description of the embodiment described below, it is shown that the variable value acquisition unit 1801 acquires the variable value 1811 by a pull-like operation. In other words, in the description of the embodiment described below, it is shown that the variable value acquisition unit 1801 monitors the monitored device 180 and acquires the variable value 1811 from the monitored device 180 based on the variable value acquisition target identification information 801. However, as in Modification D described below, the variable value acquisition unit 1801 may acquire the variable value 1811 by a push-like operation. That is, based on the variable value acquisition target identification information 801, the monitoring target process 192 may provide the variable value 1811 to the variable value acquisition unit 1801 at an appropriate time, and the variable value acquisition unit 1801 may then acquire the provided variable value 1811.
[0021] The alert condition success / failure determination unit 2001 determines whether or not the alert condition 412 (see FIG. 4) indicated by the alert condition information 401 is satisfied, based on the variable value 1811 acquired by the variable value acquisition unit 1801. The alert condition success / failure determination unit 2001 may determine whether or not the alert condition 412 is satisfied by directly using the variable value 1811. Alternatively, as in an embodiment described later, the alert condition success / failure determination unit 2001 may determine whether or not the alert condition 412 is satisfied by using information derived from the variable value 1811 (for example, a status value 1821. FIG. 6 shows an example of the definition of the status value 1821). The alert condition fulfillment determination unit 2001 may also determine whether the alert condition 412 is fulfilled or not by using snapshot-like information at a certain time of the variable value 1811 (or information derived from the variable value 1811 (e.g., the state value 1821)). The alert condition fulfillment determination unit 2001 may also determine whether the alert condition 412 is fulfilled or not by using a transition (e.g., a state transition) in the time series of the variable value 1811 (or information derived from the variable value 1811 (e.g., the state value 1821)). When it is determined that any of the alert conditions 412 is satisfied, the alert condition success / failure determination unit 2001 may generate alert condition success / failure information 1001. The alert condition success / failure information 1001 may be accompanied by process identification information 195 (process ID) associated with the satisfied alert condition 412. Furthermore, as in variant example E described below, when it is determined that none of the alert conditions 412 are satisfied in the processing of the monitored device 180 relating to certain processing identification information 195 (processing ID), the alert condition success / failure determination unit 2001 may generate alert condition success / failure information 1001 indicating that the alert condition 412 is not satisfied for the processing identification information 195 (processing ID).
[0022] The display output control unit 2202 controls the display or output of output information 307 output based on the monitored process 192 in association with alert condition success / failure information 1001, which is information indicating whether or not the alert condition 412 determined by the alert condition success / failure determination unit 2001 is met. The display output control unit 2202 may generate result information 2220, which associates the output information 307 with the alert condition success / failure information 1001 for the same process identification information 195 (process ID). The display output control unit 2202 may control a display or output device 1307 (see FIG. 13 ) included in the monitoring device 101 (or monitoring system), or some other display or output device capable of communicating with the monitoring device 101 (monitoring system), to display or output the result information 2220. Alternatively, the display output control unit 2202 may output (store) the result information 2220 to some kind of recording device (for example, the non-volatile recording medium 1303 (recording device) (see FIG. 13)). The display output control unit 2202 controls display or output by associating the output information 307 and the alert condition success / failure information 1001 related to the same processing identification information 195 (processing ID). Therefore, when an alert is issued, the processing target (analysis target) associated with the alert becomes clear. This makes it easier for the user of the monitored device 180 or the monitoring device 101 (or the monitoring system) to deal with the issued alert. Furthermore, the user of the monitored device 180 or the monitoring device 101 (or the monitoring system) can easily determine which processing target (analysis target) has low reliability for the output information 307, which is the processing result (analysis result). In some cases, the user of the monitored device 180 can even have the monitored device 180 redo the processing or analysis for the processing target (analysis target) corresponding to the low-reliability processing result (analysis result).
[0023] The monitoring device 101 (or monitoring system) according to the embodiment of the present disclosure has the above-described functional configuration, and therefore can have the effects shown in the above-described [Effects of the Invention].
[0024] 2. Overall functional configuration (Figs. 2-12) 2 shows an overall functional configuration 200 (and the information handled) including a monitoring device 101 (or a monitoring system) according to an embodiment of the present disclosure. Note that not all of the functional configurations shown in FIG. 2 are essential. Furthermore, the presence of functional configurations other than those shown in FIG. 2 is not prohibited. The details of the processing performed by the monitoring device 101 (or monitoring system) shown in Fig. 2 will be explained in detail in the section "4. Processing Performed by an Embodiment of the Present Disclosure" below. In this section "2. Overall Functional Configuration", an outline of the processing performed by the monitoring device 101 (or monitoring system) etc. will be explained. Note that parts that have already been explained with reference to Fig. 1 may be omitted below.
[0025] As shown in FIG. 2 (and as already shown in FIG. 1), the monitoring device 101 (or the monitoring system) can acquire variable values 1811 and output information 307 from the monitored device 180. Also, as shown in FIG. 2, the monitoring device 101 (or the monitoring system) may be capable of intercommunicating with a distribution server 299 via a network 298. As will be described later as Modification A or Modification B, some setting information may be transmitted and received from the distribution server 299 to the monitoring device 101 (or the monitoring system). The setting information transmitted and received may be one or both of alert condition information 401 (see FIG. 4) and state definition information 601 (see FIG. 6). Alternatively, the setting information transmitted and received may be variable value acquisition target identification information 801 (see FIG. 8).
[0026] 2-1. Operation example of an automatic analyzer as an example of a monitored device (As already shown in FIG. 1 ) The monitored device 180 may, for example, output output information 307, which is the processing result, for each processing target (processing identification information 195 (processing ID)). Furthermore, it may be difficult to grasp an abnormality or the state of the monitored device 180 from the output information 307 alone. The monitored device 180 may, for example, be an embedded device. Alternatively, the monitored device 180 may be an automatic analyzer. The monitored device 180, which is an automatic analyzer, may output output information 307, which is the analysis result, for each analysis target (e.g., specimen 302). In the following, an example in which the monitored device 180 is an automatic analyzer will be mainly described.
[0027] 3 shows an example 300 of the operation of the monitored device 180 (automated analyzer) when the monitored device 180 is an automated analyzer. FIG. 3 shows that, as time passes, the situation in the same reaction cell 301 transitions from what is shown on the left to what is shown on the right. In this operation example 300, an initial stage (Init) occurs immediately before an operation stage (Operation) in which a sample 302 to be analyzed (assigned process identification information 195 (process ID)) undergoes actual processing by the automated analyzer, and a cleaning stage (Clean) occurs immediately after the operation stage (Operation) in which a used reaction cell 301 is cleaned. When cleaning of the reaction cell 301 in the cleaning stage (Clean) is completed, the automated analyzer returns to the initial stage (Init) again. After returning to the initial stage (Init), the automated analyzer starts an operation stage (Operation) for the next sample 302 (next process identification information 195 (process ID)). The automated analyzer can determine in which stage the operation it is performing on the reaction cell 301, etc., falls. The monitored process 192 executed by the automatic analyzer manages, as a variable s, the identification information of the stage to which the operation being performed on the reaction cell 301, etc. belongs (see the record (row) in which the value of the state definition information identification information 611 (state definition information ID) is “st3” (see FIG. 6)).
[0028] An example of operation 300 of the automated analyzer will be explained below step by step. In phase 1 (ph1), the automatic analyzer is in the initial stage (Init) (the variable value of the variable s is 1), and the reaction cell 301 has been washed and does not hold a specimen 302. The reaction cell 301 is like a container that holds the specimen 302 and causes the specimen 302 to react with a reagent 303 inside the reaction cell 301, thereby performing processing on the specimen 302. In phase 2 (ph2), the automatic analyzer moves to the operation stage (Operation). (The variable value of variable s transitions from 1 to 2.) The automatic analyzer then stores a sample 302 in a reaction cell 301. This sample 302 is assigned process identification information 195 (process ID). In the example of FIG. 3, the value of the process ID is sa1. The automatic analyzer may perform some kind of process on the sample 302 stored in the reaction cell 301 depending on the content of the analysis.
[0029] In phase 3 (ph3), the automated analyzer dispenses a reagent 303 into the reaction cell 301. The automated analyzer may use a reagent probe 304 as a device for providing the reagent 303 to the reaction cell 301. The reagent probe 304 is a tubular device, and the reagent 303 passes through the inside of the tube. The automatic analyzer is capable of detecting clogging of the reagent probe 304. The monitored process 192 executed by the automatic analyzer manages whether or not the reagent probe 304 is clogged as the variable value of the variable c (see the record (row) in which the value of the state definition information identification information 611 (state definition information ID) is "st2" (see FIG. 6)). The automatic analyzer also has a reagent inventory 305 as a supply source for supplying the reagent 303 to the reagent probe 304. The automatic analyzer is capable of detecting the stock amount of the reagent 303 in the reagent inventory 305. The monitored process 192 executed by the automatic analyzer manages the stock amount of the reagent 303 in the reagent inventory 305 as the variable value of the variable amount (see the record (row) in FIG. 6 where the value of the state definition information identification information 611 (state definition information ID) is "st1" (see FIG. 6)).
[0030] In phase 4 (ph4), the reaction cell 301 holds a sample 306 containing a reagent. In phase 5 (ph5), the automatic analyzer may perform processing on the reagent-containing sample 306 held in the reaction cell 301 according to the content of the analysis. In phase 6 (ph6), the automated analyzer performs a measurement on the reagent-containing sample 306 held in the reaction cell 301 according to the content of the analysis. The automated analyzer may include the measurement results themselves in the output information 307, or may include information obtained by performing some processing on the measurement results in the output information 307. The automated analyzer includes the process identification information 195 (processing ID) (here, sa1) in the output information 307 and then outputs the output information 307. (Alternatively, if the value of the process identification information 195 (processing ID) is self-evident, the automated analyzer may output the output information 307 without adding the process identification information 195 (processing ID).) This output information 307 may be acquired by the monitoring device 101 (or monitoring system). Phase 5 (ph5) and phase 6 (ph6) may be performed integrally.
[0031] In phase 7 (ph7), the automated analyzer discards the analyzed specimen 302. As a result, the reaction cell 301 becomes empty. In phase 8 (ph8), the automated analyzer moves to the cleaning stage (clean). (The variable value of the variable s transitions from 2 to 3.) The automated analyzer cleans the reaction cell 301. The automated analyzer may, for example, provide a cleaning solution 308 to the reaction cell 301 to clean the reaction cell 301. In phase 1 (ph1) again, the automatic analyzer transitions to the initial state (Init) (the variable value of the variable s transitions from 3 to 1). The reaction cell 301 has been washed and does not hold the specimen 302. In phase 2 (ph2), the automated analyzer transitions to the operation stage (Operation). (The variable value of variable s transitions from 1 to 2.) The automated analyzer then stores the next sample 302 in the reaction cell 301. This next sample 302 is assigned process identification information 195 (process ID). In the example of FIG. 3, the value of the process ID is sa2. The operations performed by the automated analyzer in the following phases may be similar to those for the phases already described, except that the process identification information 195 (process ID) for the sample 302 to be analyzed is sa2.
[0032] The following describes the processing and the like performed by the monitoring device 101 (or the monitoring system) on the monitored device 180, which is an automatic analyzer that performs the operations shown in the above-described operation example 300. However, the operation performed by the automatic analyzer may be an operation other than that of operation example 300. As will be shown later as Modification G, the monitored device 180 may be a device other than an automatic analyzer. The processing and the like of the monitoring device 101 (or the monitoring system) can be determined appropriately depending on the operation performed by the monitored device 180.
[0033] 2-2. Overview of the functional configuration of the monitoring device (monitoring system) 2, the monitoring device 101 (or monitoring system) may have, as functional units, an alert condition management unit 1499, a state management unit 1599, a state value generation unit 1802, a monitored device output receiving unit 2201, and a setting information receiving unit 250, in addition to the variable value acquisition target identification unit 1601, variable value acquisition unit 1801, alert condition success / failure determination unit 2001, and display output control unit 2202 (already shown in FIG. 1). The variable value acquisition target identification unit 1601 may have, as internal functional units, a state identification unit 1611, a variable identification unit 1612, a code analysis unit 1613, and a variable value acquisition target identification information generation unit 1614. The alert condition success / failure determination unit 2001 may have, as internal functional units, a state transition verification unit 2011. Each of these functional units may be realized by a program for that functional unit being executed on the computer architecture 1300 of the monitoring device 101 (or monitoring system) (as illustrated in FIG. 13), or may be implemented in a more hardware-based manner. 2, the monitoring device 101 (or monitoring system) may have, as storage units for various information, an alert condition information storage unit 400, a state definition information storage unit 600, a variable value acquisition target identification information storage unit 800, a state transition history information storage unit 900, an alert condition success / failure information storage unit 1000, a display output information storage unit 1100, and a monitoring target software code storage unit 1602. Each of these storage units may be realized by a recording area or storage area in a non-volatile recording medium 1303 (recording device) or a storage device 1302 (memory) within a computer architecture 1300 of the monitoring device 101 (or monitoring system) (as exemplified in FIG. 13). Alternatively, some or all of these storage units may be realized by some kind of recording device or storage device available to (or capable of communicating with) the monitoring device 101 (or monitoring system). As shown in FIG. 2, the monitoring device 101 (or monitoring system) may control the display of any of the alert condition management screen 500, the status definition management screen 700, or the result screen 1200 to a user of the monitoring device 101 (or monitoring system). These screens may be displayed on a display or output device 1307 within the computer architecture 1300 of the monitoring device 101 (or monitoring system) (as exemplified in FIG. 13). Alternatively, these screens may be displayed on any display or output device available to (or communicable with) the monitoring device 101 (or monitoring system). Note that with regard to the result information 2220 displayed on the result screen 1200, instead of or in addition to being displayed on the result screen 1200, the result information 2220 may be printed (output) on an output device or the like or stored (output) in a recording device or the like. Below, an overview of the roles played by each of the function unit, storage unit, and screen will be explained. (A more detailed explanation will be given in "4. Processing Performed by the Embodiments of the Present Disclosure.")
[0034] 2.2.1. Overview of the Alert Condition Management Unit (Figures 4 and 5) The alert condition management unit 1499 controls the display of an alert condition management screen 500. The alert condition management unit 1499 also generates alert condition information 401 based on information input via the alert condition management screen 500, and stores the alert condition information 401 in the alert condition information storage unit 400.
[0035] 2.2.1.1. Example of alert condition information stored in the alert condition information storage unit FIG. 4 shows the alert condition information storage unit 400. The alert condition information storage unit 400 may record a record (row) for each alert condition information 401. The record (row) may include alert condition information identification information 411 (alert condition information ID) and an alert condition 412. (Alternatively, the alert condition information identification information 411 (alert condition information ID) may not be explicitly recorded in the record (row) because the alert condition information identification information 411 (alert condition information ID) is implicitly determined depending on the recording position of the record (row).) The alert condition 412 indicates a condition for issuing an alert for the monitored device 180. As will be described later, the alert condition 412 may indicate, for example, some status value 1821 in the monitored device 180 or an abnormality related to the transition of the status value 1821. (Note that if the state is not defined, the alert condition 412 may indicate an abnormality in some variable value 1811 or the transition of the variable value 1811 in the monitored device 180.)
[0036] In the example of FIG. 4, the alert condition 412 is defined by the state value 1821 of the state. The state (state name 612 (see FIG. 6)) referred to here is "Shortage," "Clot," and "CellStatus" in the example of FIG. 4, and the definitions of the state values 1821 that these states can take are shown in the state definition information 601 (see FIG. 6). Examples of the state value 1821 shown in FIG. 4 are "CellStatus = Init," "CellStatus = Operation," "CellStatus = Clean," "Shortage = True," and "Clot = True." In addition to the examples of the state value 1821 shown in FIG. 4, the state value 1821 can also be "Shortage = False" and "Clot = False" (see FIG. 6). In the example of FIG. 4, "CellStatus = Operation and Shortage = True" is recorded as the alert condition 412 in a record whose alert condition information identification information 411 (alert condition information ID) value is "co1." The CellStatus status indicates one of the three stages that the reaction cell 301 described in FIG. 3 can be in (see FIG. 6). The Shortage status indicates whether the inventory amount of the reagent 303 held in the reagent inventory 305 described in FIG. 3 is zero (see FIG. 6). In other words, "CellStatus = Operation and Shortage = True" indicates that the usage status of the reaction cell 301 is in the operation stage (CellStatus = Operation), but the inventory of the reagent 303 is zero (Shortage = True). If the automated analyzer, which is the monitored device 180, continues to operate under this condition, the reagent 303 will not be dispensed properly into the reaction cell 301, and the output information 307, which is an inappropriate analysis result, will be output. Therefore, it is appropriate to issue an alert. In the example of FIG. 4, in the record in which the value of the alert condition information identification information 411 (alert condition information ID) is "co2," "CellStatus = not (Init → Operation → Clean → Init)" is recorded as the alert condition 412. In the example shown in FIG. 3, the automated analyzer, which is the monitored device 180, transitions (if operating normally) from the initial stage (Init) to the operation stage (Operation), transitions (transitions) from the operation stage (Operation) to the cleaning stage (clean), and transitions (transitions) from the cleaning stage (clean) to the initial stage (Init). "CellStatus = not (Init → Operation → Clean → Init)" indicates that the transition order of the status CellStatus deviates from the correct transition order between the three stages that the reaction cell 301 can have, which is "Init → Operation → Clean → Init." For example, if the state CellStatus transitions (transitions) from the state value Operation to the state value Init (directly, without passing through the state value Clean), the alert condition 412 indicated by "CellStatus = not (Init → Operation → Clean → Init)" is met. If the automated analyzer, which is the monitored device 180, continues to operate under the condition that "CellStatus = not (Init → Operation → Clean → Init)" is met, for example, after performing an analysis on a certain sample 302, an analysis on the next sample 302 may be performed without cleaning the reaction cell 301. In this way, if a combination of state values 1821 should not occur, it is appropriate to issue an alert. The above example illustrates an example of an analysis process of an automated analyzer, which is the monitored device 180, when the device is operating normally, in which the analysis process has a relatively simple order: a transition from an initial stage (Init) to an operation stage (Operation), a transition from the operation stage (Operation) to a cleaning stage (Clean), and a transition from the cleaning stage (Clean) back to the initial stage (Init). The automated analyzer may handle more types of stages and analysis processes with more complex order relationships. For example, after a specific type of operation stage (Operation) indicating the execution of a specific type of analysis, a specific type of cleaning stage (Clean) using a specific type of cleaning solution 308 or a specific type of cleaning method may be performed. In this case, the alert condition 412 may be established if, for example, the automated analyzer performs a normal cleaning stage (Clean) that is not a specific type of cleaning stage, even after a specific type of operation stage (Operation). In this way, even if a normal analysis process has many types of stages and a complex order relationship, if the alert condition 412 (alert condition information 401) is properly defined, the monitoring device 101 (or monitoring system) of the present disclosure can detect errors in the analysis process in the automatic analyzer, which is the monitored device 180. In the example of FIG. 4, "Clot = True" is recorded as the alert condition 412 in a record whose alert condition information identification information 411 (alert condition information ID) value is "co3." The status Clot indicates whether or not a clog has occurred in the tube of the reagent probe 304 shown in FIG. 3 (see FIG. 6). In other words, "Clot = True" indicates that a clog has occurred in the tube of the reagent probe 304. If the automated analyzer, which is the monitored device 180, continues to operate under this condition, the reagent 303 will not be properly dispensed into the reaction cell 301, and output information 307 will be output, which is an inappropriate analysis result. In this way, if a status value 1821 that should not occur appears, it is appropriate for an alert to be issued. An example of an abnormality that may occur in the automatic analyzer, which is the monitored device 180, is a mix-up of the specimen 302. By defining the status of the automatic analyzer and then defining the alert condition 412 (alert condition information 401), the monitoring device 101 (or monitoring system) can also detect a mix-up of the specimen 302 in the automatic analyzer.
[0037] In the above, the alert condition 412 is defined using the status value 1821. As shown in FIG. 6, which will be described later, each of the status values 1821 can be defined using the variable value 1811. Therefore, even if the alert condition 412 becomes complicated when defined using the variable value 1811, if the complex definition content is included in the definition of the status value 1821 (using the variable value 1811), the alert condition 412 can often be defined simply when defined using the status value 1821. In other words, the amount of writing required to define the alert condition 412 can be reduced. This increases convenience for those who wish to define the alert condition 412.
[0038] Note that the monitoring apparatus 101 (or monitoring system) or the alert condition management unit 1499 may operate to define the alert condition 412 using the variable value 1811, instead of or in addition to defining the alert condition 412 using the state value 1821. In this case, it may not be necessary to prepare the state definition information 601 that indicates the definition of the state value 1821.
[0039] 2.2.1.2. Overview of the Alert Condition Management Screen FIG. 5 shows an alert condition management screen 500. A user of the monitoring device 101 (or monitoring system) can edit and confirm the contents of a newly defined alert condition 412 (storing the alert condition information 401 in the alert condition information storage unit 400) via the alert condition management screen 500 (a user interface indicated by a new alert condition input field 501 and a confirmation icon 502 therein). A user of the monitoring device 101 (or monitoring system) can delete an already defined alert condition 412 (alert condition information 401) (delete the alert condition information 401 from the alert condition information storage unit 400) via the alert condition management screen 500 (the user interface indicated by the delete alert condition checkbox 504 and the delete icon 505 therein). By viewing the alert condition management screen 500 (the defined state list 506 therein), a user of the monitoring device 101 (or monitoring system) can refer to the state definition information 601, which shows the definitions of the state values 1821 of the states that can be used to define the alert conditions 412 (see Figure 6). Details of the alert condition management screen 500 and details of the processing of the alert condition management unit 1499 that controls the alert condition management screen 500 will be explained in "4. Processing performed by an embodiment of the present disclosure" using FIG.
[0040] 2.2.2. Overview of the state management unit (Fig. 6, Fig. 7) The state management unit 1599 controls the display of a state definition management screen 700. The state management unit 1599 also generates state definition information 601 based on information input via the state definition management screen 700, and stores the state definition information 601 in the state definition information storage unit 600.
[0041] 2.2.2.1. Example of state definition information stored in the state definition information storage unit 6 shows a state definition information storage unit 600. The state definition information storage unit 600 may store a record (row) for each state definition information 601. The record (row) may include state definition information identification information 611 (state definition information ID), a state name 612, a first state value 613, a first variable value 614, a second state value 615, a second variable value 616, a third state value 617, and a third variable value 618 (and, as necessary, items following the fourth state value and fourth variable value pair). (Alternatively, the state definition information identification information 611 (state definition information ID) may not be explicitly stored in the record (row) for reasons such as the state definition information identification information 611 (state definition information ID) being implicitly determined depending on the recording position of the record (row).) The state name 612 indicates the name of a state defined for the monitored device 180. In the example of Fig. 6, in each record (row) where the value of the state definition information identification information 611 (state definition information ID) is "st1", "st2", or "st3", "Shortage", "Clot", or "CellStatus" is recorded as the state name 612. As already explained, the state "Shortage" indicates whether the inventory amount of the reagent 303 held in the reagent inventory 305 is zero or not, the state "Clot" indicates whether the tube of the reagent probe 304 is clogged or not, and the state "CellStatus" indicates one of three stages that the reaction cell 301 can be in (see Fig. 3). In each record (row) of the state definition information storage unit 600, when the condition in the item of the first variable value 614 is met for the variable value 1811, the state value indicated in the item of the first state value 613 becomes 1821. The same holds true for the pair of the second variable value 616 and the second state value 615, and the pair of the third variable value 618 and the third state value 617.
[0042] 6, the record (row) in which the value of the state definition information identification information 611 (state definition information ID) is “st1” indicates that when “amount=0” is established in the variable value 1811, “Shortage=True” is established in the state value 1821, and when “amount>0” is established in the variable value 1811, “Shortage=False” is established in the state value 1821. Note that amount is one of the variables 181 handled by the monitored process 192, and indicates the inventory amount of the reagent 303 in the reagent inventory 305. 6, the record (row) in which the value of the state definition information identification information 611 (state definition information ID) is "st2" indicates that when "c=True" is established in the variable value 1811, the state value 1821 becomes "Clot=True," and when "c=False" is established in the variable value 1811, the state value 1821 becomes "Clot=False." Note that c is one of the variables 181 handled by the monitored process 192, and indicates whether the tube of the reagent probe 304 is clogged or not. 6, the record (row) in which the value of the state definition information identification information 611 (state definition information ID) is "st3" indicates that when "s=1" is true in the variable value 1811, the state value 1821 becomes "CellStatus=Init," when "s=2" is true in the variable value 1811, the state value 1821 becomes "CellStatus=Operation," and when "s=3" is true in the variable value 1811, the state value 1821 becomes "CellStatus=Clean." Note that s is one of the variables 181 handled by the monitored process 192, and indicates the stage of the usage status of the reaction cell 301. 6, the state value 1821 is a discrete value (True, False, Init, Operation, Clean), but the state value 1821 may be a continuous value (or an integer value, fixed-point number, or floating-point number that can be treated as a similar continuous value). In this regard, the state value 1821 used to define the alert condition 412 may also specify a range. For example, if the state value 1821 is equal to or greater than a certain value, the alert condition 412 may be satisfied.
[0043] 2.2.2.2.2. Overview of the Status Definition Management Screen FIG. 7 shows a state definition management screen 700. A user of the monitoring device 101 (or monitoring system) can edit and confirm the contents of the newly defined state (state name 612) and state value 1821 (storing the state definition information 601 in the state definition information storage unit 600) via the state definition management screen 700 (a user interface indicated by a new state name input field 701, a confirm icon 702, a state value input field 704, a variable value input field 705, a row addition icon 706, a state value deletion checkbox 707, and a row deletion icon 708). A user of the monitoring device 101 (or monitoring system) can delete an already defined state definition (state definition information 601) (delete the state definition information 601 from the state definition information storage unit 600) via the state definition management screen 700 (a user interface indicated by a state deletion checkbox 710 or a deletion icon 711 therein). Details of the state definition management screen 700 and details of the processing of the state management unit 1599 that controls the state definition management screen 700 will be explained in "4. Processing performed by an embodiment of the present disclosure" using FIG.
[0044] 2-2-3. Overview of the variable value acquisition target identification unit (Figure 8) As shown in FIG. 2 (and FIG. 16 described later), the variable value acquisition target identification unit 1601 may have, as internal functional units, a state identification unit 1611, a variable identification unit 1612, a code analysis unit 1613, and a variable value acquisition target identification information generation unit 1614. (If a state is not defined for the monitored device 180 and the alert condition 412 is defined by one or more variable values 1811, the variable value acquisition target identification unit 1601 may have, as internal functional units, the variable identification unit 1612, the code analysis unit 1613, and the variable value acquisition target identification information generation unit 1614, but may not have the state identification unit 1611.) The state identification unit 1611 uses the alert condition information 401 stored in the alert condition information storage unit 400 to identify the state (state name 612 ) corresponding to the state value 1821 included in the definition of the alert condition 412 . The variable identification unit 1612 uses the state definition information 601 stored in the state definition information storage unit 600 to identify the acquisition target variable 183 corresponding to the state value 1821 of the state (state name 612) identified by the state identification unit 1611. (Note that if a state is not defined for the monitored device 180 and the monitoring device 101 (or monitoring system) does not have the state identification unit 1611, the variable identification unit 1612 may identify the acquisition target variable 183 that affects whether or not the alert condition 412 is satisfied.) The code analysis unit 1613 scans (analyzes) the monitored software code 1620 (see FIG. 16), which is the code of the monitored software 190 stored in the monitored software code storage unit 1602, and identifies locations in the code where the variable value 1811 of the acquisition target variable 183 identified by the variable identification unit 1612 may be rewritten. The variable value acquisition target specification information generation unit 1614 generates variable value acquisition target specification information 801 as information that associates acquisition target process identification information 812 indicating the acquisition target process 182 corresponding to the location (in the monitoring target software code 1620) specified by the code analysis unit 1613 with acquisition target variable identification information 813 indicating the acquisition target variable 183 specified by the variable specification unit 1612. The variable value acquisition target specification information generation unit 1614 stores the generated variable value acquisition target specification information 801 in the variable value acquisition target specification information holding unit 800.
[0045] 8 shows a variable value acquisition target specific information storage unit 800. The variable value acquisition target specific information storage unit 800 may record a record (row) for each variable value acquisition target specific information 801. The record (row) may include variable value acquisition target specific information identification information 811 (variable value acquisition target specific information ID), acquisition target process identification information 812, and acquisition target variable identification information 813. (Alternatively, the variable value acquisition target specific information identification information 811 (variable value acquisition target specific information ID) may not be explicitly recorded in the record (row) for reasons such as the variable value acquisition target specific information identification information 811 (variable value acquisition target specific information ID) being implicitly determined depending on the recording position of the record (row).) The acquisition target process identification information 812 may be information in any format as long as it can identify the acquisition target process 182. In the example of Fig. 8, the acquisition target process identification information 812 is a combination of the program name of the monitoring target software 190 and a line number indicating the location in the monitoring target software code 1620. The acquisition target process identification information 812 may be information in other formats. For example, as will be described later as Modification C, the acquisition target process identification information 812 may identify an object in a program created using object-oriented programming. Alternatively, the acquisition target process identification information 812 may identify a subroutine or function in a program created using procedural programming. The acquisition target variable identification information 813 may be information in any format as long as it can identify the acquisition target variable 183. In the example of Fig. 8, the acquisition target variable identification information 813 is information indicating the variable name.
[0046] Details of the processing of the variable value acquisition target specifying unit 1601 and the like will be described in "4. Processing Performed by the Embodiments of the Present Disclosure" using FIGS. 16 and 17.
[0047] 2.2.4. Overview of the variable value acquisition unit, state value generation unit, and state transition history information storage unit (Fig. 9) 2, the monitoring device 101 (or the monitoring system) may have a state value generation unit 1802 in addition to the variable value acquisition unit 1801 (already shown in FIG. 1). That is, the monitoring device 101 (or the monitoring system) may generate a state value 1821 using a variable value 1811 acquired from the monitored device 180. The outline of the functions performed by the variable value acquisition unit 1801 has already been explained with reference to FIG. The state value generation unit 1802 generates one or more state values 1821 based on one or more variable values 1811 acquired by the variable value acquisition unit 1801 and the state definition information 601 held by the state definition information holding unit 600. The state value generation unit 1802 determines whether or not there is a state (in which the state value 1821 generated by itself is different from the previous value (current state value 1822 (see FIG. 18 )) (in which the state value 1821 has changed (transitioned)) among the states defined for the monitored device 180. If there is a state in which the state value 1821 has changed (transitioned), the state value generation unit 1802 holds state transition history information 901 indicating the change (transition) of the state value 1821 of that state in the state transition history information holding unit 900. In other words, the state transition history information holding unit 900 holds time-series information of the state values 1821.
[0048] 9 shows a state transition history information storage unit 900. The state transition history information storage unit 900 may record a record (row) for each piece of state transition history information 901. The record (row) may include state transition history information identification information 911 (state transition history information ID), process identification information 195 (processing ID), time 196, state name 612, pre-transition state value 1823, and (post-transition) state value 1821. (Alternatively, the state transition history information identification information 911 (state transition history information ID) may not be explicitly recorded in the record (row) for reasons such as the state transition history information identification information 911 (state transition history information ID) being implicitly determined depending on the recording position of the record (row).) The processing identification information 195 (processing ID) included in a record (row) of the state transition history information 901 is intended to identify the processing object (analysis object) being handled by the monitored device 180 when a change (transition) in the state value recorded in that record (row) occurred. The time 196 included in a record (row) of the state transition history information 901 indicates the time at which a change (transition) in the state value recorded by the record (row) occurred. The format of the time 196 may be any format. For example, the time 196 may conform to standard time, or may indicate the elapsed time since the monitored device 180 was started, or may indicate the elapsed time since the monitored software 190 was started, or may indicate the elapsed time since the processing of the first processing target (analysis target) started. The unit time when the value of the time 196 is recorded in the record (row) may be any unit time, but for example, the unit time may be milliseconds. The state name 612 included in a record (row) of the state transition history information 901 indicates the state name of the state in which a change (transition) in the state value recorded in the record (row) occurred. The pre-transition state value 1823 included in a record (row) of the state transition history information 901 indicates the state value immediately before a change (transition) in the state value recorded by the record (row) occurs. Note that the pre-transition state value 1823 can also be determined by referring to the state values 1821 held by the record group held by the state transition history information holding unit 900 along the time series indicated by the time 196. Therefore, the record (row) of the state transition history information 901 does not need to have the pre-transition state value 1823. The (post-transition) state value 1821 included in a record (row) of the state transition history information 901 indicates the state value resulting from the change (transition) in the state value recorded in the record (row).
[0049] Details of the processing by the variable value acquisition unit 1801 and the state value generation unit 1802 will be described in "4. Processing Performed by the Embodiments of the Present Disclosure" using FIGS. 18 and 19.
[0050] 2.2.5. Overview of the Alert Condition Success / Failure Determination Unit (Figure 10) The outline of the function performed by the alert condition success / failure determination unit 2001 has already been explained with reference to FIG. If the alert condition 412, as shown in the record (row) in Figure 4 where the value of the alert condition information identification information 411 (alert condition information ID) is "co2", includes the order relationship of the state value 1821 on a time series (the manner of change (transition) of the state value 1821), the alert condition success / failure determination unit 2001 may have a state transition verification unit 2011 as an internal functional unit. The state transition verification unit 2011 refers to a plurality of pieces of state transition history information 901 stored in the state transition history information storage unit 900. The state transition verification unit 2011 compares the time series information of the state values 1821 based on the referenced plurality of pieces of state transition history information 901 with the order relationship (the manner of change (transition) of the state values 1821) on the time series included in the alert condition 412 (alert condition information 401) to determine whether the alert condition 412 is established. An alert condition success / failure determination unit 2001 , which may include a state transition verification unit 2011 , stores information indicating whether or not the alert condition 412 is satisfied as alert condition success / failure information 1001 in the alert condition success / failure information storage unit 1000 .
[0051] 10 shows an alert condition success / failure information storage unit 1000. The alert condition success / failure information storage unit 1000 may record a record (row) for each alert condition success / failure information 1001. The record (row) may include alert condition success / failure information identification information 1011 (alert condition success / failure information ID), process identification information 195 (process ID), time 196, state name 612, and established alert content 1012. (Alternatively, the alert condition success / failure information identification information 1011 (alert condition success / failure information ID) may not be explicitly recorded in the record (row) for reasons such as the alert condition success / failure information identification information 1011 (alert condition success / failure information ID) being implicitly determined depending on the recording position of the record (row).) The process identification information 195 (processing ID) included in the record (row) of the alert condition success / failure information 1001 is intended to identify the process target (analysis target) handled by the monitored device 180 when the alert condition 412 recorded in the record was met. The time 196 included in a record (row) of the alert condition success / failure information 1001 indicates the time when the alert condition 412 recorded in that record (row) was satisfied. The format of the time 196 may be any format. For example, the time 196 may conform to standard time, or may indicate the elapsed time since the monitored device 180 was started, or may indicate the elapsed time since the processing of the first processing target (analysis target) started. The fulfilled alert content 1012 included in a record (row) of the alert condition fulfillment information 1001 indicates which alert condition 412 has been fulfilled. The fulfilled alert content 1012 may include alert condition information identification information 411 (alert condition information ID), for example, in the format "Alert condition 'co1' has been fulfilled," as shown in FIG. 10. Alternatively, the fulfilled alert content 1012 may also include the content of the alert condition 412 itself, in the format "Alert condition 'co1' (CellStatus = Operation and Shortage = True) has been fulfilled."
[0052] Details of the processing by the alert condition success / failure determination unit 2001 and the like will be described in "4. Processing Performed by an Embodiment of the Present Disclosure" using FIGS. 20 and 21.
[0053] 2-2-6. Overview of the monitored device output receiver (Figure 11) The monitored device output receiving unit 2201 receives output information 307 output from the monitored device 180. The monitored device output receiving unit 2201 generates display output information 1101, which is information that associates the received output information 307 with alert condition success / failure information identification information 1011 (alert condition success / failure information ID). The alert condition success / failure information identification information 1011 (alert condition success / failure information ID) is identification information for the alert condition success / failure information 1001 held in the alert condition success / failure information holding unit 1000. The monitored device output receiving unit 2201 stores the generated display output information 1101 in the display output information holding unit 1100.
[0054] 11 shows a display output information storage unit 1100. The display output information storage unit 1100 may record a record (row) for each piece of display output information 1101. The record (row) may include display output information identification information 1111 (display output information ID), process identification information 195 (processing ID), output information 307, and alert condition success / failure information identification information 1011 (alert condition success / failure information ID). (Alternatively, the display output information identification information 1111 (display output information ID) may not be explicitly recorded in the record (row) for reasons such as the display output information identification information 1111 (display output information ID) being implicitly determined depending on the recording position of the record (row).) The process identification information 195 (processing ID) included in the record (row) of the display output information 1101 is used to identify the process target (analysis target) handled by the monitored device 180. The output information 307 included in a record (row) of the display output information 1101 indicates the output information 307 output from the monitored device 180. In other words, the output information 307 indicates the output information obtained as a result of the monitored device 180 processing (analyzing) the processing target (analysis target) indicated by the processing identification information 195 (processing ID) included in the same record (row). The alert condition success / failure information identification information 1011 (alert condition success / failure information ID) that may be included in a record (row) of the display output information 1101 is intended to identify the alert condition success / failure information 1001 related to the alert condition 412 that has been met (when some alert condition is met) for the processing target (analysis target) indicated by the processing identification information 195 (processing ID) included in the same record. Alternatively, a record (row) of the display output information 1101 may include information (see FIG. 10) included in the alert condition success / failure information 1001 instead of or in addition to the alert condition success / failure information identification information 1011 (alert condition success / failure information ID). Accordingly, the manner in which the display output information 1101 is generated for the monitored device output receiving unit 2201 may be changed.
[0055] Details of the processing by the monitoring target device output receiving unit 2201 will be explained in "4. Processing Performed by an Embodiment of the Present Disclosure" using FIGS. 22 and 23.
[0056] 2.2.7. Overview of the display output control unit (Figure 12) The functions performed by the display output control unit 2202 have already been outlined in conjunction with FIG. 1, the display output control unit 2202 reads out the display output information 1101 stored in the display output information storage unit 1100. As shown in Fig. 11, if the display output information 1101 includes alert condition success / failure information identification information 1011 (alert condition success / failure information ID) but does not include the alert condition success / failure information 1001 itself, the display output control unit 2202 may refer to the alert condition success / failure information 1001 stored in the alert condition success / failure information storage unit 1000. Furthermore, if the result information 2220 also includes the content of the alert condition 412 that has been met, the display output control unit 2202 may refer to the alert condition information 401 stored in the alert condition information storage unit 400. Furthermore, if the result information 2220 also includes information regarding the change (transition) in the state value 1821 before and after the time when the alert condition 412 was met, the display output control unit 2202 may refer to the state transition history information 901 stored in the state transition history information storage unit 900. The display output control unit 2202 controls so that the generated result information 2220 is displayed as the result screen 1200, or controls so that the generated result information 2220 is output to some kind of device (output device, recording device, etc.).
[0057] Figure 12 shows a results screen 1200. The upper part of Figure 12 shows a front page 1201 of the results screen 1200. The lower part of Figure 12 shows a detailed information page 1202 of the results screen 1200 regarding the alert condition 412 that was met. The front page 1201 displays a list of output information 307 for each process identification information 195 (processing ID) and information 1211 indicating whether or not an alert exists. Of the information 1211 indicating whether or not an alert exists, "Yes" is accompanied by a hyperlink 1212. Clicking on this hyperlink 1212 with a mouse or the like displays the corresponding detailed information page 1202. The detailed information page 1202 shows detailed information about one piece of process identification information 195 (process ID) for which any of the alert conditions 412 has been met. The detailed information page 1202 may include information 1222 indicating the content of the alert condition that has been met, and information 1223 illustrating the change (transition) in the state value 1821 before and after the time the alert condition was met. Details of the result screen 1200 and details of the processing of the display output control unit 2202 that controls the result screen 1200 will be explained in "4. Processing performed by an embodiment of the present disclosure" using Figures 22 and 24.
[0058] 2-2-8. Overview of the setting information receiving unit, etc. In the above, the user of the monitoring device 101 (or monitoring system) inputs the alert condition information 401 via the alert condition management screen 500, and inputs the status definition information 601 via the status definition management screen 700. Here, one or both of the alert condition information 401 and the state definition information 601 may be distributed from the distribution server 299 to the monitoring device 101 (or the monitoring system). The setting information receiving unit 250 included in the monitoring device 101 (or monitoring system) may receive one or both of the alert condition information 401 and the state definition information 601 transmitted from the distribution server 299 via the network 298. The setting information receiving unit 250 stores the received alert condition information 401 in the alert condition information holding unit 400. The setting information receiving unit 250 also stores the received state definition information 601 in the state definition information holding unit 600.
[0059] The distribution server 299 may be, for example, a server managed by the manufacturer of the monitored device 180 or the monitoring device 101 (or the monitoring system). By using an embodiment in which either or both of the alert condition information 401 and the state definition information 601 are distributed via the network 298, either or both of the alert condition information 401 and the state definition information 601, which are created based on knowledge obtained about devices of the same type as the monitored device 180 or similar devices (for example, knowledge about abnormalities that may occur in the monitored device 180), can be automatically applied to the monitoring device 101 (or the monitoring system).
[0060] The distribution server 299 and the setting information receiving unit 250 will also be mentioned in the explanation of Modifications A and B below.
[0061] 3. Computer Architecture for Implementing Embodiments of the Present Disclosure (FIG. 13) Fig. 13 shows a computer architecture 1300 for realizing the monitoring device 101 (or monitoring system) according to an embodiment of the present disclosure. The monitored device 180 and distribution server 299 shown in Fig. 2 can also be realized by the same or similar computer architecture as that shown in Fig. 13. The computer architecture 1300 shown in Fig. 13 may also be called an information processing device or an information processing system. To realize the monitoring device 101 (or the monitoring system), some or all of the processing unit 1301, storage device 1302, non-volatile recording medium (storage device) 1303, external recording medium drive 1304, input device 1306, display or output device 1307, communication device 1308, external input / output port 1309, and reading device 1310 may be interconnected via an interconnection unit 1311. (Note that some or all of the interconnection unit 1311 may be a network. In that case, the monitoring device 101 (or the monitoring system) is realized by multiple devices connected via the network.) The arithmetic processing device 1301 may be, for example, a processor. Examples of this processor include a CPU, an MPU, or a GPU. Alternatively, the processor referred to here may be any other semiconductor device that executes predetermined processing. Furthermore, the arithmetic processing device 1301 may be one or more (micro)processors. For example, the arithmetic processing device 1301 may be a multi-core processor having multiple processing cores (CPU cores). The storage device 1302 may be, for example, a memory. The non-volatile recording medium (recording device) 1303 may be, for example, a non-volatile memory (e.g., a flash memory) or a non-volatile disk device. The external recording medium drive 1304 may be, for example, a disk drive. The input device 1306 may be, for example, a mouse, a keyboard, an imaging device, a sensor, a touch panel, or a pointing device. The display or output device 1307 may be, for example, a display, a printer, or a speaker. The communication device 1308 may be, for example, a communication device for wired communication or a communication device for wireless communication. The communication device 1308 may be a network interface device (NIC) that controls communication with other systems, devices, terminals, or servers according to a predetermined protocol. The interconnection unit 1311 may be, for example, a bus or a crossbar switch. (As described above, part or all of the interconnection unit 1311 may be a network.)
[0062] The non-volatile recording medium (recording device) 1303 may record various programs included in the program group 1331 (for example, programs for realizing the functional configuration related to the present disclosure; for example, various programs for implementing each of the functional units realized in the monitoring device 101 (or monitoring system)), various data groups included in the data group 1332, or information included in the various information 1333. The program group 1331 may include various programs for realizing the functional units (excluding the storage unit) indicated as "units" in the functional configuration diagrams of Figures 1, 2, 16, 18, 20, and 22. Some of the above programs may be integrated into one program. Also, any of the above programs may be divided into multiple programs. The data group 1332 may include information (data, etc.) handled by the above-mentioned functional units. For example, the data group 1332 may include information constituting each of the "storage units" in the functional configuration diagrams of Figures 1, 2, 16, 18, 20, and 22. (Note that some or all of the information contained in the "storage units" may be stored in the storage device 1302 (memory).) Alternatively, some or all of the various programs included in the program group 1331, the various data groups included in the data group 1332, or the information included in the various information 1333 may be obtained from outside the configuration shown in FIG. 13.
[0063] The external recording medium drive 1304 can be connected to an external recording medium 1305. The external recording medium 1305 may be, for example, a portable recording disk (such as a DVD), an IC card, an SD card, a nonvolatile memory (such as a flash memory), or a portable hard disk. Note that various programs included in the program group 1331, various data included in the data group 1332, or information similar to the information included in the various information 1333 may be transferred and stored from this external recording medium 1305 to the nonvolatile recording medium (recording device) 1303 or the storage device 1302. The external recording medium 1305 may be used to record programs and data handled by the monitoring device 101 (or the monitoring system). The external recording medium drive 1304 and the external recording medium 1305 may be connected to the monitoring device 101 (or the monitoring system) illustrated in FIG. 13 via a network. The various programs included in the program group 1331, the various data included in the data group 1332, or the information included in the various information 1333 may be brought via the communication device 1308, the external input / output port 1309, the input device 1306, or the reading device 1310, and recorded or stored in the non-volatile recording medium (recording device) 1303 or the memory device 1302.
[0064] In order for the architecture of FIG. 13 to function as the monitoring device 101 (or the monitoring system), each functional unit within the monitoring device 101 (or the monitoring system), or a portion of each functional unit (to execute one or a series of processes (steps)), various programs included in the program group 1331 may be loaded into the storage device 1302 (for example, from a non-volatile recording medium (recording device) 1303). The loaded program is indicated by 1321 in FIG. 13. The arithmetic processing device 1301 may then execute the program 1321 (using, as necessary, various data and the like included in the data group 1332 stored in the non-volatile recording medium (recording device) 1303, or information included in the various information 1333). Execution of the program 1321 realizes the function of the monitoring device 101 (or the monitoring system), each functional unit within the monitoring device 101 (or the monitoring system), or a portion of each functional unit (to execute one or a series of processes (steps)). At this time, various buffers 1323 temporarily formed in the storage device 1302 may also be used as appropriate.
[0065] 4. Processing performed by the embodiment of the present disclosure The following describes the processing performed by an embodiment of the present disclosure (a monitoring device (or a monitoring system)). Note that it is not necessary to realize all of the functional configurations described below and perform all of the processing. Furthermore, it is not prohibited to realize functional configurations and perform processing other than the functional configurations and processing described below. Furthermore, the steps of the processes described below may be combined to form a monitoring method executed by an information processing device (or an information processing system).
[0066] 4-1. Alert Condition Management Processing (Figure 4, Figure 5, Figure 6, Figure 14) Fig. 14 shows a flowchart of the processing executed by the alert condition management unit 1499. The processing will be explained below in the order shown in Fig. 14, with appropriate reference to the functional configuration shown in Fig. 2, the alert condition information storage unit 400 (alert condition information 401) shown in Fig. 4, the alert condition management screen 500 shown in Fig. 5, and the state definition information storage unit 600 (state definition information 601) shown in Fig. 6. The functions described below are realized, so that the monitoring device 101 (monitoring system) can manage the alert condition information 401, and the user of the monitoring device 101 (monitoring system) can express the alert condition information 401 (alert condition 412) using one or more state values 1821 and store the expressed information in the monitoring device 101 (monitoring system).
[0067] 14, the alert condition management unit 1499 reads the alert condition information 401 stored in the alert condition information storage unit 400 (see FIG. 4). The alert condition information 401 stored in the alert condition information storage unit 400 is the alert condition information that has already been defined at that time. 14, the alert condition management unit 1499 reads the state definition information 601 stored in the state definition information storage unit 600 (see FIG. 6). The state definition information 601 stored in the state definition information storage unit 600 is the state definition information that has already been defined at that time.
[0068] In step 1403 of FIG. 14, the alert condition management unit 1499 controls to display the alert condition management screen 500. The user interface provided by the alert condition management screen 500 to the user of the monitoring device 101 (or monitoring system) will be described below. 5, the alert condition management screen 500 has a new alert condition input field 501 and a confirmation icon 502. A user of the monitoring device 101 (or monitoring system) uses a keyboard or the like to input text of the alert condition 412 to be newly defined into the new alert condition input field 501. The confirmation icon 502 is used to confirm the text input into the new alert condition input field 501. The alert condition management screen 500 has a list of defined alert conditions 503 and a delete icon 505. The list of defined alert conditions 503 has a record display (line display) for displaying information included in the defined alert condition information 401 for each piece of defined alert condition information 401. The alert condition information 401 read in step 1401 is used for this record display (line display). Each piece of defined alert condition information 401 has a delete alert condition check box 504. The user of the monitoring device 101 (or monitoring system) uses a mouse or the like to check the delete alert condition check box 504 corresponding to the alert condition information 401 (alert condition 412) that they wish to delete. The delete icon 505 is used to confirm the check placed in the delete alert condition check box 504. The alert condition management screen 500 has a defined state list 506. The defined state list 506 has, for each defined state definition information 601, a record display (line display) for displaying information included in the defined state definition information 601. The state definition information 601 read in step 1402 is used for this record display (line display). The alert condition management screen 500 has the defined status list 506, so that the user of the monitoring device 101 (or monitoring system) can visually check each of the status values 1821 used to define the alert conditions 412. In other words, this increases convenience for the user of the monitoring device 101 (or monitoring system). The alert condition management screen 500 has an exit icon 507. The exit icon 507 is used to end the display of the alert condition management screen 500.
[0069] Returning to the description of the processing of the alert condition management unit 1499 in FIG. 14, the alert condition management unit 1499 determines whether the confirmation icon 502 has been clicked with a mouse or the like. If the determination result of step 1404 is affirmative, control transitions to step 1405. If the determination result of step 1404 is negative, control transitions to step 1406. 14, the alert condition management unit 1499 sets the text input currently input in the new alert condition input field 501 as a new alert condition 412. Then, the alert condition management unit 1499 generates alert condition information 401 including the new alert condition 412. The alert condition management unit 1499 stores the generated alert condition information 401 in the alert condition information storage unit 400. The alert condition management unit 1499 may store the generated alert condition information 401 in the alert condition information storage unit 400, for example, in a manner that adds the generated alert condition information 401 to a group of predefined alert condition information. After step 1405, control returns to step 1404.
[0070] After the determination result in step 1404 in Fig. 14 is negative, the alert condition management unit 1499 determines whether the delete icon 505 has been clicked with a mouse or the like in step 1406 in Fig. 14. If the determination result in step 1406 is positive, control transitions to step 1407. If the determination result in step 1406 is negative, control transitions to step 1408. 14, the alert condition management unit 1499 deletes the defined alert condition information 401 for which the delete alert condition check box 504 is checked at that time from the alert condition information storage unit 400. After step 1407, control returns to step 1404.
[0071] After the determination result in step 1406 in Fig. 14 is negative, the alert condition management unit 1499 determines whether the end icon 507 has been clicked with a mouse or the like in step 1408 in Fig. 14. If the determination result in step 1406 is positive, control transitions to step 1409. If the determination result in step 1406 is negative, control returns to step 1404. In step 1409 of FIG. 14, the alert condition management unit 1499 controls the display of the alert condition management screen 500 to end.
[0072] 4-2. State Management Unit Processing (Figures 6, 7, and 15) Fig. 15 shows a flowchart of the processing executed by the state management unit 1599. The processing will be described below in the order shown in Fig. 15, with reference to the functional configuration shown in Fig. 2, the state definition information storage unit 600 (state definition information 601) shown in Fig. 6, and the state definition management screen 700 shown in Fig. 7 as needed. The functions described below are realized, so that the monitoring device 101 (monitoring system) can manage the state definition information 601, and the user of the monitoring device 101 (monitoring system) can express each state value 1821 in the state definition information 601 using one or more variable values 1811 and store the expressed information in the monitoring device 101 (monitoring system).
[0073] 15, the state management unit 1599 reads the state definition information 601 stored in the state definition information storage unit 600 (see FIG. 6). The state definition information 601 stored in the state definition information storage unit 600 is the state definition information that has already been defined at that time.
[0074] In step 1502 of FIG. 15, the state management unit 1599 controls to display the state definition management screen 700. The following describes the user interface provided to the user of the monitoring device 101 (or monitoring system) by the state definition management screen 700. Note that the example shown in Fig. 7 shows a situation in which state definition information 601 has already been defined for the state Shortage and state Clot, and new state definition information 601 for the state CellStatus is being added. As shown in FIG. 7, a state definition management screen 700 has a new state name input field 701 , a confirmation icon 702 , a state value list 703 , a line addition icon 706 , and a line deletion icon 708 . The state value list 703 has, for each state value 1821 of a newly defined state, a state value input field 704, a variable value input field 705, and a state value deletion check box 707. The user of the monitoring device 101 (or monitoring system) uses a keyboard or the like to input the state name 612 of the newly defined state as text in the new state name input field 701. Furthermore, the user of the monitoring device 101 (or monitoring system) uses a keyboard or the like to input a newly defined status value 1821 as text into the status value input field 704. Furthermore, the user of the monitoring device 101 (or monitoring system) uses a keyboard or the like to input a variable value 1811 (or a definition by a calculation formula using multiple variable values 1811) as text, which will be the condition for the newly defined status value 1821, into the variable value input field 705. In other words, in the same record (row) of the status value list 703, if the variable value 1811 (or a definition by a calculation formula using multiple variable values 1811) input into the variable value input field 705 is established in the monitored device 180, then the status value 1821 input into the status value input field 704 is also established. The confirm icon 702 is used to confirm the text input into the new state name input field 701 , the state value input field 704 , and the variable value input field 705 .
[0075] 7 shows three records (rows) each consisting of a combination of a state value input field 704 and a variable value input field 705. In other words, the user interface allows three state values 1821 to be defined for one state (state name). Here, the number of state values 1821 defined for one state (state name) can be increased or decreased. The add row icon 706 is used to add one record (row) consisting of a combination of a state value input field 704 and a variable value input field 705 in the state value list 703 (increase the number of state values 1821 defined for one state (state name) by one). The user of the monitoring device 101 (or monitoring system) uses a mouse or the like to check the state value deletion checkbox 707 corresponding to the combination of the state value input field 704 and the variable value input field 705 that they wish to delete. The row deletion icon 708 is used to confirm the check placed in the state value deletion checkbox 707 (to reduce the number of state values 1821 defined for one state (state name)).
[0076] As shown in FIG. 7, the state definition management screen 700 has a defined state list 709 and a delete icon 711. The defined state list 709 has a record display (line display) for displaying information included in the defined state definition information 601 for each defined state definition information 601. The state definition information 601 read in step 1501 is used for this record display (line display). Each record display (line display) has a delete state checkbox 710. The user of the monitoring device 101 (or monitoring system) uses a mouse or the like to check the delete alert condition checkbox 504 corresponding to the alert condition information 401 (alert condition 412) that they wish to delete. The delete icon 505 is used to confirm the check in the delete alert condition checkbox 504 (to delete the defined state definition information 601). The state definition management screen 700 has an exit icon 712. The exit icon 712 is used to end the display of the state definition management screen 700.
[0077] Returning to the description of the processing of the state management unit 1599 in FIG. 15, the state management unit 1599 determines whether the confirmation icon 702 has been clicked with a mouse or the like. If the determination result of step 1503 is affirmative, control transitions to step 1504. If the determination result of step 1503 is negative, control transitions to step 1505. 15, the state management unit 1599 generates new state definition information 601 based on the text input that has been input at that time in the new state name input field 701, the state value input field 704, and the variable value input field 705. The state management unit 1599 may store the generated state definition information 601 in the state definition information holding unit 600, for example, in a manner that adds the generated state definition information 601 to the group of already defined state definition information. After step 1504, control returns to step 1503.
[0078] 15, the state management unit 1599 determines whether the line addition icon 706 has been clicked with a mouse or the like in step 1505 of Fig. 15. If the determination result in step 1505 is positive, control transitions to step 1506. If the determination result in step 1505 is negative, control transitions to step 1507. 15, the state management unit 1599 performs control so as to add one record (row) including a state value input field 704 and a variable value input field 705 to the state value list 703 on the state definition management screen 700. After step 1506, control returns to step 1503.
[0079] 15, the state management unit 1599 determines whether the row deletion icon 708 has been clicked with a mouse or the like in step 1507. If the determination result in step 1507 is positive, control transitions to step 1508. If the determination result in step 1507 is negative, control transitions to step 1509. 15, the state management unit 1599 controls the state definition management screen 700 to delete from the state value list 703 a record (row) including a combination of a state value input field 704 and a variable value input field 705 for which the state value deletion checkbox 707 is currently checked. After step 1508, control returns to step 1503.
[0080] After the determination result in step 1507 in Fig. 15 is negative, in step 1509 in Fig. 15, the state management unit 1599 determines whether the delete icon 711 has been clicked with a mouse or the like. If the determination result in step 1509 is positive, control transitions to step 1510. If the determination result in step 1509 is negative, control transitions to step 1511. 15, the state management unit 1599 deletes the defined state definition information 601 for which the state deletion checkbox 710 is checked at that time from the state definition information storage unit 600. After step 1510, control returns to step 1503.
[0081] 15, the state management unit 1599 determines whether the end icon 712 has been clicked with a mouse or the like in step 1511 of Fig. 15. If the determination result in step 1511 is positive, the control transitions to step 1512. If the determination result in step 1511 is negative, the control returns to step 1503. In step 1512 of FIG. 15, the state management unit 1599 performs control to terminate the display of the state definition management screen 700.
[0082] 4-3. Processing of the variable value acquisition target identification unit (Figures 4, 6, 8, 16, and 17) Fig. 16 shows a functional configuration related to the variable value acquisition target identification unit 1601. Fig. 17 shows a flowchart of processing executed by the variable value acquisition target identification unit 1601. The steps shown in Fig. 17 may be collectively referred to as "variable value acquisition target identification steps." Below, the processing will be described in the order shown in Fig. 17, with appropriate reference to the alert condition information storage unit 400 (alert condition information 401) shown in Fig. 4, the state definition information storage unit 600 (state definition information 601) shown in Fig. 6, the variable value acquisition target identification information storage unit 800 (variable value acquisition target identification information 801) shown in Fig. 8, and the functional configuration shown in Fig. 16. As will be explained below, variable value acquisition target identification information 801 is generated based on alert condition information 401, state definition information 601, and monitoring target software code 1620. This eliminates or reduces the effort required for users of the monitoring device 101 (or monitoring system) to manually configure settings related to the acquisition of variable values 1811. Note that, when the state of the monitored device 180 is not defined and the alert condition 421 is defined by one or more variable values 1811, variable value acquisition target identification information 801 may be generated based on the alert condition information 401 and the monitored software code 1620. (In this case, of the steps shown below, the processing entity in step 1702 is changed to the variable identification unit 1612, the object to be extracted in step 1702 is changed to the variable name, and steps 1703 and 1704 are omitted.) In this case, too, the user of the monitoring device 101 (or monitoring system) will not have to manually perform settings related to the acquisition of variable values 1811, or this will be reduced in effort.
[0083] In step 1701 of FIG. 17, the state identification unit 1611 in the variable value acquisition target identification unit 1601 reads, from the alert condition information storage unit 400 (see FIG. 4), one or more pieces of alert condition information 401 for which corresponding variable value acquisition target identification information 801 has not yet been generated. 17, the state identification unit 1611 extracts the state name 612 from the alert condition information 401 read in step 1701. For example, the alert condition information 401 in which the value of the alert condition information identification information 411 (alert condition information ID) shown in FIG. 4 is "co1" indicates the alert condition 412 "CellStatus = Operation and Shortage = True." The state identification unit 1611 extracts the states (state names) "CellStatus" and "Shortage" from this alert condition 412.
[0084] 17, the variable identification unit 1612 in the variable value acquisition target identification unit 1601 reads the state definition information 601 from the state definition information storage unit 600 (see FIG. 6). The state definition information 601 read here may be only the state definition information 601 related to the state (state name 612) extracted in step 1702. (Alternatively, all the state definition information 601 may be read.) 17, the variable identification unit 1612 extracts a variable 181 (variable name) from the state definition information 601 read in step 1703. The variable 181 (variable name) extracted here is a variable (variable name) corresponding to the variable value 1811 involved in the definition of the state value 1821 of the state (state name 612) extracted in step 1702. For example, if the states (state names) extracted in step 1702 are "CellStatus" and "Shortage", and the state definition information 601 related to the state value 1821 of the state "CellStatus" is the record (row) in which the value of the state definition information identification information 611 (state definition information ID) shown in FIG. 6 is "st3", and the state definition information 601 related to the state value 1821 of the state "Shortage" is the record (row) in which the value of the state definition information identification information 611 (state definition information ID) shown in FIG. 6 is "st1", then the variable identification unit 1612 extracts the variable (variable name) "s" for the state "CellStatus" and the variable (variable name) "amount" for the state "Shortage".
[0085] In step 1705 of FIG. 17, the code analysis unit 1613 in the variable value acquisition target specification unit 1601 reads the monitoring target software code 1620 which is the code of the monitoring target software 190 . 16, the code analysis unit 1613 may read the monitoring target software code 1620 from the monitoring target software code storage unit 1602. Alternatively, the code analysis unit 1613 may read the monitoring target software code 1620 from outside the monitoring device 101 (or the monitoring system) (for example, from the monitoring target device 180 or the distribution server 299). The monitored software code 1620 may be the source code of the monitored software 190. Alternatively, the monitored software code 1620 may be code in another format, such as object code (as long as the code analysis unit 1613 can handle it). (Note that the monitored software 190 running on the monitored device 180 may be in an executable format (e.g., object code).) The monitoring target software code 1620 read in step 1705 may be only the monitoring target software code that, when executed in the monitoring target device 180, may potentially rewrite the variable value 1811 of the variable (variable name) extracted in step 1704. (Alternatively, it may be the monitoring target software code 1620 that corresponds to all the monitoring target software 190 that may be executed in the monitoring target device 180.) 17, the code analysis unit 1613 scans (analyzes) the monitoring target software code 1620 read in step 1705, thereby identifying locations in the code where the variable values 1811 of the variables (variable names) extracted in step 1704 may be rewritten. For example, as shown in Fig. 16, if the variable values 1811 of the variables "s" and "amount" may be rewritten on the fourth line in the code of the monitoring target software 190 having the program name "Main.cpp," and the variable values 1811 of the variables "s" and "amount" may be rewritten on the tenth line in the code of the monitoring target software 190 having the program name "Sub.cpp," the code analysis unit 1613 identifies the fourth line of "Main.cpp" and the tenth line of "Sub.cpp" as locations where the variable values 1811 may be rewritten. In the above, the location where the variable value 1811 may be rewritten is identified by the combination of the program name and the line number, but the location may be identified in other ways. For example, as in Modification C described below, the location where the variable value 1811 may be rewritten may be identified by the granularity of objects in a program created by object-oriented programming, or the granularity of subroutines or functions in a program created by procedural programming.
[0086] 17, in which the variable value acquisition target specification information generating unit 1614 in the variable value acquisition target specification unit 1601 associates acquisition target variable identification information 813 indicating the acquisition target variable 183, which is the variable (variable name) extracted in step 1704, with acquisition target process identification information 812 indicating the acquisition target process 182 corresponding to the location in the code specified in step 1706, to generate variable value acquisition target specification information 801. The variable value acquisition target specification information generating unit 1614 stores the generated variable value acquisition target specification information 801 in the variable value acquisition target specification information holding unit 800 (see FIG. 8). As in the above example, if the variables "s" and "amount" are extracted in step 1704 and the fourth line of "Main.cpp" and the tenth line of "Sub.cpp" are specified in step 1706, the variable value acquisition target specification information 801 shown in FIG. 8 is generated and stored.
[0087] 17, the variable value acquisition target identification unit 1601 determines whether any alert condition information 401 that should be read in step 1701 but has not yet been read in step 1701 remains in the alert condition information storage unit 400. If the determination result in step 1708 is positive, control is returned to step 1701. If the determination result in step 1708 is negative, the processing of the variable value acquisition target identification unit 1601 ends.
[0088] As described above, if the alert condition information 401, the state definition information 601, and the monitored software code 1620 exist, the variable value acquisition target identification unit 1601 generates the variable value acquisition target identification information 801, which reduces the need to manually configure the settings for acquiring the variable value 1811 from the monitored device 180, thereby achieving labor savings.
[0089] 4.4. Processing of variable value acquisition part and state value generation part (Figure 6, Figure 8, Figure 9, Figure 18, Figure 19) Fig. 18 shows a functional configuration related to the variable value acquisition unit 1801 or the state value generation unit 1802. Fig. 19 shows a flowchart of processing executed by the variable value acquisition unit 1801 or the state value generation unit 1802. Below, the processing will be described in the order shown in Fig. 19, with appropriate reference to the state definition information holding unit 600 (state definition information 601) shown in Fig. 6, the variable value acquisition target identification information holding unit 800 (variable value acquisition target identification information 801) shown in Fig. 8, the state transition history information holding unit 900 (state transition history information 901) shown in Fig. 9, and the functional configuration shown in Fig. 18. As will be explained below, the variable value acquisition unit 1801 can monitor the variable values 1811 of the monitoring target device 180 while referencing acquisition target process identification information 812 included in the variable value acquisition target specification information 801, thereby eliminating the need to constantly monitor the variable values 1811 and enabling efficient acquisition of the variable values 1811. Furthermore, the variable value acquisition unit 1801 can monitor the variable values 1811 of the monitoring target device 180 while referencing acquisition target variable identification information 813 included in the variable value acquisition target specification information 801, thereby eliminating the need to uniformly monitor all variables 181 handled by the monitoring target device 180 and the monitoring target process 192, enabling efficient acquisition of the variable values 1811. Furthermore, since the variable value acquisition target specification information 801 indicates appropriate settings for acquiring the variable value 1811 for grasping the change (transition) of the state value 1821 in the monitored device 180, the variable value acquisition unit 1801 and the state value generation unit 1802 can record all the changes (transitions) of the state value 1821 in the monitored device 180 that are desired to be grasped. The method of acquiring the variable value 1811 described below is a so-called pull method in which the variable value acquisition unit 1801 monitors the monitored process 192 and acquires the variable value 1811. A so-called push method in which the monitored process 192 provides the variable value 1811 in a timely manner and the variable value acquisition unit 1801 acquires the provided variable value 1811 will be mentioned later as modification D.
[0090] 19, the variable value acquisition unit 1801 reads variable value acquisition target identification information 801 from the variable value acquisition target identification information storage unit 800 (see FIG. 8). As shown in FIG. 8, the variable value acquisition target identification information 801 includes acquisition target process identification information 812 and acquisition target variable identification information 813. For example, in the example of Figure 8, variable value acquisition target specification information 801 is loaded for a combination in which acquisition target process identification information 812 is "Main.cpp:4 (program name is Main.cpp, code on the fourth line)" and acquisition target variable identification information 813 is "s, amount (variables for which the variable value 1811 is to be acquired are s and amount)", and variable value acquisition target specification information 801 is loaded for a combination in which acquisition target process identification information 812 is "Sub.cpp:10 (program name is Sub.cpp, code on the tenth line)" and acquisition target variable identification information 813 is "s, amount (variables for which the variable value 1811 is to be acquired are s and amount)". 19, the state value generation unit 1802 reads state definition information 601 from the state definition information storage unit 600 (see FIG. 6). For example, when reading state definition information 601 related to the variable s and the variable amount, records (rows) of state definition information having values of "st1" and "st3" for state definition information identification information 611 (state definition information ID) are read from the state definition information 601 shown in FIG. 6. All state definition information 601 held by the state definition information storage unit 600 may be read. 19, the state value generation unit 1802 reads current state values 1822, which are current state values 1821 for each of the states defined for the monitored device 180. The current state values 1822 may be, for example, values assumed as values that the monitored device 180 can initially take, or may be values read from some kind of recording device. Alternatively, the current state values 1822 that are initially read may be provisionally generated by the monitoring device 101 (or the monitoring system).
[0091] In step 1904 of FIG. 19, the variable value acquisition unit 1801 determines whether the timing has arrived (or whether the timing will arrive soon) to acquire the variable value 1811 from the monitored device 180. By referencing the acquisition target process identification information 812 read in step 1901, the variable value acquisition unit 1801 identifies the acquisition target process 182, which is the process from which the variable value 1811 is to be acquired, and then determines whether the monitoring target process 192 currently being executed (or will be executed soon) by the monitored device 180 is the acquisition target process 182. If the determination result in step 1904 is positive, control transitions to step 1905. As long as the determination result in step 1904 is negative, the determination in step 1904 is repeated. 19, the variable value acquisition unit 1801 acquires the variable value 1811 of the variable indicated by the acquisition target variable identification information 813 from the monitoring target device 180 at the timing when the process indicated by the acquisition target process identification information 812 is executed in the monitoring target device 180. In the example shown in FIG. 8, the variable value 1811 of the variable s and the variable value 1811 of the variable amount are acquired at the timing when the monitoring target process 192 corresponding to the code whose program name is Main.cpp and whose line number is 4 is executed. Also, in the example shown in FIG. 8, the variable value 1811 of the variable s and the variable value 1811 of the variable amount are acquired at the timing when the monitoring target process 192 corresponding to the code whose program name is Sub.cpp and whose line number is 10 is executed. Depending on the setting of the variable value acquisition target specification information 801, different acquisition target processes 182 may acquire different combinations of variable values 1811 of acquisition target variables 183. For example, one acquisition target process 182 may acquire variable value 1811 of variable s and variable value 1811 of variable amount, while another acquisition target process 182 may acquire variable value 1811 of variable c and variable value 1811 of variable s. The variable value acquisition unit 1801 acquires a variable value 1811 that is the result of the execution of the acquisition target process 182, but the variable value acquisition unit 1801 may also acquire a pre-transition variable value that is the variable value immediately before the acquisition target process 182 is executed.
[0092] In step 1906 (state value generation step) of FIG. 19, the state value generation unit 1802 generates a state value 1821 using the state definition information 601 read in step 1902 and the variable value 1811 acquired in step 1905 . For example, in the examples of Figures 6 and 8, if the variable value 1811 of the loaded variable s is "s=1", "CellStatus=Init" is generated as the state value 1821 of the state CellStatus; if the variable value 1811 of the loaded variable s is "s=2", "CellStatus=Operation" is generated as the state value 1821 of the state CellStatus; if the variable value 1811 of the loaded variable s is "s=3", "CellStatus=Clean" is generated as the state value 1821 of the state CellStatus; if the variable value 1811 of the loaded variable amount is "amount=0", "Shortage=True" is generated as the state value 1821 of the state Shortage; and if the variable value 1811 of the loaded variable amount is "amount>0 (variable value 1811 of amount is greater than 0)", "Shortage=False" is generated as the state value 1821 of the state Shortage.
[0093] 19, the state value generation unit 1802 determines whether or not there is any state in which the state value 1821 has changed (transitioned) before and after the execution of the acquisition target process 182 that was the target of acquiring the variable value 1811 in step 1905, among the respective states defined in the monitored device 180. The state value generation unit 1802 may, for example, determine whether or not there is a state in which the state value 1821 has changed (transitioned) by comparing the state value 1821 generated in step 1906 with the current state value 1822 (which is assumed to be the state value before the execution of the acquisition target process 182 that was the target of acquiring the variable value 1811 in step 1905) for each of the states defined in the monitored device 180. Alternatively, the pre-transition variable values may be acquired in step 1905, and the pre-transition state values 1823 may be generated based on the pre-transition variable values in step 1906. Then, the state values 1821 after execution of the acquisition target process 182 may be compared with the pre-transition state values 1823 before execution of the acquisition target process 182 to determine whether any state values 1821 have changed (transitioned). If the determination result in step 1907 is positive, control transitions to step 1908. If the determination result in step 1907 is negative, steps 1908 and 1909 are skipped, and control transitions to step 1910.
[0094] 19, the state value generation unit 1802 generates state transition history information 901 for the variables whose state values 1821 are determined to have changed (transitioned) in step 1907. The state value generation unit 1802 stores the generated state transition history information 901 in the state transition history information holding unit 900. For example, while the monitored process 192 for the process target (analysis target) whose process identification information 195 (processing ID) value is "sa2" is being executed on the monitored device 180, if the state value 1821 of the state "CellStatus" changes (transitions) from "Init" to "Operation" when the time 196 is value "20", if the state value 1821 of the state "Shortage" changes (transitions) from "False" to "True" when the time 196 is value "25", and if the state value 1821 of the state "CellStatus" changes (transitions) from "Operation" to "Clean" when the time 196 is value "30", then state transition history information 901 with state transition history information identification information 911 (state transition history ID) values of "hi4", "hi5", and "hi6" as shown in FIG. 9 is generated and stored. In step 1909 of FIG. 19, the state value generation unit 1802 updates the current state value 1822 so that the state value 1821 generated in step 1907 is reflected.
[0095] 19, the variable value acquisition unit 1801, the state value generation unit 1802, or the monitoring device 101 (or the monitoring system) determines whether the operation of the monitored device 180 has ended. If the determination result of step 1910 is positive, the processing of the variable value acquisition unit 1801 and the state value generation unit 1802 ends. If the determination result of step 1910 is negative, control returns to 1904. Note that the determination result of step 1910 may also be positive if it is clear based on the acquisition target process identification information 812 that the timing to acquire the variable value 1811 will not arrive in the future.
[0096] 4-5. Alert condition success / failure determination processing (Figure 4, Figure 9, Figure 10, Figure 20, Figure 21) Fig. 20 shows the functional configuration related to the alert condition success / failure determination unit 2001. Fig. 21 shows a flowchart of the processing executed by the alert condition success / failure determination unit 2001. Below, the processing will be described in the order shown in Fig. 21, with appropriate reference to the alert condition information storage unit 400 (alert condition information 401) shown in Fig. 4, the state transition history information storage unit 900 (state transition history information 901) shown in Fig. 9, the alert condition success / failure information storage unit 1000 (alert condition success / failure information 1001) shown in Fig. 10, and the functional configuration shown in Fig. 20.
[0097] 21, the alert condition success / failure determination unit 2001 reads the alert condition information 401 from the alert condition information storage unit 400. In the example shown in FIG. 4, each of the records (rows) of the alert condition information 401 having the values "co1", "co2", and "co3" of the alert condition information identification information 411 (alert condition information ID) is read. The alert condition success / failure determination unit 2001 may read all of the alert condition information 401 for which the alert condition 412 may be satisfied. Alternatively, in order to limit the types of alerts to be issued, the alert condition success / failure determination unit 2001 may read only some of the records (rows) of the alert condition information 401 stored in the alert condition information storage unit 400. 21, the alert condition success / failure determination unit 2001 reads the state transition history information 901 from the state transition history information storage unit 900. In the example shown in FIG. 9, each of the records (rows) of the state transition history information 901 having the values of "hi1," "hi2," "hi3," "hi4," "hi5," and "hi6" of the state transition history information identification information 911 (state transition history information ID) is read. The alert condition success / failure determination unit 2001 may read all of the state transition history information 901 in which any of the alert conditions 412 may be satisfied. Alternatively, in the case of limiting the time period for which an alert is to be issued, the alert condition success / failure determination unit 2001 may read only some of the records (rows) of the state transition history information 901 stored in the state transition history information storage unit 900.
[0098] 21 (alert condition success / failure determination step), the alert condition success / failure determination unit 2001 determines whether any of the alert conditions 412 included in the alert condition information 401 read in step 2101 has been satisfied, for the records (rows) of the state transition history information 901 read in step 2102. The alert condition success / failure determination unit 2001 may use the records (rows) of the state transition history information 901 read in step 2102 to identify each state value 1821 of the state defined for the monitored device 180 at each value of time 196 (see FIG. 9). Then, the alert condition success / failure determination unit 2001 may compare each state value 1821 of the state corresponding to each value of time 196 with each of the alert conditions 412 to determine whether the alert condition 412 has been satisfied. 4, for the alert condition 412 of "CellStatus = Operation and Shortage = True" and the alert condition 412 of "Clot = True", the alert condition success / failure determination unit 2001 may determine whether each (combination of) state values 1821 of the states corresponding to each value of time 196 matches the alert condition 412. For example, in the example shown in Fig. 9, when the value of time 196 is "25", the state value 1821 of the state CellStatus remains "Operation" and the state value 1821 of the state Shortage changes (transitions) to "True", so the alert condition success / failure determination unit 2001 determines that the alert condition 412 of "CellStatus = Operation and Shortage = True" is met when the value of time 196 is "25" (and when the value of the process identification information 195 (process ID) is "sa2"). As described above, when the alert condition 412 is defined for snapshot-like information of the state value 1821 (combination) for each time 196, the alert condition success / failure determination unit 2001 determines whether the alert condition 412 is successful or not by simply determining the state value 1821 (combination) corresponding to the value of the time 196 to be determined, thereby enabling the determination process to be performed quickly and simply. 4, for the alert condition 412 of "CellStatus = not (Init → Operation → Clean → Init)", the state transition verification unit 2011 (see FIG. 2) inside the alert condition success / failure determination unit 2001 may determine whether a change (transition) in (a combination of) the state values 1821 of the states on the time series formed by the time 196 matches the alert condition 412. For example, when it is found that, in a set of records (rows) of the state transition history information 901, the state value 1821 of the state CellStatus deviates from the order of change (transition) from Init to Operation, change (transition) from Operation to Clean, and change (transition) from Clean to Init, the state transition verification unit 2011 inside the alert condition success / failure determination unit 2001 determines that the alert condition 412 is met. For example, when it is determined that the state value 1821 of the state CellStatus has changed (transitioned) from Operation to Init, the state transition verification unit 2011 inside the alert condition success / failure determination unit 2001 determines that the alert condition 412 was met at time 196 (when the value of time 196 was) when the state changed (transitioned) to Init. As described above, the alert condition 412 can also be defined for changes (transitions, order relationships) in the time series of the state value 1821. Therefore, the monitoring device 101 (monitoring system) of the present disclosure can define the alert condition 412 in response to various events in the monitored device 180. Furthermore, the state transition verification unit 2011 can determine whether the alert condition 412 is satisfied or not in response to the alert condition 412 defined for changes (transitions, order relationships) in the time series of the state value 1821. If the determination result in step 2103 is affirmative, control transitions to step 2104. If the determination result in step 2103 is negative, the processing of the alert condition success / failure determination unit 2001 ends.
[0099] 21, the alert condition success / failure determination unit 2001 generates alert condition success / failure information 1001 indicating the determination result in step 2103 for the alert condition 412 that was determined to be true in step 2103. The generation of the alert condition success / failure information 1001 indicating the fulfillment of the alert condition 412 may be said to be the issuance of an alert. The alert condition success / failure determination unit 2001 stores the generated alert condition success / failure information 1001 in the alert condition success / failure information storage unit 1000. In the example shown in FIG. 10, the alert condition success / failure determination unit 2001 may include, in the alert condition success / failure information 1001, the value of the process identification information 195 (process ID) at the time the alert condition 412 was fulfilled, the value of the time 196 at the time the alert condition 412 was fulfilled, and in addition, the fulfillment alert content 1012 indicating the content of the fulfilled alert condition 412. 10, the fulfilled alert content 1012 indicates the alert condition information identification information 411 (alert condition information ID) corresponding to the fulfilled alert condition 412 (for example, the value "co1" is indicated). However, the fulfilled alert content 1012 may include the alert condition 412 itself instead of or in addition to the alert condition information identification information 411 (alert condition information ID).
[0100] 4-6. Processing of the monitored device output receiver (Fig. 10, Fig. 11, Fig. 22, Fig. 23) Fig. 22 shows the functional configuration related to the monitored device output receiving unit 2201 (and the display output control unit 2202). Fig. 23 shows a flowchart of the processing executed by the monitored device output receiving unit 2201. The following will be described in the order of processing shown in Fig. 23, with appropriate reference to the alert condition success / failure information holding unit 1000 (alert condition success / failure information 1001) shown in Fig. 10, the display output information holding unit 1100 (display output information 1101) shown in Fig. 11, and the functional configuration shown in Fig. 22. As will be described below, the monitored device output receiving unit 2201 may generate display output information 1101 as information in which the output information 307 received from the monitored device 180 is associated with the alert condition success / failure information identification information 1011 (alert condition success / failure information ID). Therefore, the display output control unit 2202, which will be described later, can construct result information 2220 using the alert condition success / failure information identification information 1011 (alert condition success / failure information ID) included in the display output information 1101 as a clue. Furthermore, if the display output information 1101 includes the alert condition success / failure information identification information 1011 (alert condition success / failure information ID) but does not include the alert condition success / failure information 1001 itself or the alert condition information 401 itself, the data length of the display output information 1101 will be relatively short.
[0101] In step 2301 of FIG. 23, the monitored device output receiving unit 2201 determines whether output information 307 has been received from the monitored device 180. The monitored device 180 (e.g., an embedded device or an automatic analysis device) generates and outputs output information 307 indicating the processing result (analysis result) for each processing target (analysis target) to which processing identification information 195 (processing ID) is assigned. The output information 307 may have the processing identification information 195 (processing ID) assigned to the output information body indicating the processing result (analysis result). Alternatively, if the monitoring device 101 (or monitoring system) knows the value of the processing identification information 195 (processing ID), the output information 307 may not have the processing identification information 195 (processing ID). The example shown in FIG. 22 indicates that the output information 307 for the processing target (analysis target) whose processing identification information 195 (processing ID) value is “sa1” has the value “3.421” as the processing result (analysis result). Similarly, it is shown that the output information 307 for the processing target (analysis target) whose processing identification information 195 (processing ID) value is "sa2" has a value of "12.3245" as the processing result (analysis result).
[0102] 23, the monitored device output receiving unit 2201 determines whether the alert condition success / failure information 1001 related to the process identification information 195 (processing ID) corresponding to the output information 307 received in step 2301 exists in the alert condition success / failure information storage unit 1000. The monitored device output receiving unit 2201 may make the determination in step 2302 based on the process identification information 195 (processing ID) included in each piece of alert condition success / failure information 1001 stored in the alert condition success / failure information storage unit 1000. In the example shown in FIG. 10, the monitored device output receiving unit 2201 determines that the alert condition success / failure information 1001 does not exist for the process target (analysis target) whose process identification information 195 (processing ID) value is "sa1" (in other words, none of the alert conditions 412 are satisfied for the process target (analysis target) whose process identification information 195 (processing ID) value is "sa1"). Similarly, the monitored device output receiving unit 2201 determines that alert condition success / failure information 1001 exists for a processing target (analysis target) whose processing identification information 195 (processing ID) value is "sa2" (that is, one of the alert conditions 412 is satisfied for the processing target (analysis target) whose processing identification information 195 (processing ID) is "sa2"), and determines that the value of the alert condition success / failure information identification information 1011 (alert condition success / failure information ID) corresponding to the alert condition success / failure information 1001 is "aa1". If the determination result in step 2302 is positive, control transitions to step 2303. If the determination result in step 2302 is negative, control transitions to step 2304.
[0103] 23, the monitored device output receiving unit 2201 generates display output information 1101 by adding some information to the output information 307 received in step 2301, indicating that any of the alert conditions 412 is established. The monitored device output receiving unit 2201 stores the generated display output information 1101 in the display output information holding unit 1100. In the example shown in Figures 10 and 11, for a processing target (analysis target) whose processing identification information 195 (processing ID) value is "sa2", there is alert condition success / failure information 1001 whose alert condition success / failure information identification information 1011 (alert condition success / failure information ID) is "aa1", so the monitored device output receiving unit 2201 may generate display output information 1101 which includes processing identification information 195 (processing ID) whose value is "sa2", output information 307 whose value is "12.3245" (the value received in step 2301), and alert condition success / failure information identification information 1011 (alert condition success / failure information ID) whose value is "aa1". Furthermore, if multiple alert condition success / failure information 1001 exists for one processing identification information 195 (processing ID), the display output information 1101 for that processing identification information 195 (processing ID) may include alert condition success / failure information identification information 1011 (alert condition success / failure information ID) for each of the existing alert condition success / failure information 1001. Furthermore, when generating the display output information 1101, the monitored device output receiving unit 2201 may include the fulfilled alert content 1012 (see Figure 10) in the display output information 1101 instead of the alert condition success / failure information identification information 1011 (alert condition success / failure information ID), or in addition to the alert condition success / failure information identification information 1011 (alert condition success / failure information ID). After step 2303, control transitions to step 2305.
[0104] 23, in step 2304 of Fig. 23, the monitored device output receiving unit 2201 generates display output information 1101 in a form that does not add any information that any of the alert conditions 412 is satisfied (or adds information that none of the alert conditions 412 is satisfied) to the output information 307 received in step 2301. The monitored device output receiving unit 2201 stores the generated display output information 1101 in the display output information holding unit 1100. In the examples shown in Figures 10 and 11, for the processing target (analysis target) whose processing identification information 195 (processing ID) value is "sa1", there is no alert condition success / failure information 1001, so the monitored device output receiving unit 2201 may generate display output information 1101 which includes processing identification information 195 (processing ID) whose value is "sa1", output information 307 whose value is "3.421" (the value received in step 2301), and alert condition success / failure information identification information 1011 (alert condition success / failure information ID) whose value is "- (a value indicating that the alert condition success / failure information 1001 does not exist)". After step 2304, control transitions to step 2305.
[0105] 23, the monitored device output receiving unit 2201 determines whether the operation of the monitored device 180 has ended. If the determination result of step 2305 is positive, the processing of the monitored device output receiving unit 2201 ends. If the determination result of step 2305 is negative, control returns to step 2301.
[0106] 4-7. Processing of the display output control unit (Fig. 4, Fig. 9, Fig. 10, Fig. 11, Fig. 12, Fig. 22, Fig. 24) FIG. 22 shows the functional configuration related to the display output control unit 2202 (and the monitored device output receiving unit 2201). FIG. 24 shows a flowchart of the processing executed by the display output control unit 2202. The steps shown in FIG. 24 may be collectively referred to as "display output control steps." The following will be described in the order of processing shown in FIG. 24, with appropriate reference to the alert condition information holding unit 400 (alert condition information 401) shown in FIG. 4, the state transition history information holding unit 900 (state transition history information 901) shown in FIG. 9, the alert condition success / failure information holding unit 1000 (alert condition success / failure information 1001) shown in FIG. 10, the display output information holding unit 1100 (display output information 1101) shown in FIG. 11, and the functional configuration shown in FIG. 22. First, the process by which the display output control unit 2202 generates the result information 2220 to be displayed or output will be described below (steps 2401 to 2411 in FIG. 24). Next, the control performed by the display output control unit 2202 when the result information 2220 is displayed on the result screen 1200 will be described (steps 2412 to 2416 in FIG. 24). As will be explained below, the user of the monitoring device 101 (or monitoring system) may be provided with the output information 307 for each process identification information 195 (process ID) and information on whether the alert condition 412 is met, as well as information showing how the status value 1821 has changed (transitioned) (for example, in the time period before and after the time 196 when the alert condition 412 was met). This allows the user of the monitoring device 101 (or monitoring system) to understand for which process identification information 195 (process ID) the alert was issued and the status of the monitored device 180 in the time period before and after the time 196 when the alert condition 412 was met, making it easier to take subsequent action. Furthermore, when the result information 2220 is output to some output device (for example, printed) or output to some recording device (for example, stored), the display output control unit 2202 controls the output (for example, printing or storing).
[0107] 4 of 7 1. Generate result information In step 2401 of FIG. 24, the display output control unit 2202 selects one of the pieces of process identification information 195 (process ID) for which corresponding output information 307 exists. 24, the display output control unit 2202 reads the display output information 1101 related to the processing identification information 195 (processing ID) selected in step 2401. In the example shown in Fig. 11, the display output control unit 2202 reads the display output information 1101 that includes the value of the processing identification information 195 (processing ID) selected in step 2401 from the display output information 1101 stored in the display output information storage unit 1100. 24, the display output control unit 2202 determines whether a significant value is assigned to the display output information 1101 read in at step 2402 as the alert condition success / failure information identification information 1011 (alert condition success / failure information ID). In the example shown in FIG. 11, when the display output control unit 2202 reads the display output information 1101 whose process identification information 195 (processing ID) value is "sa1," it determines that the display output information 1101 has been assigned the insignificant value "-" (no significant value has been assigned) as the alert condition success / failure information identification information 1011 (alert condition success / failure information ID). Similarly, when the display output control unit 2202 reads the display output information 1101 whose process identification information 195 (processing ID) value is "sa2," it determines that the display output information 1101 has been assigned the significant value "aa1" as the alert condition success / failure information identification information 1011 (alert condition success / failure information ID). If the determination result in step 2403 is affirmative, the control transitions to step 2404. If the determination result in step 2403 is negative, the control transitions to step 2409.
[0108] 24, the display output control unit 2202 reads in the alert condition success / failure information 1001 corresponding to the alert condition success / failure information identification information 1011 (alert condition success / failure information ID) assigned to the display output information 1101 read in at step 2402. In the example shown in FIGS. 10 and 11, the value of the alert condition success / failure information identification information 1011 (alert condition success / failure information ID) included in the display output information 1101 having the value of the display output information identification information 1111 (display output information ID) of "do2" is "aa1", so the display output control unit 2202 reads in the alert condition success / failure information 1001 having the value of the alert condition success / failure information identification information 1011 (alert condition success / failure information ID) of "aa1" from the alert condition success / failure information storage unit 1000. In the example shown in FIG. 10, the alert condition success / failure information 1001 includes the fulfilled alert content 1012. The fulfilled alert content 1012 includes the alert condition information identification information 411 (alert condition information ID). In the example shown in Fig. 10, the value of the alert condition information identification information 411 (alert condition information ID) is "co1". 24, the display output control unit 2202 reads in the alert condition information 401 corresponding to the alert condition information identification information 411 (alert condition information ID) included in the alert condition success / failure information 1001 read in at step 2404. In the example shown in FIGS. 4 and 10, the value of the alert condition information identification information 411 (alert condition information ID) included in the alert condition success / failure information 1001 whose value of the alert condition success / failure information identification information 1011 (alert condition success / failure information ID) is “aa1” is “co1”, so the display output control unit 2202 reads in the alert condition information 401 whose value of the alert condition information identification information 411 (alert condition information ID) is “co1” from the alert condition information storage unit 400. In the example shown in FIG. 4, the alert condition 412 included in the alert condition information 401 whose value of the alert condition information identification information 411 (alert condition information ID) is “co1” is “CellStatus=Operation and Shortage=True”. 24, the display output control unit 2202 reads in state transition history information 901 relating to the time before and after the time (the time when the alert condition 412 was met) indicated by the value of time 196 included in the alert condition success / failure information 1001 read in step 2404. In the example shown in Figures 9 and 10, the value of time 196 included in the alert condition success / failure information 1001 for which the value of alert condition success / failure information identification information 1011 (alert condition success / failure information ID) is "aa1" is "aa1", so the display output control unit 2202 reads in a group of state transition history information 901 for which the value of time 196 is before and after "25" (for example, the value of time 196 is equal to or greater than "15" and less than "35") from the state transition history information storage unit 900.
[0109] In step 2407 of FIG. 24, the display output control unit 2202 adds the record display (line display) information relating to the process identification information 195 (processing ID) selected in step 2401 to the information 2221 of the front page portion of the result information 2220. In the example shown in Figures 11 and 12, display output information 1101, whose display output information identification information 1111 (display output information ID) has a value of "do2", contains process identification information 195 (processing ID) whose value is "sa2", output information 307 whose value is "12.3245", and alert condition success / failure information identification information 1011 (alert condition success / failure information ID) whose value is a significant value "aa1". Therefore, the display output control unit 2202 adds record display (row display) information to information 2221 in the front page portion of result information 2220, which contains process identification information 195 (processing ID) whose value is "sa2", output information 307 whose value is "12.3245", and information 1211 indicating whether or not an alert is present, with the display set to "Yes". If the result information 2220 is intended to be used for displaying the result screen 1200, the information 1211 indicating whether or not an alert is displayed as "Yes" may also be accompanied by information in the form of a hyperlink 1212. The hyperlink 1212 is a link for displaying the corresponding detailed information page 1202.
[0110] 24, the display output control unit 2202 generates information on the detailed information page 1202 related to the process identification information 195 (process ID) selected in step 2401. The information on the detailed information page 1202 may include one or both of information 2222 indicating the details (contents) of the satisfied alert condition 412 and information 2223 indicating the state transition history before and after the time when the alert condition 412 was satisfied. In the examples shown in FIGS. 4, 10, and 11, the display output information 1101 having the value of display output information identification information 1111 (display output information ID) of “do2” includes processing identification information 195 (processing ID) having the value “sa2” and alert condition success / failure information identification information 1011 (alert condition success / failure information ID) having a significant value “aa1”, and the alert condition success / failure information 1001 having the value of alert condition success / failure information identification information 1011 (alert condition success / failure information ID) of “aa1” includes alert condition information identification information 411 (alert condition information ID) having the value “co1”, and the alert condition information 401 having the value of alert condition information identification information 411 (alert condition information ID) of “co1” includes “CellStatus = Operation and Shortage = Since the alert condition 412 that is met is "True," the display output control unit 2202 may generate information 2222 indicating the details (contents) of the alert condition 412 that has been met from the information on the detailed information page 1202, indicating "Alert condition co1 "CellStatus = Operation and Shortage = True" has been met." In the examples shown in FIGS. 9, 10, and 11, the display output information 1101, whose display output information identification information 1111 (display output information ID) has a value of "do2", includes process identification information 195 (process ID) whose value is "sa2", and alert condition success / failure information identification information 1011 (alert condition success / failure information ID) whose value is "aa1", and the alert condition success / failure information 1001, whose alert condition success / failure information identification information 1011 (alert condition success / failure information ID) has a value of "aa1", includes time 196 whose value is "25", and the state transition history information 901, whose time 196 has a value of "15", indicates that the state value of the state "CellStatus" has changed (transitioned) from "Clean" to "Init", and the state transition history information 901, whose time 196 has a value of "20", indicates that the state value of the state "CellStatus" has changed (transitioned) from "Clean" to "Init". " indicates that the state value of "Shortage" has changed (transitioned) from "Init" to "Operation", state transition history information 901 having time 196 with a value of "25" indicates that the state value of state "Shortage" has changed (transitioned) from "False" to "True", and state transition history information 901 having time 196 with a value of "30" indicates that the state value of state "CellStatus" has changed (transitioned) from "Operation" to "Clean". Therefore, the display output control unit 2202 may generate information that can display or output information 1223 illustrating the change (transition) of state value 1821 before and after the time when the alert condition was met in Figure 12 as information 2223 in the detailed information page 1202 that indicates the state transition history before and after the time when the alert condition 412 was met. In addition to the above processing, if necessary, the display output control unit 2202 performs processing to format the information on the detailed information page 1202. For example, if the detailed information page 1202 is scheduled to be displayed on the result screen 1200, the display output control unit 2202 includes information for implementing the back icon 1224 in FIG. After step 2408 , control transitions to step 2410 .
[0111] If the judgment result of step 2403 in Figure 24 is negative, in step 2409 in Figure 24, the display output control unit 2202 adds the record display (line display) information related to the processing identification information 195 (processing ID) selected in step 2401 to the information 2221 of the front page portion of the result information 2220. 11 and 12, the display output information 1101, whose display output information identification information 1111 (display output information ID) has a value of "do1," contains process identification information 195 (processing ID) whose value is "sa1," output information 307 whose value is "3.421," and alert condition success / failure information identification information 1011 (alert condition success / failure information ID) whose value is an insignificant "- (a value indicating that alert condition success / failure information 1001 does not exist)," so the display output control unit 2202 adds record display (line display) information including the process identification information 195 (processing ID) whose value is "sa1," output information 307 whose value is "3.421," and information 1211 indicating the presence or absence of an alert, whose display is "none," to information 2221 in the front page portion of the result information 2220. Note that the added record display (line display) information does not include information on the hyperlink 1212. After step 2409, control transitions to step 2410.
[0112] 24, the display output control unit 2202 determines whether there is any processing identification information 195 (processing ID) that should be selected in step 2401 but has not yet been selected in step 2401. The processing identification information 195 (processing ID) that should be selected in step 2401 is the processing identification information 195 (processing ID) that is to be displayed in the results list on the front page 1201. If the determination result in step 2410 is affirmative, control is returned to step 2401. If the determination result in step 2410 is negative, control is transitioned to step 2411. 24, the display output control unit 2202 performs processing to format the information on the front page 1201 of the result information 2220, as necessary. For example, if the front page 1201 is scheduled to be displayed on the result screen 1200, the display output control unit 2202 includes information for implementing the end icon 1225 of FIG. 12 in the information 2221 of the front page portion of the result information 2220. The display output control unit 2202 may also include information for displaying or outputting the names of the columns (rows) of the result list on the front page 1201 (for example, "Processing ID," "Output," and "Alert") in the information 2221 of the front page portion of the result information 2220. When the processing of step 2411 is completed, the series of processing steps relating to the generation of result information 2220 is completed. If result information 2220 is to be displayed on result screen 1200, processing from step 2412 onwards is carried out.
[0113] 2. Controlling the Results Screen 24, the display output control unit 2202 controls to display the front page 1201 of the result screen 1200. The display output control unit 2202 controls, for example, the display or output device 1307 of the monitoring device 101 (or monitoring system) so as to perform a display based on the information 2221 of the front page portion (of the result information 2220) generated based on the processing of steps 2407, 2409, and 2411. Note that the device that displays the result screen 1200 is not limited to the display or output device 1307, but may be any display device that can be controlled by or communicate with the monitoring device 101 (or monitoring system). Execution of the process of step 2412 displays the front page 1201 shown in the upper part of Fig. 12. In the example shown in Fig. 11 and Fig. 12, the display output information 1101, whose display output information identification information 1111 (display output information ID) has a value of "do1", includes process identification information 195 (processing ID) whose value is "sa1", output information 307 whose value is "3.421", and alert condition success / failure information identification information 1011 (alert condition success / failure information ID) whose value is an insignificant value "- (a value indicating that the alert condition success / failure information 1001 does not exist)", and therefore, in the result list of the front page 1201 in Fig. 12, a record display (row display) is displayed which includes the process identification information 195 (processing ID) whose value is "sa1", output information 307 whose value is "3.421", and information 1211 indicating the presence or absence of an alert, whose display is "none". Similarly, the display output information 1101, whose display output information identification information 1111 (display output information ID) has a value of "do2," includes process identification information 195 (processing ID) whose value is "sa2," output information 307 whose value is "12.3245," and alert condition success / failure information identification information 1011 (alert condition success / failure information ID) whose significant value is "aa1." Therefore, the results list on the front page 1201 in Fig. 12 displays a record display (row display) including the process identification information 195 (processing ID) whose value is "sa2," output information 307 whose value is "12.3245," and information 1211 (with hyperlink 1212) indicating the presence or absence of an alert, with the display set to "Yes." By the processing of step 2407 or step 2409 already described, information for realizing the record display (row display) for the process identification information 195 (processing ID) is included in the information 2221 in the front page portion (of the result information 2220). The front page 1201 also has an exit icon 1225 . 24, the display output control unit 2202 determines whether the end icon 1225 has been clicked with a mouse or the like. If the determination result of step 2413 is affirmative, the display output control unit 2202 performs control to end the display of the result screen 1200. If the determination result of step 2413 is negative, control transitions to step 2414. 24, the display output control unit 2202 determines whether the information 1211 (with hyperlink 1212) indicating the presence or absence of an alert that is displayed as "Yes" has been clicked with a mouse or the like for any of the record displays (row displays) in the results list on the front page 1201. If the determination result in step 2414 is affirmative, control transitions to step 2415. If the determination result in step 2414 is negative, control returns to step 2413.
[0114] 24, the display output control unit 2202 controls so as to display the detailed information page 1202 on the result screen 1200. The display output control unit 2202 controls, for example, the display or output device 1307 (or some other display device) of the monitoring device 101 (or monitoring system) so as to perform a display based on information consisting of one or both of information 2222 indicating the details (contents) of the satisfied alert condition 412 (out of the result information 2220) generated based on the processing of step 2408, and information 2223 indicating the state transition history before and after the time when the alert condition 412 was satisfied. The detailed information page 1202 displayed in step 2415 is a detailed information page for the process identification information 195 (processing ID) corresponding to the information 1211 (with hyperlink 1212) indicating the presence or absence of an alert with a display of "Yes", which was determined to have been clicked in step 2414. As in the example shown in Fig. 12, when the information 1211 (with hyperlink 1212) indicating the presence or absence of an alert with a display of "Yes" is clicked in the record display (row display) where the value of the process identification information 195 (processing ID) is "sa2" on the front page 1201, the display output control unit 2202 performs control to display the detailed information page 1202 for the process target (analysis target) with the value of the process identification information 195 (processing ID) being "sa2", as shown in the lower part of Fig. 12. The detailed information page 1202 may include information 1222 indicating the content of the alert condition that has been met, information 1223 illustrating changes (transitions) in the status value 1821 before and after the time the alert condition was met, and a back icon 1224. Information 1222 indicating the content of the alert condition that has been met is displayed based on information 2222 indicating the details (contents) of the alert condition 412 that has been met (out of the result information 2220) generated based on the processing of step 2408. Also, information 1223 illustrating changes (transitions) in the status value 1821 before and after the time the alert condition 412 was met is displayed based on information 2223 indicating the state transition history before and after the time the alert condition 412 (out of the result information 2220) was met, generated based on the processing of step 2408. 24, the display output control unit 2202 determines whether the back icon 1224 has been clicked on the detailed information page 1202. If the determination result of step 2416 is affirmative, control returns to step 2412, and the front page 1201 is displayed again. If the determination result of step 2416 is negative, control remains at step 2416 itself (the display of the detailed information page 1202 continues).
[0115] 5. Other (variations) The present disclosure is not limited to the above-described embodiments and includes various modifications. Part of the configurations and processes of the embodiments may be replaced with the configurations and processes of other conceivable embodiments. The configurations and processes of other conceivable embodiments may be added to the configurations and processes of the embodiments. For example, the present disclosure may include the following modified embodiments.
[0116] (Variation A) Receiving setting information from the distribution server In the above embodiment, the user of the monitoring device 101 (or monitoring system) inputs information that defines the alert condition information 401 via a user interface that uses the alert condition management screen 500. Also, the user of the monitoring device 101 (or monitoring system) inputs information that defines the status definition information 601 via a user interface that uses the status definition management screen 700.
[0117] 2, the monitoring device 101 (or monitoring system) may have a setting information receiving unit 250, and the setting information receiving unit 250 may receive one or both of the alert condition information 401 and the state definition information 601 transmitted from the distribution server 299 via the network 298. The setting information receiving unit 250 may then store the received alert condition information 401 in the alert condition information storage unit 400. The setting information receiving unit 250 may store the received state definition information 601 in the state definition information storage unit 600. The alert condition information storage unit 400 may contain both the alert condition information 401 transmitted from the distribution server 299 and the alert condition information 401 defined by the user of the monitoring device 101 (or monitoring system) via a user interface using the alert condition management screen 500. Furthermore, the status definition information storage unit 600 may contain both the status definition information 601 transmitted from the distribution server 299 and the status definition information 601 defined by the user of the monitoring device 101 (or monitoring system) via a user interface using the status definition management screen 700. Alternatively, the monitoring device 101 (or monitoring system) may be provided with no function for the user of the monitoring device 101 (or monitoring system) to input information defining the alert condition information 401 via a user interface using the alert condition management screen 500, and the alert condition information 401 may be solely the alert condition information 401 sent and received from the distribution server 299 to the monitoring device 101 (or monitoring system). Similarly, in the monitoring device 101 (or monitoring system), the function for the user of the monitoring device 101 (or monitoring system) to input information defining the status definition information 601 via a user interface using the status definition management screen 700 may be eliminated, and the status definition information 601 may be solely the status definition information 601 sent and received from the distribution server 299 to the monitoring device 101 (or monitoring system). According to the above modification A, it becomes possible to automatically apply to the monitoring device 101 (or the monitoring system) one or both of the alert condition information 401 and the state definition information 601 created based on knowledge obtained about devices of the same type as or similar to the monitored device 180 (for example, knowledge about abnormalities that may occur in the monitored device 180). Furthermore, modification A can also save the user of the monitored device 180 (or the monitoring system) some or all of the effort of defining one or both of the alert condition information 401 and the state definition information 601 by himself or herself.
[0118] (Modification B) Monitoring device (monitoring system) without variable value acquisition target identification unit In the above embodiment, the monitoring apparatus 101 (or monitoring system) has a variable value acquisition target specification unit 1601. The function performed by the variable value acquisition target specification unit 1601 automatically generates variable value acquisition target specification information 801 (acquisition target process identification information 812, acquisition target variable identification information 813) using the alert condition information 401, the state definition information 601, and the monitoring target software code 1620, which is highly convenient for the user of the monitoring apparatus 101 (or monitoring system).
[0119] However, the method for acquiring the variable value acquisition target specification information 801 (acquisition target process identification information 812, acquisition target variable identification information 813) is not limited to the above. Another method for acquiring the variable value acquisition target identification information 801 (acquisition target process identification information 812, acquisition target variable identification information 813) is for the distribution server 299 to transmit the variable value acquisition target identification information 801 (acquisition target process identification information 812, acquisition target variable identification information 813) via the network 298, and for the setting information receiving unit 250 in the monitoring device 101 (or monitoring system) to receive it. The setting information receiving unit 250 stores the received variable value acquisition target identification information 801 (acquisition target process identification information 812, acquisition target variable identification information 813) in the variable value acquisition target identification information holding unit 800. For example, this method is possible if the distribution server 299 (or a server related to the distribution server 299, etc.) knows the contents of the monitoring target software code 1620 and can define the alert condition information 401 and the state definition information 601. If this method is adopted, it will be possible to remove the function of the variable value acquisition target identification unit 1601 from the monitoring device 101 (or monitoring system) (simplify the configuration of the monitoring device 101 (or monitoring system)) while ensuring the convenience of not requiring the user of the monitoring device 101 (or monitoring system) to generate the variable value acquisition target identification information 801 (acquisition target process identification information 812, acquisition target variable identification information 813) themselves.
[0120] Yet another method for acquiring the variable value acquisition target identification information 801 (acquisition target process identification information 812, acquisition target variable identification information 813) is to provide the monitoring apparatus 101 (or monitoring system) with a user interface that enables a user of the monitoring apparatus 101 (or monitoring system) to generate the variable value acquisition target identification information 801 (acquisition target process identification information 812, acquisition target variable identification information 813). For example, the monitoring apparatus 101 (or monitoring system) may display a screen including the alert condition information 401, the state definition information 601, and the monitoring target software code 1620 on the display or output device 1307, and then accept input of information that defines the variable value acquisition target identification information 801 (acquisition target process identification information 812, acquisition target variable identification information 813) from the user of the monitoring apparatus 101 (or monitoring system). If this method is adopted, the user of the monitoring device 101 (or monitoring system) will need to generate the variable value acquisition target identification information 801 (acquisition target process identification information 812, acquisition target variable identification information 813) himself / herself, but it will be possible to delete the function of the variable value acquisition target identification unit 1601 from the monitoring device 101 (or monitoring system) (simplifying the configuration of the monitoring device 101 (or monitoring system)).
[0121] (Variation C) Granularity of Acquisition Target Processing In the above embodiment, the acquisition target process identification information 812 is a combination of the program name of the monitoring target software 190 and a line number indicating a location in the monitoring target software code 1620.
[0122] However, as already pointed out, the acquisition target process identification information 812 may be information in any format as long as it can identify the acquisition target process 182. For example, the acquisition target process identification information 812 may identify an object in a program created using object-oriented programming. Alternatively, the acquisition target process identification information 812 may identify a subroutine or function in a program created using procedural programming. If the acquisition target process identification information 812 identifies the acquisition target process 182 at the granularity of an object, subroutine, or function, the variable value acquisition unit 1801 may, for example, acquire the return value of the object, subroutine, or function as the variable value 1811. According to the above modification C, it is possible to appropriately deal with the programming method of the monitoring target software code 1620, the specifications for obtaining the variable value 1811, and the like.
[0123] (Variation D) Obtaining the variable value of a push expression In the above embodiment, the variable value acquisition unit 1801 acquires the variable value 1811 by a pull-like operation. That is, the variable value acquisition unit 1801 monitors the monitoring target device 180 and acquires the variable value 1811 from the monitoring target device 180 based on the variable value acquisition target specification information 801.
[0124] However, as already pointed out, the variable value acquisition unit 1801 may acquire the variable value 1811 by a push-like operation. In other words, the monitoring target process 192 may provide the variable value 1811 to the variable value acquisition unit 1801 at an appropriate time based on the variable value acquisition target identification information 801, and the variable value acquisition unit 1801 may then acquire the provided variable value 1811. To achieve this, for example, variable value acquisition target specification information 801 may be transmitted from the monitoring device 101 (or monitoring system) to the monitored device 180. Then, the monitored device 180 may construct some mechanism for transmitting, at an appropriate time, the variable value 1811 of the acquisition target variable 183 at the time of execution of the acquisition target process 182 indicated by the variable value acquisition target specification information 801 to the monitoring device 101 (or monitoring system). According to the above modification D, the monitoring burden on the monitoring device 101 (or the monitoring system) is reduced.
[0125] (Variation E) Alert condition success / failure information indicating that the alert condition is not met In the above embodiment, the alert condition fulfillment determination unit 2001 generates the alert condition fulfillment information 1001 when it determines that any one of the alert conditions 412 is fulfilled.
[0126] However, as already pointed out, when it is determined that none of the alert conditions 412 are satisfied in the processing of the monitored device 180 relating to certain processing identification information 195 (processing ID), the alert condition success / failure determination unit 2001 may generate alert condition success / failure information 1001 indicating that the alert condition 412 is not satisfied for the processing identification information 195 (processing ID). In this case, step 2103 in Fig. 21 is eliminated, step 2104 in Fig. 21 is always executed, and alert condition success / failure information is generated in step 2104 regardless of whether the alert condition 412 is satisfied or not. Also, step 2302 in Fig. 23 is a determination process of "does the alert condition success / failure information 1001 for the new process identification information 195 (process ID) indicate the satisfaction of any of the alert conditions 412?" In the above modification E, it is possible to reliably confirm that none of the alert conditions 412 was satisfied in the processing of the monitored device 180 related to certain processing identification information 195 (processing ID). Furthermore, even if the alert condition success / failure information 1001 for any processing identification information 195 (processing ID) is missing due to some error in the monitoring device 101 (or monitoring system), the absence can be detected.
[0127] (Variation F) Integration of monitoring devices and monitoring systems In the above embodiment, the monitoring device 101 (or monitoring system) and the monitored device 180 (for example, an embedded device or an automatic analyzer) appear to be separate hardware entities.
[0128] However, the monitoring device 101 (or monitoring system) and the monitored device 180 (for example, an embedded device or an automatic analyzer) may be integrated in terms of hardware. For example, each of the functional units constituting the monitoring device 101 (or the monitoring system) in the above embodiment may be realized by causing the hardware resources of the monitored device 180 to execute a program for that functional unit. Also, for example, each of the retention units constituting the monitoring device 101 (or the monitoring system) in the above embodiment may be realized by a recording device or a storage device as a hardware resource of the monitored device 180. The above variant F reduces the overall hardware resources, and also enables the transmission and reception of information between the part corresponding to the monitoring device 101 (or monitoring system) and the part corresponding to the monitored device 180 to be realized quickly and simply.
[0129] (Variation G) Monitored Devices Other than Automated Analyzers In the above description of the embodiment, an automatic analyzer that performs the operations shown in FIG. 3, analyzes a sample 302, and outputs output information 307 as the analysis result, has been taken as an example of the monitored device 180. If the monitored device 180 is an automatic analyzer, when an alert is issued for the automatic analyzer, the user of the automatic analyzer can easily understand the analysis target (e.g., specimen 302) that will be affected by the alert, and can easily take subsequent action.
[0130] However, the monitored device 180 that is the target of monitoring by the monitoring device 101 (or monitoring system) of the present disclosure is not limited to an automatic analyzer. More generally, the monitored device 180 that is the target of monitoring by the monitoring device 101 (or monitoring system) of the present disclosure can be a device that (α) has some kind of output information 307 as a result of processing for each processing target, (β) the validity (reliability) of the output information 307 from the device is guaranteed by the fact that the device does not have any internal abnormalities (or even if the device has any abnormalities, the abnormalities are not serious), and (γ) is a device for which it is not necessarily clear whether the device has any internal abnormalities or the like by verifying only the output information 307.
[0131] From the above perspective, a printer is an example of a monitored device 180 other than an automatic analyzer. For example, for each printed material output from a printer, which is a monitored device 180, the monitoring device 101 (or monitoring system) can associate output information 307 (which may include process identification information 195 (process ID) as identification information indicating the printing task of the printed material) that indicates that the printed material has been printed with alert condition success / failure information 1001 that indicates whether any of the alert conditions 412 related to the printer were met when the printer printed the printed material, and provide the result information 2220. Here, the alert conditions 412 related to the printer are expected to be abnormalities in the status of each of the printer's components, such as the printer header or toner (for example, abnormal status that causes small highlights or color errors in the printed material). Even if you visually inspect the printed matter output from the printer, it may be difficult to detect minor defects. Therefore, the monitoring device 101 (or monitoring system) provides alert condition success / failure information 1001 associated with each printed matter, making it clear which printed matter should be reprinted.
[0132] Another example of a monitored device 180 other than an automatic analyzer is a factory line. For example, the monitoring device 101 (or monitoring system) can associate, for each product output from the most downstream part of a factory line that is the monitored device 180, output information 307 (which may include process identification information 195 (process ID) as identification information indicating the production slot of the product) notifying that production of the product has been completed with alert condition success / failure information 1001 indicating whether any of the alert conditions 412 related to the factory line were met when the factory line produced the product, and provide the result information 2220. Here, the alert conditions 412 related to the factory line are expected to be an abnormality in the status of each robot included in the factory line or some kind of abnormality related to each of the parts being handled. Even if the products output from the most downstream part of the factory line are inspected, it may be difficult to discover potential defects, etc. Therefore, by providing alert condition success / failure information 1001 associated with each individual product from the monitoring device 101 (or monitoring system), it becomes clear which products should be canceled from shipment.
[0133] In addition to the examples mentioned above, any device that satisfies some or all of the properties shown in (α), (β), and (γ) above can be a monitored device 180 to which the present disclosure applies. For example, many embedded devices used in household electrical appliances (home appliances) and the like can be monitored devices 180 to which the present disclosure applies. (Note that the properties shown in (α), (β), and (γ) above are merely examples. Devices that have properties other than these properties can also potentially be monitored devices 180 to which the present disclosure applies.) As can be seen, monitored device 180 can be a wide variety of devices.
[0134] The technical matters shown in the above-described embodiments of the present disclosure and the modified examples of the embodiments can be combined as appropriate as long as no technical contradiction occurs.
Claims
1. A monitoring device having a processing unit and a storage unit, the monitoring device is for monitoring a monitoring target device that executes monitoring target software, the monitored device executes the monitored software to use one or more variables and to realize one or more monitored processes, the monitoring device includes a variable value acquisition target specifying unit, a variable value acquisition unit, an alert condition fulfillment determination unit, and a display output control unit; the variable value acquisition target specification unit specifies, based on an alert condition that is a condition under which an alert is issued for the monitoring target device and the content of the monitoring target process, an acquisition target process that indicates a process from which a variable value that is a value of the variable is to be acquired among the monitoring target processes, and an acquisition target variable that indicates the variable from which the variable value is to be acquired when the acquisition target process is performed; the variable value acquisition unit acquires the variable value of the acquisition target variable when the acquisition target process is performed; the alert condition fulfillment determination unit determines whether the alert condition is fulfilled or not based on the variable value acquired by the variable value acquisition unit, The display output control unit controls the display or output of output information output based on the monitored processing in association with information indicating whether the alert condition determined by the alert condition success / failure determination unit has been met, in a monitoring device.
2. 2. The monitoring device according to claim 1, the monitoring device includes an alert condition information storage unit that stores one or more pieces of alert condition information, a state definition information storage unit that stores one or more pieces of state definition information, and a state value generation unit; the state definition information is information that defines a state of the monitoring target device, and is information that defines each state value of the state by one or more of the variable values, the alert condition information is information that defines the alert condition related to the monitoring target device, and the alert condition is defined by one or more of the status values; the state value generation unit generates one or more state values based on the one or more variable values acquired by the variable value acquisition unit and the state definition information; the alert condition fulfillment determination unit determines whether the alert condition is fulfilled or not based on the one or more state values generated by the state value generation unit and the alert condition information.
3. The monitoring device according to claim 2, the variable value acquisition target specification unit includes a state specification unit, a variable specification unit, a code analysis unit, and a variable value acquisition target specification information generation unit; the state identification unit uses the alert condition information to identify the state corresponding to the state value included in the definition of the alert condition, the variable specification unit specifies, by using the state definition information, the acquisition target variable corresponding to the variable value included in the definition of the state value of the state specified by the state specification unit; the code analysis unit analyzes code of the software to be monitored and identifies a location in the code where the variable value of the acquisition target variable identified by the variable identification unit may be rewritten; The variable value acquisition target identification information generation unit generates variable value acquisition target identification information by associating acquisition target process identification information indicating the acquisition target process corresponding to the location identified by the code analysis unit with acquisition target variable identification information indicating the acquisition target variable identified by the variable identification unit.
4. The monitoring device according to claim 2, the monitoring device has an alert condition management unit and a status management unit, the alert condition management unit controls to display an alert condition management screen, generates the alert condition information based on information input via the alert condition management screen, and stores the alert condition information in the alert condition information storage unit, the alert condition management screen provides a user interface for defining new alert conditions using one or more of the status values; the state management unit controls to display a state definition management screen, generates the state definition information based on information input via the state definition management screen, and stores the state definition information in the state definition information holding unit, The state definition management screen provides a user interface for setting a name for a new state and a user interface for setting one or more variable values that define each of the state values for the new state.
5. The monitoring device according to claim 2, the monitoring device includes a state transition history information storage unit that stores state transition history information; the state transition history information is time-series information of the state values of one or more of the states defined for the monitoring target device, the state value generation unit stores the generated one or more state values in the state transition history information storage unit; The alert condition information may include, as a definition of the alert condition, an order relationship of the status values in a time series, the alert condition fulfillment determination unit has a state transition verification unit, the state transition verification unit determines whether the alert condition is met or not by using the time series information of the state values stored in the state transition history information storage unit when the order relationship is included in the definition of the alert condition indicated by the alert condition information.
6. The monitoring device according to claim 5, the display output control unit controls to display a result screen or controls to output result information, A monitoring device wherein the result screen or result information includes one that indicates the output information, one that indicates whether the alert condition is met, and one that indicates at least a portion of the state transition history information.
7. 2. The monitoring device according to claim 1, the monitoring device includes a variable value acquisition target identification information storage unit that stores variable value acquisition target identification information; the variable value acquisition target specification unit generates the variable value acquisition target specification information, which is obtained by associating acquisition target process identification information, which indicates the acquisition target process, with acquisition target variable identification information, which indicates the acquisition target variable, and stores the variable value acquisition target specification information in the variable value acquisition target specification information storage unit; A monitoring device, wherein the variable value acquisition unit monitors the monitored process using the variable value acquisition target identification information to acquire the variable value, or acquires the variable value provided by the monitored process that is executed while referring to the variable value acquisition target identification information.
8. 2. The monitoring device according to claim 1, the monitoring device includes a monitoring target device output receiving unit, an alert condition success / failure information holding unit that holds alert condition success / failure information, and a display output information holding unit that holds display output information; the alert condition success / failure determination unit generates the alert condition success / failure information indicating a determination result as to whether or not the alert condition is satisfied, and stores the alert condition success / failure information in the alert condition success / failure information storage unit, the monitoring target device output receiving unit receives the output information output from the monitoring target device, generates the display output information which is information that associates the received output information with identification information of the alert condition success / failure information held in the alert condition success / failure information holding unit, and stores the display output information in the display output information holding unit; The display output control unit controls display or output based on the display output information stored in the display output information storage unit.
9. 2. The monitoring device according to claim 1, the monitoring device includes an alert condition information storage unit that stores one or more pieces of alert condition information, and a setting information receiving unit; the alert condition information is information that defines the alert condition related to the monitoring target device, the setting information receiving unit receives the alert condition information transmitted from a distribution server, and stores the received alert condition information in the alert condition information holding unit; The alert condition fulfillment determination unit uses the alert condition indicated by the alert condition information.
10. The monitoring device according to claim 2, the monitoring device has a setting information receiving unit, the setting information receiving unit receives the alert condition information and the state definition information transmitted from a distribution server, stores the received alert condition information in the alert condition information holding unit, and stores the received state definition information in the state definition information holding unit.
11. 2. The monitoring device according to claim 1, the variable value acquisition target specification unit includes a variable specification unit, a code analysis unit, and a variable value acquisition target specification information generation unit; the variable identification unit identifies the acquisition target variable that affects whether the alert condition is satisfied, the code analysis unit analyzes code of the software to be monitored and identifies a location in the code where the variable value of the acquisition target variable identified by the variable identification unit may be rewritten; The variable value acquisition target identification information generation unit generates variable value acquisition target identification information by associating acquisition target process identification information indicating the acquisition target process corresponding to the location identified by the code analysis unit with acquisition target variable identification information indicating the acquisition target variable identified by the variable identification unit.
12. 2. The monitoring device according to claim 1, The monitoring target device is a monitoring device that is an embedded device that outputs the output information, which is a processing result, for each processing target to which the monitoring target processing is applied.
13. 2. The monitoring device according to claim 1, The monitoring target device is an automatic analysis device that outputs the output information, which is an analysis result, for each analysis target that is analyzed by the monitoring target process.
14. A monitoring method executed by an information processing device having a processing unit and a storage device, The monitoring method is for monitoring a monitored device that executes monitored software, the monitored device executes the monitored software to use one or more variables and to realize one or more monitored processes, The monitoring method includes a step of specifying a variable value acquisition target, a step of acquiring a variable value, a step of determining whether an alert condition is satisfied, and a step of controlling a display output. the variable value acquisition target identification step is a step of identifying an acquisition target process, which indicates a process from which a variable value, which is the value of the variable, is to be acquired among the monitored processes, and an acquisition target variable, which indicates the variable from which the variable value is to be acquired when the acquisition target process is performed, based on an alert condition, which is a condition under which an alert is issued for the monitored device, and the content of the monitored process; the variable value acquisition step is a step of acquiring the variable value of the acquisition target variable when the acquisition target process is performed, the alert condition fulfillment determination step is a step of determining whether the alert condition is fulfilled or not based on the variable value acquired in the variable value acquisition step; The display output control step is a step of controlling the display or output of output information output based on the monitored process in association with information indicating whether the alert condition determined in the alert condition success / failure determination step is met.
15. 15. The monitoring method of claim 14, further comprising: The monitoring method includes a state specifying step, a variable specifying step, a code analyzing step, a variable value acquisition target specifying information generating step, and a state value generating step, the state specifying step is a step of specifying, using alert condition information, a state of the monitoring target device corresponding to a state value included in a definition of the alert condition; the variable specifying step is a step of specifying, by using state definition information, the acquisition target variable corresponding to the variable value included in the definition of the state value of the state specified by the state specifying step; the code analysis step is a step of analyzing code of the monitoring target software and identifying a location in the code where the variable value of the acquisition target variable identified in the variable identification step may be rewritten; the variable value acquisition target specification information generation step is a step of generating variable value acquisition target specification information by associating acquisition target process identification information indicating the acquisition target process corresponding to the location specified in the code analysis step with acquisition target variable identification information indicating the acquisition target variable specified in the variable specification step; the state value generating step is a step of generating one or more state values based on the one or more variable values acquired in the variable value acquiring step and the state definition information, the alert condition fulfillment determination step is a step of determining whether the alert condition is fulfilled or not based on the one or more state values generated in the state value generation step and the alert condition information, the state definition information is information that defines the state of the monitoring target device, and is information that defines each of the state values of the state by one or more of the variable values; A monitoring method, wherein the alert condition information is information that defines the alert condition related to the monitored device, and the alert condition is defined by one or more of the status values.
Citation Information
Patent Citations
Anomaly detection system, anomaly detection method, and program
WO2022249842A1