Delay estimation device, delay estimation method, and delay estimation system

The delay estimation device identifies delayed queries and associated microservices by analyzing response times, facilitating efficient repair efforts in microservices by pinpointing the exact location of delays.

JP7603896B2Active Publication Date: 2024-12-20MITSUBISHI ELECTRIC CORP
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2024551017
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-10-14
Publication Date
2024-12-20
Estimated Expiration
2042-10-14

AI Technical Summary

Technical Problem

Conventional technologies struggle to identify which queries in microservices are causing delays, making it difficult to pinpoint the exact location of delays in microservices during repairs.

Method used

A delay estimation device that acquires and analyzes response times for each query, using a data model to determine delays based on current and past response times, and identifies delayed queries and associated queries in a hierarchical structure.

Benefits of technology

Enables easy identification of delayed queries and associated microservices, allowing for targeted repairs and reducing the effort required to locate and address delays.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007603896000001
    Figure 0007603896000001
  • Figure 0007603896000002
    Figure 0007603896000002
  • Figure 0007603896000003
    Figure 0007603896000003
Patent Text Reader

Abstract

The purpose of the present invention is to provide a technology that allows a user to easily identify where a delay has occurred in a micro service. A delay estimation device includes an acquisition unit and a determination unit. Regarding a data model that associates a plurality of queries in advance, the acquisition unit acquires for each query a response time of one or more micro services that use the queries. The determination unit determines whether a delay has occurred for each query, on the basis of the current response time and the past response time.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to a delay estimation device, a delay estimation method, and a delay estimation system. [Background technology]

[0002] In recent years, various technologies have been proposed for architectures in which multiple functions are divided into multiple microservices and then multiple microservices are combined to build systems such as cloud services. For example, Patent Document 1 proposes a technology for determining the delay of a microservice. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Patent Publication No. 2021-196970 Summary of the Invention [Problem to be solved by the invention]

[0004] In the conventional technology, since the focus is on the response time between microservices, it is possible to determine the delay in the path of the microservice where the delay is occurring. However, it does not determine which query used by the microservice is causing the delay. For this reason, when repairing a problem, the user needs to check the part of the microservice where the delay is occurring over a relatively wide range, and there is a problem that it is not easy to identify such a part.

[0005] Therefore, the present disclosure has been made in consideration of the above-mentioned problems, and aims to provide a technology that allows a user to easily identify the part of a microservice where a delay has occurred. [Means for solving the problem]

[0006] The delay estimation device according to the present disclosure includes an acquisition unit that acquires, for each query, a response time of one or more microservices that use the queries for a data model in which the queries are previously associated with each other, and a determination unit that determines whether or not a delay has occurred for each query based on the current response time and the past response times. Effect of the Invention

[0007] According to the present disclosure, whether or not a delay occurs for each query is determined based on the current response time and the past response times. With this configuration, the user can easily identify the part of the microservice where the delay occurs.

[0008] The objects, features, aspects and advantages of the present disclosure will become more apparent from the following detailed description and the accompanying drawings. [Brief description of the drawings]

[0009] [Figure 1] 1 is a block diagram showing a configuration of a delay estimation system according to a first embodiment. [Diagram 2] 4 is a diagram showing an example of data stored in a monitoring data management DB according to the first embodiment; FIG. [Diagram 3] 2 is a diagram showing an example of a data model stored in a data model management DB according to the first embodiment; FIG. [Figure 4] 5 is a diagram showing an example of a response time stored in a history management unit according to the first embodiment. FIG. [Diagram 5] 4 is a flowchart showing the operation of the delay estimation device according to the first embodiment. [Figure 6] 4 is a flowchart showing the operation of the delay estimation device according to the first embodiment. [Figure 7] FIG. 11 is a diagram showing an example of a response time stored in a history management unit according to Modification 3. [Figure 8] FIG. 13 is a block diagram showing a hardware configuration of a delay estimation device according to another modified example. [Figure 9]FIG. 13 is a block diagram showing a hardware configuration of a delay estimation device according to another modified example. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0010] <Embodiment 1> Fig. 1 is a block diagram showing the configuration of a delay estimation system according to the first embodiment. The delay estimation system in Fig. 1 includes a microservice 1, a monitoring data management DB 2, a delay estimation device 3, a data model management DB 4, a history management unit 5, and a control device 6. Note that the DBs in the monitoring data management DB 2 and the data model management DB 4 stand for "database."

