Monitoring device and monitoring method executed by information processing device
The monitoring device identifies and acquires variable values only when needed, reducing costs and enhancing alert relevance by associating them with specific processes or analysis results, addressing the inefficiencies of existing monitoring systems.
Patent Information
- Application Number
- PCT/JP2025/008750
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-04-08
- Filing Date
- 2025-03-10
- Publication Date
- 2025-10-16
AI Technical Summary
Existing monitoring systems for devices like embedded devices or automatic analyzers incur high costs and processing loads due to constant monitoring of register values, and fail to associate alerts with specific processing or analysis results, making it difficult to address abnormalities effectively.
A monitoring device that identifies acquisition targets for variable values based on alert conditions, acquires these values only when necessary, and associates alerts with specific processes or analysis results, reducing unnecessary monitoring and enhancing alert relevance.
This approach reduces monitoring costs and improves the efficiency of addressing abnormalities by clearly associating alerts with processing or analysis targets, facilitating targeted corrective actions.
Smart Images

Figure JP2025008750_16102025_PF_FP_ABST
Abstract
Description
Monitoring device and monitoring method executed by information processing device
[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).
[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.
[0004] International Publication No. 2022 / 249842
[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.
[0009] In order to achieve at least one of the above objects, the present disclosure may include, for example, the following features. One aspect of the present disclosure is a monitoring device. The monitoring device is configured to monitor a monitoring target device that executes monitoring target software. The monitoring target device uses one or more variables and realizes one or more monitoring target processes by executing the monitoring target software. The monitoring device includes a variable value acquisition target identification unit, a variable value acquisition unit, an alert condition success / failure determination unit, and a display output control unit. The variable value acquisition target identification unit identifies, 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, which is a value of a variable, is to be acquired among the monitoring target processes, and an acquisition target variable that indicates a variable from which a variable value is to be acquired when the acquisition target process is performed. The variable value acquisition unit acquires a variable value of the acquisition target variable when the acquisition target process is performed. The alert condition success / failure determination unit determines whether the alert condition is met 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.
[0010] The monitoring device of the present disclosure acquires the variable value of the target variable when the target process is performed. In other words, the monitoring device of the present disclosure does not need to constantly monitor the variable value, which reduces the cost of monitoring the target device.
[0011] Furthermore, the monitoring device of the present disclosure controls so that output information output based on the monitored process is associated with information indicating whether an alert condition is met and then 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 the process, etc., by the monitored device).
[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 a condition under which an alert is issued for the monitored device, and the content of the monitored process, a target process for acquisition, which indicates a process for which a variable value, which is a value of a variable, is to be acquired, and a target variable for acquisition, which indicates a variable for which a variable value is to be acquired when the target process for acquisition is performed.In this way, the monitoring device of the present disclosure may identify the timing of acquisition and the target variable for acquisition of a variable value used to determine whether the alert condition is met, thereby reducing the human cost for configuring the monitored device for monitoring (for example, setting the timing for acquiring variable values and setting the target variable for acquisition).
[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 is a system having 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. Features that the present disclosure may have other than those described above, and the effects corresponding to those features, are disclosed in this specification, claims, or drawings.
[0015] 1 shows a basic functional configuration of an embodiment of the present disclosure. 2 shows an overall functional configuration of an embodiment of the present disclosure. 3 shows an example of operation of a monitored device. 4 shows an alert condition information storage unit. 5 shows an alert condition management screen. 6 shows a state definition information storage unit. 7 shows a state definition management screen. 8 shows a variable value acquisition target identification information storage unit. 9 shows a state transition history information storage unit. 10 shows an alert condition success / failure information storage unit. 11 shows a display output information storage unit. 12 shows a result screen. 13 shows a computer architecture. 14 shows a flowchart of the processing of the alert condition management unit. 15 shows a flowchart of the processing of the state management unit. 16 shows a functional configuration related to the variable value acquisition target identification unit. 17 shows a flowchart of the processing of the variable value acquisition target identification unit. 18 shows a functional configuration related to the variable value acquisition unit and the state value generation unit. 19 shows a flowchart of the processing of the variable value acquisition unit and the state value generation unit. 20 shows a functional configuration related to the alert condition success / failure determination unit. 21 shows a flowchart of the processing of the alert condition success / failure determination unit. 22 shows a functional configuration related to the monitored device output receiving unit and the display output control unit. 23 shows a flowchart of the processing of the monitored device output receiving unit. 24 shows a flowchart of the processing of the display output control unit.
[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. 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 system, device, or functional unit of the present disclosure may be integrated into a single piece of hardware, or may be divided into multiple parts that perform their functions in cooperation with each other. Several systems, devices, or functional units may be integrated into hardware. 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)), with the remaining functions being 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 and the like described in this disclosure may be realized by hardware. One or more systems, devices, or functional units of the present disclosure may be realized by 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 program that generally encompasses software that, through the cooperation of software and hardware resources, creates a specific monitoring device (monitoring system) or its operating method according to the intended use. In other words, the program is not limited to a specific type or form of program. Furthermore, the program may be initially recorded in a compressed format. Items that use the same reference numbers in multiple drawings are similar to each other. In flowchart drawings, rectangular boxes indicate processing steps, and hexagonal boxes indicate conditional branching steps. In flowchart drawings, "step" is abbreviated as "S." Furthermore, the display or output aspects shown in the drawings are merely examples. Within the spirit of this disclosure, the display or output aspects may differ from those shown in the drawings.
[0017] 1. Basic Functional Configuration (FIG. 1) FIG. 1 shows the basic functional configuration 100 (and the information handled) of a monitoring device 101 (or monitoring system) according to an embodiment of the present disclosure. Note that not all of the functional configurations shown in FIG. 1 are required. Furthermore, the existence of functional configurations other than those shown in FIG. 1 is not precluded. In FIG. 1 (, FIG. 2, FIG. 16, FIG. 18, FIG. 20, and FIG. 22), solid rectangles with the word "unit" attached to their names indicate functional units. In FIG. 1 (, FIG. 2, FIG. 16, FIG. 18, and FIG. 22), dotted rectangles indicate information handled.
[0018] The monitoring device 101 is for monitoring the monitored device 180. Note that instead of the monitoring device 101, a monitoring system that can provide functions similar to those provided by the monitoring device 101 may be used. The monitoring system may be comprised of multiple devices. The monitored device 180 may execute monitored software 190 to use one or more variables 181 and realize one or more monitored processes 192. Note that, depending on the type of monitored device 180, part of the monitored processes 192 may be realized more hardware-wise. The monitored device 180 may sequentially execute one or more monitored processes 192 for each process target assigned process identification information 195 (process ID), and may output output information 307 as the processing 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 target processes 192 for each sample 302 (see FIG. 3) that is the target of analysis and is assigned process identification information 195 (process ID), and output output information 307 as the analysis result for each target of analysis. In FIG. 1 (and each drawing described below), sa1, sa2, etc. 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 specification unit 1601 specifies the timing of acquisition of the variable value 1811 (i.e., the timing with which the variable value 1811 is acquired in conjunction with the execution of which monitoring target process 192) and the variable 181 from which the variable value 1811 is to be acquired (i.e., the variable value 1811 of which variable 181 is to be acquired) so that the monitoring apparatus 101 (or the 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 satisfied. The variable value acquisition target specification 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 collectively be referred to as variable value acquisition target specification information 801. Note that different pieces of variable value acquisition target specification information 801 may include different (not completely identical) pieces of acquisition target variable identification information 813. For example, as shown in FIG. 1, if each of the monitored processes 192 is represented as α, β, γ, etc. and each of the variables 181 is represented as A, B, C, D, etc., then β 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. That is, 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, it is also possible for the monitored device process 192 to provide the variable value 1811 to the variable value acquisition unit 1801 in a timely manner based on the variable value acquisition target identification information 801, and then the variable value acquisition unit 1801 acquires 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. Furthermore, 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 (e.g., a status value 1821. FIG. 6 shows an example of the definition of the status value 1821). Furthermore, the alert condition success / failure determination unit 2001 may determine whether or not the alert condition 412 is satisfied 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 status value 1821)). Furthermore, the alert condition success / failure determination unit 2001 may determine whether the alert condition 412 is satisfied by using a time-series transition (e.g., state transition) of the variable value 1811 (or information derived from the variable value 1811 (e.g., state value 1821)). When the alert condition success / failure determination unit 2001 determines that any of the alert conditions 412 is satisfied, it 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. Note that, as in Modification E described below, when it is determined that none of the alert conditions 412 is satisfied in a process of the monitored device 180 related to certain process identification information 195 (process 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 process identification information 195 (process 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, a non-volatile recording medium 1303 (recording device) (see FIG. 13)). The display output control unit 2202 controls the display or output by associating the output information 307 with 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 take action against the issued alert. In addition, it becomes easier for the user of the monitored device 180 or the monitoring device 101 (or the monitoring system) to determine which processing target (analysis target) has low reliability of the output information 307, which is the processing result (analysis result). In some cases, the user of the monitored device 180 can also have the monitored device 180 redo the processing and analysis of the processing target (analysis target) corresponding to the unreliable 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 to 12) Fig. 2 shows an overall functional configuration 200 (and the information handled) including the monitoring device 101 (or monitoring system) according to an embodiment of the present disclosure. Note that not all of the functional configurations shown in Fig. 2 are required. Furthermore, the existence of functional configurations other than those shown in Fig. 2 is not precluded. The content 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 content of the processing performed by the monitoring device 101 (or monitoring system), etc. will be explained. Note that what has already been explained in conjunction with 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. Operational 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, the output information 307 alone may be such that it is difficult to determine an abnormality or the state of the monitored device 180. 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] FIG. 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 the state of the same reaction cell 301 transitions over time from what is shown on the left to what is shown on the right. In this 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. Immediately after the operation stage (Operation), a cleaning stage (Clean) occurs in which the 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). After returning to the initial stage (Init), the automated analyzer starts the operation stage (Operation) for the next sample 302 (next process identification information 195 (process ID)). The automatic analyzer can grasp which stage the operation it is performing on the reaction cell 301, etc. is included in. The monitored process 192 executed by the automatic analyzer manages, as a variable s, identification information of the stage to which the operation 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 operation 300 of the automated analyzer will be described below step by step. In phase 1 (ph1), the automated analyzer is in the initial stage (Init) (the 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 for holding the specimen 302 and causing the specimen 302 to react with a reagent 303 inside the reaction cell 301, thereby performing a process on the specimen 302. In phase 2 (ph2), the automated analyzer transitions to the operation stage (Operation). (The value of the variable s changes from 1 to 2.) The automated analyzer then holds the specimen 302 in the reaction cell 301. This specimen 302 is assigned process identification information 195 (process ID). In the example of FIG. 3, the value of the process ID is sa1. The automated analyzer may perform some process on the specimen 302 held in the reaction cell 301 depending on the content of the analysis.
[0029] In phase 3 (ph3), the automated analyzer dispenses reagent 303 into reaction cell 301. The automated analyzer may use a reagent probe 304 as a tool for providing reagent 303 to reaction cell 301. Reagent probe 304 is a tubular tool through which reagent 303 passes. The automated analyzer is capable of detecting clogging of reagent probe 304. The monitored process 192 executed by the automated analyzer manages whether or not the reagent probe 304 is clogged as the variable value of variable c (see the record (row) in which the value of state definition information identification information 611 (state definition information ID) is "st2" (see FIG. 6)). The automated analyzer also has reagent inventory 305 as a supply source for supplying reagent 303 to reagent probe 304. The automated analyzer is capable of detecting the inventory amount of reagent 303 in reagent inventory 305. The monitored process 192 executed by the automatic analyzer manages the inventory amount of the reagent 303 in the reagent inventory 305 as the variable value of the variable amount (see the record (row) in Figure 6 where the value of the state definition information identification information 611 (state definition information ID) is "st1" (see Figure 6)).
[0030] In phase 4 (ph4), a reagent-containing sample 306 is held in the reaction cell 301. In phase 5 (ph5), the automated analyzer may process 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) (sa1 in this example) in the output information 307 and outputs the output information 307. (Alternatively, if the value of the process identification information 195 (processing ID) is obvious, 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 the monitoring system). Phase 5 (ph5) and phase 6 (ph6) may be performed integrally.
[0031] In phase 7 (ph7), the automated analyzer discards the analyzed sample 302. As a result, the reaction cell 301 no longer holds anything. In phase 8 (ph8), the automated analyzer transitions to the cleaning stage (clean). (The variable value of variable s transitions from 2 to 3.) The automated analyzer cleans the reaction cell 301. The automated analyzer may, for example, clean the reaction cell 301 by providing cleaning solution 308 to the reaction cell 301. In phase 1 (ph1) again, the automated analyzer transitions to the initial state (Init). (The variable value of variable s transitions from 3 to 1.) The reaction cell 301 has been cleaned and does not hold any sample 302. In phase 2 (ph2) again, the automated analyzer transitions to the operation stage (Operation). (The variable value of variable s transitions from 1 to 2.) The automated analyzer then causes the reaction cell 301 to hold the next sample 302. The next sample 302 is assigned process identification information 195 (process ID). In the example of Figure 3, the value of the process ID is sa2. The operations performed by the automated analyzer in the subsequent phases may be similar to the operations related to 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 Functional Configuration of Monitoring Device (Monitoring System) As shown in FIG. 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 executing a program for that functional unit on the computer architecture 1300 of the monitoring device 101 (or monitoring system) (illustrated in FIG. 13), or may be implemented in hardware. As shown in FIG. 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 a storage area in a non-volatile recording medium 1303 (storage device) or a storage device 1302 (memory) in the computer architecture 1300 of the monitoring device 101 (or monitoring system) (illustrated 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 communicable 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 one 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). Regarding the result information 2220 displayed on the result screen 1200, instead of or in addition to displaying it on the result screen 1200, the result information 2220 may be printed (output) on an output device or stored (output) in a recording device. Below, an overview of the roles played by each of the functional units, storage units, and screens is described. (A more detailed description is provided in "4. Processing Performed by the Embodiments of the Present Disclosure.")
[0034] 2-2-1. Overview of the alert condition management unit, etc. (FIGS. 4 and 5) The alert condition management unit 1499 controls the display of the 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 described below, 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." Note that in addition to the examples of the state value 1821 shown in FIG. 4, there are also "Shortage = False" and "Clot = False" as the state value 1821 (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 value of the alert condition information identification information 411 (alert condition information ID) is "co1." The status CellStatus indicates one of the three stages that the reaction cell 301 described in FIG. 3 can be in (see FIG. 6). The status Shortage 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 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, "CellStatus = not (Init → Operation → Clean → Init)" is recorded as the alert condition 412 in the record in which the value of the alert condition information identification information 411 (alert condition information ID) is "co2".In the example shown in FIG. 3, the monitored device 180, an automated analyzer, transitions (if operating normally) from the initial state (Init) to the operation state (Operation), from the operation state (Operation) to the cleaning state (Clean), and from the cleaning state (Clean) to the initial state (Init). "CellStatus = not (Init → Operation → Clean → Init)" indicates that the transition order of the state CellStatus deviates from the correct transition order between the three states 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 (monitored device 180) continues to operate under the condition that "CellStatus = not (Init → Operation → Clean → Init)" holds, for example, after performing an analysis of a certain sample 302, the analysis of the next sample 302 may be performed without cleaning the reaction cell 301. If a combination of status values 1821 like this should not occur, it is appropriate to issue an alert. The above example shows an example of an analysis process of the automated analyzer (monitored device 180) when the automated analyzer is operating normally, with a relatively simple order of steps: 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) to the automated analyzer (Init). The automated analyzer may handle more types of steps and analysis processes with more complex order of steps.For example, after a specific type of operation (Operation) indicating the execution of a specific type of analysis, a specific type of cleaning (Clean) using a specific type of cleaning solution 308 or a specific type of cleaning method may be performed. In this case, for example, in an automated analyzer, if a normal cleaning (Clean) is performed after a specific type of operation (Operation), the alert condition 412 may be established. Even if a normal analytical process has many types of steps and a complex order, if the alert condition 412 (alert condition information 401) is appropriately defined, the monitoring device 101 (or monitoring system) of the present disclosure can detect errors in the analytical process of the automated 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 dispensed properly into the reaction cell 301, and output information 307, which is an inappropriate analysis result, will be output. In this way, if a status value 1821 that should not occur appears, it is appropriate to issue an alert. Note that an abnormality that may occur in the automated analyzer, which is the monitored device 180, could be a mix-up of the specimen 302. By defining the status related to the automated 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 automated 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 the alert condition management screen 500. A user of the monitoring device 101 (or monitoring system) can edit and confirm the content 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) (deleting the alert condition information 401 from the alert condition information storage unit 400) via the alert condition management screen 500 (a user interface indicated by a delete alert condition checkbox 504 and a 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 state definition information 601 that indicates the definitions of state values 1821 of states that can be used to define the alert conditions 412 (see FIG. 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. 14.
[0040] 2.2.2. Overview of the State Management Unit, etc. (FIGS. 6 and 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 FIG. 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 the state defined for the monitored device 180. In the example of FIG. 6, in each record (row) in which 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, the state "Clot" indicates whether the tube of the reagent probe 304 is clogged, 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 1821 indicated in the item of the first state value 613 is obtained. 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] In the example of FIG. 6, a record (row) in which the value of the state definition information identification information 611 (state definition information ID) is "st1" indicates that if "amount=0" is true in the variable value 1811, the state value 1821 becomes "Shortage=True," and if "amount>0" is true in the variable value 1811, the state value 1821 becomes "Shortage=False." 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. In the example of FIG. 6, a record (row) in which the value of the state definition information identification information 611 (state definition information ID) is "st2" indicates that if "c=True" is true in the variable value 1811, the state value 1821 becomes "Clot=True," and if "c=False" is true 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 or not the tube of the reagent probe 304 is clogged. In the example of Fig. 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 established in the variable value 1811, the state value 1821 becomes "CellStatus=Init," when "s=2" is established in the variable value 1811, the state value 1821 becomes "CellStatus=Operation," and when "s=3" is established 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 State 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 a 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) (deleting 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 and a delete icon 711). 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 Variable Value Acquisition Target Identification Unit, etc. (FIG. 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 held in the alert condition information holding unit 400 to identify a state (state name 612) corresponding to a state value 1821 included in the definition of the alert condition 412. The variable identification unit 1612 uses the state definition information 601 held in the state definition information holding 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 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 held in the monitored software code holding unit 1602, and identifies a location 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 the variable value acquisition target specification information storage unit 800. The variable value acquisition target specification information storage unit 800 may record a record (row) for each variable value acquisition target specification information 801. The record (row) may include variable value acquisition target specification information identification information 811 (variable value acquisition target specification information ID), acquisition target process identification information 812, and acquisition target variable identification information 813. (Alternatively, the variable value acquisition target specification information identification information 811 (variable value acquisition target specification information ID) may not be explicitly recorded in the record (row) for reasons such as the variable value acquisition target specification information identification information 811 (variable value acquisition target specification 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 a 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 a 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 Variable Value Acquisition Unit, State Value Generation Unit, and State Transition History Information Storage Unit (FIG. 9) As shown in FIG. 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 function performed by the variable value acquisition unit 1801 has already been described together with FIG. 1. 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 stored in the state definition information storage unit 600. The state value generation unit 1802 determines whether there is a state (in which the state value 1821 generated by itself has changed (transitioned)) that is different from the previous value (current state value 1822 (see FIG. 18)) 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 stores state transition history information 901 that indicates the change (transition) of the state value 1821 of that state in the state transition history information storage unit 900. In other words, the state transition history information storage unit 900 stores time-series information of the state value 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 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 (process 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) does not have to 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 process identification information 195 (processing ID) included in the record (row) of the state transition history information 901 is used to identify the process target (analysis target) being handled by the monitored device 180 when a change (transition) in the state value recorded in the record (row) occurred. The time 196 included in the record (row) of the state transition history information 901 indicates the time when a change (transition) in the state value recorded in the record (row) occurred. Note that the format of the time 196 may be arbitrary. The time 196 may be based on, for example, standard time, or may indicate the elapsed time since the monitored device 180 was started, the elapsed time since the monitored software 190 was started, or the elapsed time since the processing of the first processing target (analysis target) started. The unit of time when the value of the time 196 is recorded in the record (row) may be any unit of time, for example, milliseconds. The state name 612 included in the 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 the record (row) of the state transition history information 901 indicates the state value immediately before the change (transition) in the state value recorded in the record (row) occurred. The pre-transition state value 1823 can also be determined by referencing the state values 1821 of the records held by the state transition history information holding unit 900 in the chronological order 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 Alert Condition Success / Failure Determination Unit, etc. (FIG. 10) The overview of the functions performed by the alert condition success / failure determination unit 2001 has already been explained together with FIG. 1. If the alert condition 412, such as that shown in the record (row) in FIG. 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 values 1821 on a time series (the manner of change (transition) of the state values 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 references multiple pieces of state transition history information 901 held by the state transition history information holding unit 900. The state transition verification unit 2011 compares the time-series information of the state values 1821 based on the referenced multiple pieces of state transition history information 901 with the order relationship (the manner of change (transition) of the state values 1821) of the time-series state values 1821 included in the alert condition 412 (alert condition information 401), to determine whether the alert condition 412 is met. The alert condition success / failure determination unit 2001, which may be included in the state transition verification unit 2011, stores information indicating whether the alert condition 412 is met as alert condition success / failure information 1001 in the alert condition success / failure information storage unit 1000.
[0051] 10 shows the 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) does not have to 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 used to identify the process target (analysis target) handled by the monitored device 180 when the alert condition 412 recorded in that record was satisfied. The time 196 included in the 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. Note that the format of the time 196 may be arbitrary. 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 processing of the first process target (analysis target) was 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 receiving unit (FIG. 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 of 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 the display output information storage unit 1100. The display output information storage unit 1100 may 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 processing 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 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 used to identify the alert condition success / failure information 1001 related to the alert condition 412 that has been met (when some alert condition has been 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 (FIG. 12) An overview of the functions performed by the display output control unit 2202 has already been described with reference to FIG. 1. The display output control unit 2202 reads out the display output information 1101 stored in the display output information storage unit 1100 in order to perform the functions described with reference to FIG. 1. 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 details 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 changes (transitions) in the state value 1821 before and after the time 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 the generated result information 2220 to be displayed as the result screen 1200, or controls the generated result information 2220 to be output to some kind of device (output device, recording device, etc.).
[0057] FIG. 12 shows a result screen 1200. The upper part of FIG. 12 shows a front page 1201 of the result screen 1200. The lower part of FIG. 12 shows a detailed information page 1202 of the result screen 1200, which relates to the alert condition 412 that has been met. The front page 1201 lists the output information 307 for each process identification information 195 (process ID) and information 1211 indicating whether or not an alert has been detected. Among the information 1211 indicating whether or not an alert has been detected, "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 a particular process identification information 195 (process ID) for which one of the alert conditions 412 has been met. The detailed information page 1202 may include information 1222 indicating the details 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 Setting Information Receiving Unit, etc. In the above, a 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 state definition information 601 via the state 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 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 aspect in which one or both of the alert condition information 401 and the state definition information 601 are distributed via the network 298, 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 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 Realizing an Embodiment 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 using the same or similar computer architecture as that shown in FIG. 13. The computer architecture 1300 shown in FIG. 13 may also be referred to as an information processing device or an information processing system. To realize the monitoring device 101 (or monitoring system), some or all of the following may be interconnected via an interconnection unit 1311: a processing unit 1301, a storage device 1302, a non-volatile recording medium (recording device) 1303, an external recording medium drive 1304, an input device 1306, a display or output device 1307, a communication device 1308, an external input / output port 1309, and a reading device 1310. (Note that part 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 here may be another semiconductor device that executes a predetermined process. The arithmetic processing device 1301 may also 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 (storage 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 mentioned above, part or all of the interconnection unit 1311 may be a network.)
[0062] The non-volatile recording medium (storage device) 1303 may store various programs included in the program group 1331 (e.g., programs for realizing the functional configuration according to the present disclosure, e.g., various programs for implementing each of the functional units realized by 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 each of the functional units (excluding the storage unit) indicated as "units" in the functional configuration diagrams of FIGS. 1, 2, 16, 18, 20, and 22. Note that some of the above programs may be integrated into a single program. Also, any of the above programs may be divided into multiple programs. The data group 1332 may include information (such as data) handled by the above functional units. For example, the data group 1332 may include information constituting each of the "storage units" indicated as "units" in the functional configuration diagrams of FIGS. 1, 2, 16, 18, 20, and 22. (Note that some or all of the information contained in the "storage unit" may be stored in the storage device 1302 (memory).) Alternatively, some or all of the various programs contained in the program group 1331, the various data groups contained in the data group 1332, or the information contained 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 an embodiment of the present disclosure Processing performed by an embodiment of the present disclosure (monitoring device (or monitoring system)) is described below. 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, a monitoring method performed by an information processing device (or information processing system) may be formed by combining each of the processing steps described below.
[0066] 4-1. Processing of the Alert Condition Management Unit (FIGS. 4, 5, 6, 14) FIG. 14 shows a flowchart of the processing executed by the alert condition management unit 1499. The following describes the processing order shown in FIG. 14, while appropriately referring 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. By realizing the functions described below, 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] In step 1401 in Fig. 14, the alert condition management unit 1499 reads the alert condition information 401 held in the alert condition information holding unit 400 (see Fig. 4). The alert condition information 401 held in the alert condition information holding unit 400 is the alert condition information that has already been defined at that time. In step 1402 in Fig. 14, the alert condition management unit 1499 reads the state definition information 601 held in the state definition information holding unit 600 (see Fig. 6). The state definition information 601 held in the state definition information holding 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 performs control to display an alert condition management screen 500. The user interface provided by the alert condition management screen 500 to a user of the monitoring device 101 (or monitoring system) will be described below. As shown in FIG. 5, the alert condition management screen 500 has a new alert condition input field 501 and a confirmation icon 502. The 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 (row display) for displaying information included in the defined alert condition information 401 for each piece of defined alert condition information 401. For this record display (row display), the alert condition information 401 read in step 1401 is used. 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. A 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 a record display (row display) for displaying, for each piece of defined state definition information 601, the information included in that defined state definition information 601. For this record display (row display), the state definition information 601 read in step 1402 is used. 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, in step 1404 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 in step 1404 is affirmative, control transitions to step 1405. If the determination result in step 1404 is negative, control transitions to step 1406. In step 1405 in Fig. 14, the alert condition management unit 1499 sets the text input that was input in the new alert condition input field 501 at that time as a new alert condition 412. Then, the alert condition management unit 1499 generates alert condition information 401 that includes 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, for example, store the generated alert condition information 401 in the alert condition information storage unit 400 in a manner that adds the information to a group of predefined alert condition information. After step 1405, the control is returned to step 1404.
[0070] After the determination result in step 1404 in Fig. 14 is negative, in step 1406 in Fig. 14, the alert condition management unit 1499 determines whether the delete icon 505 has been clicked with a mouse or the like. 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. In step 1407 in Fig. 14, the alert condition management unit 1499 deletes the defined alert condition information 401 for which the delete alert condition checkbox 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, in step 1408 in Fig. 14, the alert condition management unit 1499 determines whether the end icon 507 has been clicked with a mouse or the like. 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 in Fig. 14, the alert condition management unit 1499 performs control to end the display of the alert condition management screen 500.
[0072] 4-2. Processing of the State Management Unit (FIGS. 6, 7, and 15) FIG. 15 shows a flowchart of processing executed by the state management unit 1599. Below, the processing will be described in the order shown in FIG. 15, with appropriate 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. By realizing the functions described below, 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 of the state values 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 a state definition management screen 700. The user interface provided by the state definition management screen 700 to a user of the monitoring device 101 (or monitoring system) is described below. Note that the example shown in FIG. 7 shows a situation in which state definition information 601 for the state "Shortage" and the state "Clot" has already been defined, and new state definition information 601 for the state "CellStatus" is being added. As shown in FIG. 7, the state definition management screen 700 has a new state name input field 701, a confirmation icon 702, a state value list 703, a row add icon 706, and a row delete icon 708. The state value list 703 has a state value input field 704, a variable value input field 705, and a state value delete check box 707 for each state value 1821 of the newly defined state. A user of the monitoring device 101 (or monitoring system) uses a keyboard or the like to input the state name 612 of a newly defined state as text into a new state name input field 701. The user of the monitoring device 101 (or monitoring system) also uses a keyboard or the like to input the state value 1821 to be newly defined as text into a state value input field 704. The user of the monitoring device 101 (or monitoring system) also uses a keyboard or the like to input the variable value 1811 (or a definition by a calculation formula using multiple variable values 1811) that will be the condition for the newly defined state value 1821 into a variable value input field 705 as text. In other words, in the same record (row) of the state 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 true in the monitored device 180, then the state value 1821 input into the state value input field 704 is also true. 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] FIG. 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). 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) each consisting of a combination of a state value input field 704 and a variable value input field 705 to the state value list 703 (increasing 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 a delete state value checkbox 707 corresponding to the combination of the state value input field 704 and the variable value input field 705 that the user wishes to delete. The delete row icon 708 is used to confirm the check in the delete state value checkbox 707 (reducing 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 check box 710. 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 in the delete alert condition check box 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 close 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 , in step 1503 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 in step 1503 is affirmative, control transitions to step 1504. If the determination result in step 1503 is negative, control transitions to step 1505. In step 1504 in FIG. 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 a group of already defined state definition information. After step 1504, control transitions to step 1503.
[0078] After the determination result in step 1503 in Fig. 15 is negative, in step 1505 in Fig. 15, the state management unit 1599 determines whether the row addition icon 706 has been clicked with a mouse or the like. 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. In step 1506 in Fig. 15, the state management unit 1599 performs control 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] After the determination result in step 1505 in Fig. 15 is negative, in step 1507 in Fig. 15, the state management unit 1599 determines whether the row deletion icon 708 has been clicked with a mouse or the like. 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. In step 1508 in Fig. 15, the state management unit 1599 performs control to delete from the state value list 703, on the state definition management screen 700, 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. In step 1510 in Fig. 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 holding unit 600. After step 1510, control returns to step 1503.
[0081] After the determination result in step 1509 in Fig. 15 is negative, in step 1511 in Fig. 15, the state management unit 1599 determines whether the end icon 712 has been clicked with a mouse or the like. If the determination result in step 1511 is positive, control transitions to step 1512. If the determination result in step 1511 is negative, control returns to step 1503. In step 1512 in Fig. 15, the state management unit 1599 performs control to end the display of the state definition management screen 700.
[0082] 4-3. Processing of the Variable Value Acquisition Target Identification Unit (FIGS. 4, 6, 8, 16, and 17) FIG. 16 shows the functional configuration related to the variable value acquisition target identification unit 1601. FIG. 17 shows a flowchart of the processing executed by the variable value acquisition target identification unit 1601. Note that the steps shown in FIG. 17 may be collectively referred to as "variable value acquisition target identification steps." The following describes the processing 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 described below, the variable value acquisition target identification information 801 is generated based on the alert condition information 401, the state definition information 601, and the monitored software code 1620. This eliminates or reduces the effort required for users of the monitoring apparatus 101 (or monitoring system) to manually configure settings related to the acquisition of variable values 1811. Note that if the state of the monitored target apparatus 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 target 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, it eliminates or reduces the effort required for users of the monitoring apparatus 101 (or monitoring system) to manually configure settings related to the acquisition of variable values 1811.
[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. In step 1702 (state identification step) of FIG. 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 whose alert condition information identification information 411 (alert condition information ID) value is "co1" shown in FIG. 4 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.) In step 1704 (variable identification step) in FIG. 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 identification unit 1601 reads the monitoring target software code 1620, which is the code of the monitoring target software 190. As shown in FIG. 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 monitoring target software code 1620 may be the source code of the monitoring target software 190. Alternatively, the monitoring target 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 (for example, object code).) The monitored software code 1620 read in step 1705 may be only the monitored software code that, when executed on the monitored device 180, may potentially rewrite the variable value 1811 of the variable (variable name) extracted in step 1704. (Alternatively, it may be the monitored software code 1620 that corresponds to all the monitored software 190 that may be executed on the monitored device 180.) In step 1706 (code analysis step) of FIG. 17, the code analysis unit 1613 scans (analyzes) the monitored software code 1620 read in step 1705, thereby identifying locations in the code where the variable value 1811 of the variable (variable name) extracted in step 1704 may potentially be rewritten.For example, as shown in FIG. 16 , if the variable values 1811 of the variables “s” and “amount” are likely to be rewritten on the fourth line of the code of the monitoring target software 190 whose program name is “Main.cpp,” and the variable values 1811 of the variables “s” and “amount” are likely to be rewritten on the tenth line of the code of the monitoring target software 190 whose program name is “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 are likely to be rewritten. In the above, the locations where the variable values 1811 are likely to be rewritten are identified by a combination of the program name and the line number, but the locations may be identified in other ways. For example, as in Modification C described below, the locations where the variable values 1811 are likely to be rewritten may be identified by the granularity of objects in a program written using object-oriented programming or the granularity of subroutines or functions in a program written using 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 the variable value acquisition unit and the state value generation unit (FIGS. 6, 8, 9, 18, 19) FIG. 18 shows the functional configuration related to the variable value acquisition unit 1801 or the state value generation unit 1802. FIG. 19 shows a flowchart of the processing executed by the variable value acquisition unit 1801 or the state value generation unit 1802. The following will be described in the order of processing 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 identification 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 that are desired to be grasped in the monitored device 180. The method for 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. 8, the variable value acquisition target specification information 801 for the combination where the acquisition target process identification information 812 is "Main.cpp:4 (the program name is Main.cpp and the code on the fourth line)" and the acquisition target variable identification information 813 is "s, amount (the variables for which the variable value 1811 is to be acquired are s and amount)" is read, and the variable value acquisition target specification information 801 for the combination where the acquisition target process identification information 812 is "Sub.cpp:10 (the program name is Sub.cpp and the code on the tenth line)" and the acquisition target variable identification information 813 is "s, amount (the variables for which the variable value 1811 is to be acquired are s and amount)" is read. At step 1902 in FIG. 19, the state value generation unit 1802 reads the 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 variables s and 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. In step 1903 of FIG. 19, the state value generation unit 1802 reads current state values 1822, which are current state values 1821 for each state 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 read initially may be provisionally determined and 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, from the monitoring target device 180, a variable value 1811 of the variable indicated by the acquisition target variable identification information 813, 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. 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 combinations of variable values 1811 of acquisition target variables 183 may be acquired in different acquisition target processes 182. For example, in one acquisition target process 182, a variable value 1811 of a variable s and a variable value 1811 of a variable amount may be acquired, while in another acquisition target process 182, a variable value 1811 of a variable c and a variable value 1811 of a variable s may be acquired. The variable value acquisition unit 1801 acquires the 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. Processing of the alert condition success / failure determination unit (FIGS. 4, 9, 10, 20, 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. The following will be described in the order of processing 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, the alert condition information 401 records (rows) having the alert condition information identification information 411 (alert condition information ID) values of "co1", "co2", and "co3" are 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. In step 2102 of FIG. 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. 9, the records (rows) of the state transition history information 901 having the values "hi1," "hi2," "hi3," "hi4," "hi5," and "hi6" of the state transition history information identification information 911 (state transition history information ID) are read. The alert condition success / failure determination unit 2001 may read all of the state transition history information 901 for 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 held by the state transition history information holding 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 within the alert condition success / failure determination unit 2001 determines that the alert condition 412 was satisfied at time 196 (the value of time 196) when the state value changed (transitioned) to Init. As described above, the alert condition 412 can also be defined for changes (transitions, order relationships) in the state value 1821 on a time series. Therefore, the monitoring device 101 (monitoring system) of the present disclosure can define alert conditions 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, corresponding to the alert condition 412 defined for changes (transitions, order relationships) in the state value 1821 on a time series. If the determination result in step 2103 is affirmative, control transitions to step 2104. If the result of the determination 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 Monitoring Target Device Output Receiving Unit (FIGS. 10, 11, 22, and 23) FIG. 22 shows the functional configuration related to the monitoring target device output receiving unit 2201 (and the display output control unit 2202). FIG. 23 shows a flowchart of processing executed by the monitoring target 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 monitoring target device output receiving unit 2201 may generate display output information 1101 as information in which the output information 307 received from the monitoring target 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 the 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, when one process identification information 195 (processing ID) contains multiple pieces of alert condition success / failure information 1001, the display output information 1101 for that process identification information 195 (processing ID) may include the 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. When generating the display output information 1101, the monitored device output receiving unit 2201 may include the fulfilled alert content 1012 (see FIG. 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 together with 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. 10 and 11, for a processing target (analysis target) whose processing identification information 195 (processing ID) has a value of "sa1," there is no alert condition success / failure information 1001, so the monitored device output receiving unit 2201 may generate display output information 1101 that includes processing identification information 195 (processing ID) with a value of "sa1," output information 307 with a value of "3.421" (the value received in step 2301), and alert condition success / failure information identification information 1011 (alert condition success / failure information ID) with a value of "- (a value indicating that there is no alert condition success / failure information 1001)." 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 (FIGS. 4, 9, 10, 11, 12, 22, and 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 description will be given in the order of processing shown in FIG. 24, 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, the display output information storage unit 1100 (display output information 1101) shown in FIG. 11, and the functional configuration shown in FIG. 22. The following will first describe the process by which the display output control unit 2202 generates the result information 2220 to be displayed or output (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 described below, the user of the monitoring device 101 (or monitoring system) will be provided with the output information 307 for each process identification information 195 (process ID) and information on whether the alert condition 412 has been met, as well as information indicating 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). Therefore, the user of the monitoring device 101 (or monitoring system) can understand for which processing identification information 195 (processing 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. Note that when the result information 2220 is output to some kind of output device (for example, printed) or output (stored) to some kind of recording device, the display output control unit 2202 controls the output (for example, printing or storing).
[0107] 4-7-1. Generation of Result Information In step 2401 of FIG. 24, the display output control unit 2202 selects one of the process identification information 195 (processing ID) for which corresponding output information 307 exists. In step 2402 of FIG. 24, the display output control unit 2202 reads the display output information 1101 related to the process 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 process identification information 195 (processing ID) selected in step 2401 from the display output information 1101 stored in the display output information storage unit 1100. In step 2403 of FIG. 24, the display output control unit 2202 determines whether a significant value is assigned to the display output information 1101 read in 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 having the value "sa1" of the process identification information 195 (processing ID), 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 having the value "sa2" of the process identification information 195 (processing ID), 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, control transitions to step 2404. If the determination result in step 2403 is negative, 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. 10, the value of the alert condition information identification information 411 (alert condition information ID) is "co1". In step 2405 of FIG. 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 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". Therefore, 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. 11 and 12, the 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 significant value is "aa1." Therefore, the display output control unit 2202 adds record display (row display) information including the process identification information 195 (processing ID) whose value is "sa2," output information 307 whose value is "12.3245," and information 1211 indicating the presence or absence of an alert whose display is "present" to information 2221 in the front page portion of the result information 2220. If the result information 2220 is intended to be used for displaying the result screen 1200, information on a hyperlink 1212 may also be added to the information 1211 indicating the presence or absence of an alert whose display is "present." 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". 12 indicates that the state value of "CellStatus" 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 the state "Shortage" 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 the state "CellStatus" 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 412 was satisfied in FIG. 12 as information 2223 indicating the state transition history before and after the time when the alert condition 412 was satisfied in the detailed information page 1202. In addition to the above processing, the display output control unit 2202 performs processing to format the information on the detailed information page 1202 as necessary. For example, if detailed information page 1202 is scheduled to be displayed on result screen 1200, display output control unit 2202 includes information for implementing back icon 1224 in Figure 12 in the information on detailed information page 1202. 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] In step 2410 of FIG. 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 result list on the front page 1201. If the determination result in step 2410 is positive, control is returned to step 2401. If the determination result in step 2410 is negative, control is transitioned to step 2411. In step 2411 of FIG. 24, the display output control unit 2202 performs processing to format the information on the front page 1201 out 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, a series of processes related to the generation of the result information 2220 is completed. When the result information 2220 is to be displayed on the result screen 1200, the processes from step 2412 onwards are performed.
[0113] 4-7-2. Control of Result Screen In step 2412 of FIG. 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) 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 processing of step 2412 displays the front page 1201 shown in the upper part of FIG. 12. In the example shown in Figures 11 and 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 meaningless "- (a value indicating that alert condition success / failure information 1001 does not exist)". Therefore, in the results list on the front page 1201 of Figure 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, 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 value is significant "aa1". Therefore, in the results list on the front page 1201 of Figure 12, a record display (row display) is displayed which includes 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 whether or not an alert is present, with the display set to "Yes".By the processing of step 2407 or step 2409 already described, information for realizing record display (row display) for the processing identification information 195 (processing ID) is included in the information 2221 of the front page portion (of the result information 2220). An end icon 1225 also exists on the front page 1201. In step 2413 of FIG. 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. In step 2414 of FIG. 24, the display output control unit 2202 determines whether the information 1211 (with hyperlink 1212) indicating the presence or absence of an alert with a display "present" has been clicked with a mouse or the like for any of the record displays (row displays) in the result list on the front page 1201. If the determination result in step 2414 is affirmative, the control transitions to step 2415. If the determination result in step 2414 is negative, the control returns to step 2413.
[0114] 24, the display output control unit 2202 controls 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) to perform a display based on information consisting of one or both of information 2222 indicating 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 processing identification information 195 (processing ID) corresponding to information 1211 (with hyperlink 1212) indicating the presence or absence of an alert with the display set to "Yes," which was determined to have been clicked in step 2414. As shown in the example of FIG. 12 , when information 1211 (with hyperlink 1212) indicating the presence or absence of an alert, which is displayed as “Yes,” is clicked in the record display (row display) for which the value of the process identification information 195 (process ID) is “sa2” on the front page 1201, the display output control unit 2202 controls the display to display a detailed information page 1202 for the process target (analysis target) for which the value of the process identification information 195 (process ID) is “sa2,” as shown in the lower part of FIG. 12 . The detailed information page 1202 may include information 1222 indicating the content of the satisfied alert condition, information 1223 illustrating the change (transition) in the state value 1821 before and after the time the alert condition was satisfied, and a back icon 1224. The information 1222 indicating the content of the satisfied alert condition is displayed based on information 2222 indicating the details (content) of the satisfied alert condition 412 (of the result information 2220) generated based on the processing of step 2408. Furthermore, based on information 2223 indicating the state transition history before and after the time when alert condition 412 (out of result information 2220) was established based on the processing of step 2408, information 1223 illustrating the change (transition) in state value 1821 before and after the time when alert condition 412 was established is displayed.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. Others (Modifications) 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 modifications of the 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 store 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 store 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 the monitoring system) via a user interface using the status definition management screen 700. Alternatively, the monitoring device 101 (or the monitoring system) may not have the function of allowing the user of the monitoring device 101 (or the 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 transmitted and received from the distribution server 299 to the monitoring device 101 (or the monitoring system) may be used exclusively in the monitoring device 101 (or the 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] (Variation B) Monitoring Device (Monitoring System) Without Variable Value Acquisition Target Identification Unit In the above embodiment, the monitoring device 101 (or monitoring system) has a variable value acquisition target identification unit 1601. The function of the variable value acquisition target identification unit 1601 uses the alert condition information 401, the state definition information 601, and the monitoring target software code 1620 to automatically generate variable value acquisition target identification information 801 (acquisition target process identification information 812, acquisition target variable identification information 813), which is highly convenient for the user of the monitoring device 101 (or monitoring system).
[0119] However, the method for acquiring the variable value acquisition target identification 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 a method in which the distribution server 299 transmits 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 the setting information receiving unit 250 in the monitoring device 101 (or monitoring system) receives 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 becomes possible to delete 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 Processes 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 acquire, for example, a return value of the object, subroutine, or function as the variable value 1811. According to the above modification C, it is possible to appropriately accommodate the programming method of the monitoring target software code 1620, specifications for acquiring the variable value 1811, and the like.
[0123] (Variation D) Push-Style Variable Value Acquisition 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 monitored device 180 and acquires the variable value 1811 from the monitored 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. That is, the monitoring target process 192 may provide the variable value 1811 to the variable value acquisition unit 1801 in a timely manner 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, the variable value acquisition target identification information 801 may be transmitted from the monitoring device 101 (or the monitoring system) to the monitoring target device 180. Then, the monitoring target device 180 may construct some kind of mechanism for transmitting 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 identification information 801 to the monitoring device 101 (or the monitoring system) in a timely manner. According to the above modification D, the monitoring burden on the monitoring device 101 (or the monitoring system) is reduced.
[0125] (Variant E) Alert condition success / failure information indicating failure of alert condition In the above embodiment, when the alert condition success / failure determination unit 2001 determines that any of the alert conditions 412 is satisfied, the alert condition success / failure information 1001 is generated.
[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 related to certain process identification information 195 (process 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 process identification information 195 (process ID). In this case, step 2103 in FIG. 21 is eliminated, and step 2104 in FIG. 21 is always executed. In step 2104, alert condition success / failure information is generated regardless of whether the alert condition 412 is satisfied. Furthermore, step 2302 in FIG. 23 is a determination process of "Does the alert condition success / failure information 1001 for new process identification information 195 (process ID) indicate that any of the alert conditions 412 are satisfied?" In the above-mentioned modification E, it is possible to reliably confirm that none of the alert conditions 412 are satisfied in the processing of the monitored device 180 related to certain process identification information 195 (process ID). Furthermore, even if the alert condition success / failure information 1001 for any of the process identification information 195 (process ID) is lost due to some error in the monitoring device 101 (or monitoring system), the loss can be detected.
[0127] (Variant F) Integration of Monitoring Device and Monitoring System 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 (e.g., an embedded device or an automatic analysis device) may be integrated in terms of hardware. For example, each of the functional units constituting the monitoring device 101 (or monitoring system) in the above-described embodiment may be realized by having the hardware resources of the monitored device 180 execute a program for that functional unit. Also, for example, each of the retention units constituting the monitoring device 101 (or monitoring system) in the above-described embodiment may be realized by a recording device or storage device as a hardware resource of the monitored device 180. In the above-described modification F, it is possible to reduce the overall hardware resources, and also to achieve high-speed and simple 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.
[0129] (Variation G) Monitored Device Other Than an Automatic Analyzer In the description of the above embodiment, an automatic analyzer that analyzes a specimen 302 and outputs output information 307 as the analysis result, such as the operation shown in Fig. 3, has been taken as an example of the monitored device 180. When the monitored device 180 is an automatic analyzer, when an alert related to the automatic analyzer is issued, the user of the automatic analyzer can easily grasp 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 automated analyzer is a factory line. For example, for each product output from the most downstream part of a factory line (i.e., the 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 production slot for the product) indicating that the 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 manufactured the product, and provide the associated result information 2220. Here, the alert conditions 412 related to the factory line may include an abnormality in the status of each robot included in the factory line or some abnormality related to each of the parts handled. Since it may be difficult to discover potential defects by inspecting the products themselves output from the most downstream part of the factory line, providing the alert condition success / failure information 1001 associated with each product from the monitoring device 101 (or monitoring system) clarifies 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 of the embedded devices used in household electrical machinery and appliances (home appliances) and the like can be monitored device 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 may also be monitored device 180 to which the present disclosure applies.) As described above, 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 device, wherein the monitoring device is for monitoring a monitored device that executes monitored software, and the monitored device uses one or more variables and realizes one or more monitored processes by executing the monitored software, and the monitoring device has a variable value acquisition target identification unit, a variable value acquisition unit, an alert condition success / failure determination unit, and a display output control unit, wherein the variable value acquisition target identification unit identifies, based on an alert condition that is a condition under which an alert is issued for the monitored device and the content of the monitored process, an acquisition target process that indicates a process among the monitored processes that is a target for which a variable value that is the value of the variable is to be acquired, and an acquisition target variable that indicates the variable that is a target for which the variable value is to be acquired when the acquisition target process is performed, and the variable value acquisition unit acquires the variable value of the acquisition target variable when the acquisition target process is performed, and the alert condition success / failure determination unit determines whether the alert condition is established 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 has been met, in a monitoring device.
2. A monitoring device according to claim 1, comprising: 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, wherein the state definition information defines the state of the monitored device, and defines each of the state values of the state using one or more of the variable values; the alert condition information defines the alert condition related to the monitored device, and defines the alert condition using one or more of the state values; the state value generation unit generates one or more of the state values based on the one or more variable values acquired by the variable value acquisition unit and the state definition information; and the alert condition success / failure determination unit determines whether the alert condition is met based on the one or more state values generated by the state value generation unit and the alert condition information.
3. A monitoring device according to claim 2, wherein the variable value acquisition target identification unit includes a state identification unit, a variable identification unit, a code analysis unit, and a variable value acquisition target identification 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 identification unit uses the state definition information to identify the acquisition target variable corresponding to the variable value included in the definition of the state value of the state identified by the state identification 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; and 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. A monitoring device according to claim 2, comprising an alert condition management unit and a state management unit, wherein the alert condition management unit controls the display of 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, wherein the alert condition management screen provides a user interface for defining a new alert condition using one or more of the state values, wherein the state management unit controls the display of 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 storage unit, and wherein 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 of the variable values that define each of the state values for the new state.
5. A monitoring device according to claim 2, comprising: a state transition history information storage unit that stores state transition history information, the state transition history information being time-series information of the state values for one or more states defined for the monitored 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 can include an order relationship of the state values in time series as a definition of the alert condition; the alert condition success / failure determination unit comprises a state transition verification unit that, when the order relationship is included in the definition of the alert condition indicated by the alert condition information, uses the time-series information of the state values stored in the state transition history information storage unit to determine whether the alert condition is met.
6. A monitoring device as claimed in claim 5, wherein the display output control unit controls to display a result screen or controls to output result information, and the result screen or the result information includes information indicating the output information and whether or not the alert condition has been met, as well as information indicating at least a part of the state transition history information.
7. A monitoring device according to claim 1, comprising a variable value acquisition target identification information holding unit that holds variable value acquisition target identification information, wherein the variable value acquisition target identification unit generates the variable value acquisition target identification information by associating acquisition target process identification information indicating the acquisition target process with acquisition target variable identification information indicating the acquisition target variable, and stores the variable value acquisition target identification information in the variable value acquisition target identification information holding unit, and wherein the variable value acquisition unit monitors the monitoring target process using the variable value acquisition target identification information to acquire the variable value, or acquires the variable value provided by the monitoring target process that is executed while referring to the variable value acquisition target identification information.
8. A monitoring device according to claim 1, comprising: a monitored 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 the determination result of whether the alert condition is met and stores the alert condition success / failure information in the alert condition success / failure information holding unit; the monitored device output receiving unit receives the output information output from the monitored device, generates the display output 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; and the display output control unit controls display or output based on the display output information held in the display output information holding unit.
9. A monitoring device according to claim 1, comprising an alert condition information storage unit that stores one or more pieces of alert condition information, and a setting information receiving unit, wherein the alert condition information is information that defines the alert conditions related to the monitored 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 storage unit, and the alert condition success / failure determination unit uses the alert condition indicated by the alert condition information.
10. A monitoring device according to claim 2, comprising a setting information receiving unit which 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 storage unit, and stores the received state definition information in the state definition information storage unit.
11. A monitoring device according to claim 1, wherein the variable value acquisition target identification unit has a variable identification unit, a code analysis unit, and a variable value acquisition target identification information generation unit, wherein the variable identification unit identifies the acquisition target variable that affects whether or not the alert condition is met, the code analysis unit analyzes the 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, and 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. A monitoring device according to claim 1, wherein the monitored device is an embedded device that outputs the output information, which is the processing result, for each processing target to which the monitored processing is applied.
13. A monitoring device according to claim 1, wherein the monitored device is an automatic analysis device that outputs the output information, which is the analysis result, for each analysis target that is analyzed by the monitored target process.
14. A monitoring method executed by an information processing device having an arithmetic processing unit and a storage device, wherein the monitoring method is for monitoring a monitored device that executes monitored software, and the monitored device uses one or more variables and realizes one or more monitored processes by executing the monitored software, and the monitoring method comprises a variable value acquisition target specifying step, a variable value acquisition step, an alert condition success / failure determination step, and a display output control step, wherein the variable value acquisition target specifying step is a step of specifying, based on an alert condition that is a condition under which an alert is issued for the monitored device and the content of the monitored process, an acquisition target process that indicates a process among the monitored processes that is a target for which a variable value that is the value of the variable is to be acquired, and an acquisition target variable that indicates the variable that is a target for which the variable value is to be acquired when the acquisition target process is performed, 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, and the alert condition success / failure determination step is a step of determining whether the alert condition is established 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. A monitoring method according to claim 14, comprising a state identification step, a variable identification step, a code analysis step, a variable value acquisition target identification information generation step, and a state value generation step, wherein the state identification step is a step of identifying a state of the monitored device corresponding to a state value included in the definition of the alert condition using alert condition information, the variable identification step is a step of identifying the acquisition target variable corresponding to the variable value included in the definition of the state value of the state identified in the state identification step using state definition information, the code analysis step is a step of analyzing code of the monitored software to identify a location in the code where the variable value of the acquisition target variable identified in the variable identification step may be rewritten, and the variable value acquisition target identification information generation step is a step of generating variable value acquisition target identification information by associating acquisition target process identification information indicating the acquisition target process corresponding to the location identified in the code analysis step with acquisition target variable identification information indicating the acquisition target variable identified in the variable identification step, a monitoring method in which the state value generation step generates one or more state values based on the one or more variable values acquired in the variable value acquisition step and the state definition information; the alert condition success / failure determination step determines whether the alert condition is met based on the one or more state values generated in the state value generation step and the alert condition information; the state definition information defines the state of the monitored device, and is information that defines each of the state values of the state by one or more variable values; and the alert condition information defines the alert condition for the monitored device, and is information that defines the alert condition by one or more state values.
Citation Information
Patent Citations
Live Exceptions System
JP2003536162A
Monitoring server and monitoring evaluation method
JP2012238213A
Monitoring system, monitoring method, and program
JP2023048548A