[0011] A microservice 1 has a specific function, and a plurality of microservices 1 construct a functional system such as a cloud having a desired function by combining the specific functions. The microservice 1 realizes the specific function by performing processes such as acquisition, search, and modification using a query on data stored in a monitoring data management DB 2. Note that the microservice 1 may realize the specific function by performing processes such as acquisition, search, and modification using a query on not only data stored in the monitoring data management DB 2 but also data processed by another microservice 1.

[0012] Microservice 1 uses one or more queries. Metadata such as equipment, year, building, etc. are added to the name for identifying the query. For example, microservice 1 uses a query named with a year to perform processes such as retrieval, search, and modification of data related to the year. Note that one microservice 1 may use multiple queries in parallel, may use multiple queries in series, or may selectively use multiple queries.

[0013] The data that is retrieved, searched, or modified by the queries of microservice 1 is stored in the monitoring data management DB2.

[0014] Fig. 2 is a diagram showing an example of data stored in the monitoring data management DB2 according to the first embodiment. In the example of Fig. 2, sensor names and values ​​such as measured values ​​of the sensors are stored in association with each other. For example, multiple tables of Fig. 2 are associated with each sensor and stored in the monitoring data management DB2, and when the microservice 1 uses a query for the sensor A3, the microservice 1 acquires data related to the sensor A3 from multiple tables in the monitoring data management DB2. The monitoring data management DB2 is configured, for example, by a relational database.

[0015] 1 cooperates with a data model management DB 4 and a history management unit 5 to estimate the delay of a query used by the microservice 1 when the microservice 1 executes a specific function. The delay estimation device 3, the data model management DB 4, and the history management unit 5 will be described in detail below.

[0016] The delay estimation device 3 includes an acquisition unit 3a, a determination unit 3b, and an estimation unit 3c.

[0017] The acquiring unit 3a acquires, for each query, a response time of one or more microservices 1 that use a query for a data model in which a plurality of queries are associated in advance. In the present embodiment 1, the one or more microservices 1 include one microservice 1 and another microservice 1. Also, in the present embodiment 1, the data model is stored in the data model management DB 4.

[0018] Fig. 3 is a diagram showing an example of a data model stored in the data model management DB4 according to the first embodiment. In the example of Fig. 3, a plurality of queries are previously associated in a hierarchical structure in the data model, and include facility queries, device queries, and sensor queries defined in order from the highest level in the hierarchical structure. Note that in the first embodiment, the data model is set by a user, but is not limited to this.

[0019] In the example of Fig. 3, the query of facility A1 is associated with the queries of lower level devices A2 and B2. The query of device A2 is associated with the queries of lower level sensors A3, B3, and C3, and the query of device B2 is associated with the query of lower level sensor D3. The queries of sensors A3, B3, C3, and D3 are associated with values ​​corresponding to the values ​​in Fig. 2, and the query of sensor C3 is further associated with the value obtained as a result of processing of microservice E.

[0020] For example, when the data model is set as shown in Fig. 3, microservice 1 using a query of facility A1 will essentially use queries of devices A2 and B2. Similarly, microservice 1 using a query of device A2 will essentially use queries of sensors A3, B3, and C3.

[0021] The acquisition unit 3a in FIG. 1 acquires the response time of the microservice 1 using a query for each query, for a data model in which multiple queries are associated in advance. For example, when the microservice 1 uses a query for the sensor A3, the acquisition unit 3a acquires the response time from the query request to the response for the sensor A3, according to the data model in FIG. 3. For example, when the microservice 1 uses a query for the device A2, the acquisition unit 3a acquires the response time from the query request to the response for each of the device A2 and the sensors A3, B3, and C3, according to the data model in FIG. 3. The history management unit 5 stores the response times acquired by the acquisition unit 3a.

[0022] 4 is a diagram showing an example of response times stored in the history management unit 5 according to the present embodiment 1. The history management unit 5 stores the most recently acquired current response time and the previous response time, which is an example of a past response time acquired in the past.

[0023] In the example of Fig. 4, it is shown that microservice A selectively uses a query of sensor A3 and a query of sensor B3, and it is shown that the current response time for sensor B3 is obtained. Similarly, in the example of Fig. 4, it is shown that microservices C and E use a query of sensor A3, and it is shown that the current response time for sensor A3 is obtained. Note that the difference in response times between microservices C and E that use the same query of sensor A3 is due to factors other than the query of sensor A3, for example, differences in the network.

[0024] 1 judges whether or not a delay has occurred for each query based on the current response time and the past response time. In the first embodiment, the judgement unit 3b judges whether or not a delay has occurred for each query based on the current response time and a threshold value.

[0025] Fig. 5 is a flowchart showing the operation of the determination unit 3b according to the present embodiment 1. Note that the operation of Fig. 5 is performed for each query when the microservice 1 uses a query and the acquisition unit 3a acquires a response time.

[0026] First, in step S1, the decision unit 3b performs statistical processing on a plurality of past response times to calculate statistics of the past response times, such as the average, median, variance, and standard deviation.

[0027] In step S2, the determination unit 3b calculates a weighting for the query. For example, the determination unit 3b calculates the importance of the query or the importance of the microservice 1 that uses the query as the weighting for the query, based on query information such as the frequency of use of the query.

[0028] In step S3, the determination unit 3b determines a threshold value based on the statistics calculated in step S1 and the query weighting calculated in step S2.

[0029] In step S4, the determination unit 3b determines whether a delay has occurred in the query for which the current response time has been acquired, based on whether the current response time is greater than the threshold determined in step S3. In the present embodiment 1, if the current response time is greater than the threshold, the determination unit 3b determines that a delay has occurred in the query, and if the current response time is equal to or less than the threshold, the determination unit 3b determines that a delay has not occurred in the query. Then, the operation of FIG. 5 ends.

[0030] In the above operation, for example, when the statistic is an average value, the determination unit 3b determines the sum or product of the average value and a predetermined margin value as the threshold value. When only one past response time is acquired and the statistic of step S1 cannot be calculated, the determination unit 3b determines the sum or product of the past response time value and a predetermined margin value as the threshold value. Then, the determination unit 3b weights the query, that is, the margin value is made smaller as the importance of the query or microservice increases. With this configuration, the determination of a delay in a query can be made stricter as the importance of the query increases, making it easier to detect delays in queries with high importance or in the microservice 1.

[0031] In the example of Fig. 4, in microservice A using a query from sensor B3, the current response time is almost the same as the previous response time, so the determination unit 3b tends to determine that no delay has occurred in the query from sensor B3. On the other hand, in microservices C and E using a query from sensor A3, the current response time is much longer than the previous response time, so the determination unit 3b tends to determine that a delay has occurred in the query from sensor A3.

[0032] In the following description, for convenience of explanation, a query determined by the determining unit 3b as having a delay may be referred to as a "delayed query."

[0033] 1 estimates, based on the data model and the delay query, that a delay occurs in both the microservice 1 using the delay query and the query associated with the delay query in the data model. Note that the estimation unit 3c is not limited to this, and may estimate that a delay occurs in either the microservice 1 using the delay query or the query associated with the delay query in the data model, but not in both.

[0034] Furthermore, in the first embodiment, the estimation unit 3c estimates, based on the data model and the delayed query, that a delay has occurred in a query that is associated with the delayed query and is at a higher level in the hierarchical structure than the delayed query.

[0035] Fig. 6 is a flowchart showing the operation of the estimation unit 3c according to the present embodiment 1. Note that the operation of Fig. 6 is performed when the determination unit 3b determines that the query is a delayed query.

[0036] First, in step S11, the estimation unit 3c identifies the position of the delayed query in the data model.

[0037] In step S12, the estimation unit 3c identifies a query that is associated with the delayed query and is in a higher hierarchy than the delayed query in the hierarchical structure of the data model. For example, when the data model is the data model of FIG. 3 and the query of the sensor A3 is determined to be a delayed query, in step S12, the estimation unit 3c identifies queries of the device A2 and the facility A1.

[0038] In step S13, the estimation unit 3c estimates that a delay occurs in the microservice 1 that uses the delayed query and in the query identified in step S12. For example, assume that the data model is the data model in FIG. 3, and the query of the sensor A3 used by the microservice E in FIG. 4 is determined to be a delayed query. In this case, in step S13, the estimation unit 3c estimates that a delay occurs in the microservice E in FIG. 4 and the queries of the device A2 and facility A1. Then, the operation in FIG. 6 ends.

[0039] The control device 6 in Fig. 1 controls the display device (not shown) to display the determination result and estimation result of the delay estimation device 3. The control device 6 also stops the microservice 1 that uses the delay query determined by the delay estimation device 3. For example, as in the above example, when the query of the sensor A3 used by the microservice E in Fig. 4 is determined to be a delay query, the control device 6 stops the microservice E in Fig. 4. The control device 6 may stop the entire functional system constructed with the microservice 1 that uses the delay query, or may stop only the microservice 1 that uses the delay query out of the functional system.

[0040] <Summary of the first embodiment> The delay estimation device 3 according to the first embodiment as described above judges whether or not a delay has occurred for each query based on the current response time and the past response time. With this configuration, it is possible to judge in which query of the microservice 1 a delay has occurred, and therefore the user can easily identify the part of the microservice 1 where the delay has occurred.

[0041] In the first embodiment, it is estimated based on the data model and the delay query that a delay occurs in at least one of a microservice that uses the delay query and a query associated with the delay query in the data model. As an example, it is estimated based on the data model and the delay query that a delay occurs in a query that is associated with the delay query and is at a higher level in the hierarchical structure than the delay query. With this configuration, it is possible to reduce the effort required of a user to check the data model and identify a microservice that uses a delay query and a query associated with the delay query.

[0042] In the first embodiment, a threshold for determining whether a delay occurs for each query is determined based on the past response time and the weighting of the query. With this configuration, it is possible to make the determination of delay stricter for queries with high importance or for the microservice 1.

[0043] Furthermore, in the first embodiment, since the microservice that uses the delay query is stopped, it is possible to prevent further problems from occurring due to the delay query.

[0044] <Variation 1> The multiple queries in the data model of Fig. 3 in the first embodiment include a set of facility queries, device queries, and sensor queries defined in order from the highest level in the hierarchical structure, but are not limited to this. For example, the multiple queries may include a set of year queries, month queries, and day queries defined in order from the highest level in the hierarchical structure, or may include a set of building queries, floor queries, and person queries defined in order from the highest level in the hierarchical structure.

[0045] <Variation 2> In the first embodiment, when a delay query is determined from one microservice 1 based on the data model and the delay query, the estimation unit 3c may estimate that a delay has occurred in another microservice 1 using the delay query. Then, the control device 6 may stop the other microservice 1 using the delay query. For example, in FIG. 4, when the query of the sensor A3 is determined to be a delay query in the microservice E, it may be estimated that a delay has occurred in the microservices A and C using the query of the sensor A3, and the microservices A and C may be stopped. With such a configuration, it is possible to prevent further malfunctions from occurring due to the delay query.

[0046] <Variation 3> Assume that the second modification example in the first embodiment is not applied and another microservice 1 uses the same query as that used in one microservice. In such a case, one microservice 1 may determine that the query is delayed, but the other microservice may not determine that the query is delayed. In this case, the estimation unit 3c may estimate that a delay occurs in a portion of the one microservice 1 other than the query.

[0047] Fig. 7 is a diagram showing an example of the response time stored in the history management unit 5 according to the present modification example 3. In Fig. 7, the current response time in microservice C in Fig. 4 is changed to a smaller value.

[0048] 7, for example, it is assumed that the query of the sensor A3 from the microservice E is determined to be delayed, and the query of the sensor A3 from the microservice C is not determined to be delayed. In this case, the estimation unit 3c may estimate that the delay is not occurring in the query of the sensor A3, but in a portion of the microservice E other than the query of the sensor A3, for example, in the network of the microservice E. With this configuration, the portion where the delay has occurred is estimated in more detail, so that the user can easily identify the portion where the delay has occurred in the microservice.

[0049] <Variation 4> In the first embodiment, the number of data models in FIG. 3 is one, but there may be more than one.

[0050] Also, for example, the control device 6 may generate a data model by performing machine learning including at least one of supervised learning, unsupervised learning, and reinforcement learning using, for example, deep learning, on the names of multiple queries.

[0051] The control device 6 configured in this manner can, for example, associate a query named "water purification plant x sludge land △ sensor A3" and a query named "water purification plant x sludge land △ sensor B3" with a query named "water purification plant x sludge land △." In addition, the control device 6 can associate a query named "water purification plant x sludge land △" with a query named "water purification plant x." In this manner, the control device 6 can automatically generate a data model, thereby reducing the effort required of the user to set up the data model.

[0052] <Variation 5> In the first embodiment, the determination unit 3b determines whether or not a delay occurs for each query based on the current response time and a threshold value, but this is not limited to the above. For example, the determination unit 3b may create a transition pattern of response time from the current response time and past response times, and perform machine learning similar to the above machine learning on the transition pattern to determine whether or not a delay occurs for each query.

[0053] <Variation 6> In the first embodiment, the delay estimation device 3 and the control device 6 are provided separately, but this is not limited to the present invention. For example, although not shown, the delay estimation device 3 may include a control unit having the same functions as the control device 6, in addition to the acquisition unit 3a, the determination unit 3b, and the estimation unit 3c. Furthermore, the delay estimation system is not limited to the delay estimation system according to the first embodiment, as long as it is a system having the same functions as the acquisition unit 3a and the determination unit 3b.

[0054] <Other Modifications> The acquisition unit 3a, the determination unit 3b, and the estimation unit 3c in FIG. 1 described above are hereinafter referred to as the "acquisition unit 3a, etc." The acquisition unit 3a, etc. are realized by a processing circuit 81 shown in FIG. 8. That is, the processing circuit 81 includes an acquisition unit 3a that acquires, for each query, the response time of one or more microservices that use a query for a data model in which a plurality of queries are previously associated, a determination unit 3b that determines whether a delay occurs for each query based on the current response time and the past response time, and an estimation unit 3c that estimates, based on the data model and the delayed query, that a delay occurs in at least one of the microservice that uses the delayed query and the query associated with the delayed query in the data model. The processing circuit 81 may be implemented with dedicated hardware, or may be implemented with a processor that executes a program stored in a memory. The processor may be, for example, a central processing unit, a processing unit, an arithmetic unit, a microprocessor, a microcomputer, a DSP (Digital Signal Processor), or the like, and may be provided in, for example, a personal computer or a server.

[0055] When the processing circuit 81 is a dedicated hardware, the processing circuit 81 corresponds to, for example, a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or a combination of these. Each function of the acquisition unit 3a and the like may be realized by a circuit in which the processing circuits are distributed, or the functions of each unit may be realized by a single processing circuit.

[0056] When the processing circuit 81 is a processor, the functions of the acquisition unit 3a and the like are realized by a combination with software and the like. The software and the like includes, for example, software, firmware, or software and firmware. The software and the like are written as a program and stored in a memory. As shown in FIG. 9, the processor 82 applied to the processing circuit 81 realizes the functions of each unit by reading and executing a program stored in the memory 83. That is, the delay estimation device 3 includes a memory 83 for storing a program that, when executed by the processing circuit 81, results in the execution of the following steps for a data model in which a plurality of queries are previously associated with each other: acquiring a response time of one or more microservices using a query for each query; determining whether a delay has occurred for each query based on the current response time and the past response time; and estimating, based on the data model and the delayed query, that a delay has occurred in at least one of the microservice using the delayed query and the query associated with the delayed query in the data model. In other words, this program can be said to cause a computer to execute the procedure or method of the acquisition unit 3a and the like. Here, the memory 83 may be, for example, a non-volatile or volatile semiconductor memory such as a Random Access Memory (RAM), a Read Only Memory (ROM), a flash memory, an Erasable Programmable Read Only Memory (EPROM), an Electrically Erasable Programmable Read Only Memory (EEPROM), an HDD (Hard Disk Drive), a magnetic disk, a flexible disk, an optical disk, a compact disk, a mini disk, a DVD (Digital Versatile Disc), a drive device for any of these, or any storage medium to be used in the future.

[0057] The above describes a configuration in which each function of the acquisition unit 3a, etc. is realized either by hardware or software, etc. However, the present invention is not limited to this, and a configuration in which a part of the acquisition unit 3a, etc. is realized by dedicated hardware and another part is realized by software, etc. For example, the function of the acquisition unit 3a can be realized by a processing circuit 81 as dedicated hardware, an acquisition processing circuit, and the other functions can be realized by the processing circuit 81 as a processor 82 reading and executing a program stored in a memory 83.

[0058] As described above, the processing circuitry 81 can realize each of the above-mentioned functions by hardware, software, or a combination of these.

[0059] The contents of the embodiments can be modified or omitted as appropriate.

[0060] The above description is illustrative in all respects and is not restrictive. It is understood that countless variations not illustrated can be envisioned. [Explanation of symbols]

[0061] 1 Microservice, 3 Delay estimation device, 3a Acquisition unit, 3b Determination unit, 3c Estimation unit.

Claims

1. An acquisition unit that acquires, for each query, a response time of one or more microservices that use a plurality of queries in a data model in which the queries are associated in advance; a determination unit that determines whether or not a delay has occurred for each query based on the current response time and the past response times; A delay estimator comprising:

2. 2. The delay estimation device according to claim 1, The delay estimation device further includes an estimation unit that estimates, based on the data model and a delayed query, which is the query determined to be experiencing a delay, that a delay is occurring in at least one of the microservice that uses the delayed query and the query associated with the delayed query in the data model.

3. 3. The delay estimation device according to claim 1, further comprising: The delay estimation device, wherein the multiple queries are previously associated with each other in a hierarchical structure in the data model.

4. 3. The delay estimation device according to claim 2, The plurality of queries are previously associated in a hierarchical structure in the data model; The estimation unit is and a delay estimation device that estimates, based on the data model and the delayed query, that a delay has occurred in the query that is associated with the delayed query and is at a higher level in the hierarchical structure than the delayed query.

5. 4. The delay estimation device according to claim 3, The plurality of queries includes: A set of facility queries, device queries, and sensor queries defined in order from the highest level in the hierarchical structure; A set of a year query, a month query, and a day query defined in order from the highest level in the hierarchical structure; A delay estimation device including at least one of a set of building queries, floor queries, and person queries defined in order from the highest hierarchical level in the hierarchical structure.

6. 3. The delay estimation device according to claim 1, further comprising: The determination unit is determining whether a delay is occurring for each of the queries based on the current response time and a threshold; The threshold is determined based on the past response times and a weighting of the queries.

7. 3. The delay estimation device according to claim 2, The delay estimator stops the microservices that use the delay queries.

8. 3. The delay estimation device according to claim 2, The one or more microservices include one microservice and another microservice; The estimation unit is When the delayed query is determined from the one microservice based on the data model and the delayed query, the delay estimation device estimates that a delay is occurring in the other microservice that uses the delayed query.

9. 9. A delay estimation device according to claim 8, comprising: The delay estimator stops the other microservices that use the delay query.

10. 3. The delay estimation device according to claim 2, The one or more microservices include one microservice and another microservice that uses the query used in the one microservice; The estimation unit is When it is determined that the query is delayed from the one microservice and the query is not determined that the query is delayed from the other microservice, the delay estimation device estimates that a delay is occurring in a part of the one microservice other than the query.

11. 3. The delay estimation device according to claim 1, further comprising: A delay estimation device, wherein the data model is generated by performing machine learning on the names of the plurality of queries.

12. For a data model in which a plurality of queries are associated in advance, a response time of one or more microservices using the queries is obtained for each of the queries; The delay estimation method determines whether or not a delay has occurred for each query based on the current response time and the past response times.

13. A function of acquiring, for each query, a response time of one or more microservices that use a plurality of queries for a data model in which the queries are associated in advance; a function of determining whether a delay has occurred for each query based on the current response time and the past response times; A delay estimation system comprising:

Citation Information

Patent Citations

  • Delay cause specifying method and delay cause specifying program

    JP2021196970A

  • Model generation service for data retrieval

    US20220222225A1

  • Monitoring device, monitoring method, and recording medium

    WO2015025379A1

  • Monitoring system, monitoring image information generation method, and monitoring image information generation program

    WO2021095268A1