A proxy unit operates as a proxy server for a self-monitoring device so that operation information from the self-monitoring device is transmitted to the management server. A function monitoring unit receives the operation information for identifying a state of a self-monitoring function of the self-monitoring device when the proxy unit operates as a proxy server. Subsequently, the function monitoring unit determines whether or not the self-monitoring function has an abnormality based on the operation information.

BACKGROUND OF THE INVENTION

Field of the Invention

The present invention relates to an information processing apparatus, an information processing method, and a storage medium for quickly performing device maintenance, for example, error handling in a device and the replenishment of consumables.

Description of the Related Art

A device management system that performs maintenance for a device installed in, for example, an office via a network has been conventionally known. The use of the device management system makes it possible, for example, to detect the occurrence of a failure in a device, the necessity of replenishing consumables, and the like via the network, and to quickly respond to them. For example, Japanese Patent Application Laid-Open No. 2018-136876 discloses a device management system.

Conventionally known device management systems include a system that includes a plurality of devices to be managed and a management server that receives operation information from the devices, and integrally manages the devices. The device management systems may further include an information processing apparatus that functions as a management client that receives data from a plurality of devices to be managed, generates operation information, and transmits the operation information to a management server. In this context, the operation information is information including status information, counter information, sensor information, and log information, which are information related to a failure in a device and consumables. The operation information is used by the management server for performing, for example, device management service and device maintenance service.

When a failure or the like occurs in a device, an operator needs to go to a place where the device is installed in order to perform a recovery operation, depending on, for example, the type of the failure. Hence, in order to reduce a time from the occurrence of the failure or the like to the recovery, that is, the downtime, a stable operation for the device management system is desired.

Here, the devices to be managed are broadly classified into devices compatible with a self-monitoring function (hereinafter, referred to as a “self-monitoring device”) and devices not compatible with the self-monitoring function (hereinafter, referred to as a “non-self-monitoring device”). The self-monitoring function is a function of collecting the operation information based on the control of the device itself, and transmitting the collected operation information to the management server. The non-self-monitoring device transmits the operation information in response to polling or the like from the management client.

In the device management system of Japanese Patent Laid-Open No. 2018-136876, the management client has a proxy function therein that relays communication of the operation information (hereinafter, simply referred to as a “proxy”). Additionally, settings for using the proxy of the management client are made for the devices to be managed as well. As a result, the operational information is transmitted from the devices to the management server via the proxy of the management client.

In conventional device management systems, no management client operating as a proxy analyzes the communication status and the contents of the operation information from each device to be managed. Accordingly, it is impossible for the management client to determine whether or not the self-monitoring function of the devices to be managed is operating normally. Hence, even if there is a self-monitoring device that cannot appropriately transmit the operation information due to the occurrence of an abnormality in the self-monitoring function for some reason, the management client cannot recognize such an abnormality. In the situation in which an abnormality occurs in the self-monitoring function of the self-monitoring device, a notification about failures such as a component failure occurring in the self-monitoring device itself may fail to be provided to the management server. In such a case, it is impossible to realize quick maintenance for the self-monitoring device.

SUMMARY OF THE INVENTION

The present invention has been made in order to solve the above problem and provides a mechanism for recognizing the occurrence of an abnormality in a self-monitoring function of a device in an information processing apparatus that is a management client operating as a proxy.

An information processing apparatus transmits operation information acquired by executing a request to a network device based on monitoring settings to a management server via a network, wherein, according to one embodiment of the present invention, the information processing apparatus comprises: a memory storing instructions; and a processor executing the instructions causing the information processing apparatus to: enable an operation as a proxy server for the network device so that the operation information from the network device is transmitted to the management server without the request; receive information for identifying a state of a function of handling operation information of the network device itself being executed on the network device during operation as the proxy server for the network device; and determine whether or not the function has an abnormality based on the information for identifying the state of the function.

Further features of the present invention will become apparent from the following description of exemplary artifacts (with reference to the attached drawings).

DESCRIPTION OF THE EMBODIMENTS

First Embodiment

Hereinafter, a device management system according to the first embodiment of the present invention will be described below with reference toFIG. 1toFIG. 5. FIG.1is a conceptual diagram illustrating a network configuration of the device management system according to the present embodiment. The device management system of the present embodiment includes a management server1000, a management client2000, and a device group3000.

The management server1000is connected to the management client2000, for example, via the Internet5000. As described below, the management server1000integrally manages the management client2000and each of devices DevA1to DevAn and DevB1to DevBm (“n” and “m” are natural numbers) of the device group3000. Various types of data received from the management client2000are used for this management. The management server1000may include a single computer or a plurality of computers. Further, a computer using cloud computing technology may be used as the management server1000.

The management client2000is connected to the devices DevA1to DevAn and DevB1to DevBm of the device group3000via a network, for example, an intranet4000. As the intranet4000, for example, a LAN (Local Area Network) or the like can be adopted. Subsequently, in accordance with monitoring settings, the management client2000requests the devices DevA1to DevAn and DevB1to DevBm to provide operation information, that is, information about the occurrence of a failure or replenishment of consumables of each device, and acquires the information. The management client2000transmits the acquired operation information to the management server1000.

The device group3000includes devices compatible with the self-monitoring function, that is, the self-monitoring devices DevA1to DevAn, and devices not compatible with the self-monitoring function, that is, the non-self-monitoring devices DevB1to DevBm.

AlthoughFIG. 1illustrates a configuration in which the management server1000and the management client2000are connected via the Internet5000, the management server1000and the management client2000may be connected via another network, for example, the intranet4000.

FIG. 2is a block diagram schematically illustrating a hardware configuration of the management server1000and the management client2000. That is, the management server1000and the management client2000have substantially the same hardware configuration. Hereinafter, a description will be given for an example of the hardware configuration of the management client2000.

InFIG. 2, a CPU201reads out and executes software stored in, for example, a ROM (Read Only Memory)202and an HDD (Hard Disk Drive)209. When executing the software, the CPU201uses a RAM (random access memory)203as a work area.

Accordingly, the CPU201configures a client service unit44, a proxy unit45, a function monitoring unit46, and a device monitoring unit47(refer toFIG. 4), which will be described below, by software and operates them. Additionally, the CPU201accesses other hardware elements204to211through the system bus200, and executes the control to be described below.

The video card (VC)204operates a display device (CRT)205based on the control of the CPU201. The display device205operates as a user interface for a system administrator or the like to, for example, operate the management client2000based on the control of the CPU201.

The keyboard controller (KBC)206performs a process of receiving operation inputs from a keyboard (KB)207and a pointing device (for example, a mouse) based on the control of the CPU201.

The disk controller (DKC)208causes the HDD209and a disk drive210to execute, for example, a software reading operation and a data writing operation based on the control of the CPU201.

The HDD209stores software, data, and the like. As described above, this software includes software for causing the CPU201to form the client service unit44, the proxy unit45, the function monitoring unit46, and the device monitoring unit47.

The disk drive210can mount storage media such as a floppy disk, a CD-ROM, a DVD, and an IC memory card. The disk drive210performs a writing operation and a reading operation on the mounted storage medium.

The network interface board (NIC)211communicates with the management server1000via the Internet5000based on the control of the CPU201. Additionally, the network interface board211communicates with the devices DevA1to DevAn and DevB1to DevBm of the device group3000via the intranet4000.

As described above, the management server1000has a hardware configuration similar to the management client2000. However, the CPU201of the management server1000configures a device management service unit41, a device information receiving unit42, and a data storage unit43(refer toFIG. 4), which will be described below, by software and operates them.

FIG. 3is a block diagram schematically illustrating a hardware configuration of the devices DevA1to DevAn and DevB1to DevBm configuring the device group3000. The devices DevA1to DevAn and DevB1to DevBm are image forming apparatuses such as a printer, a copying machine, a digital multifunction device, and a three-dimensional printer.

The devices DevA1to DevAn and DevB1to DevBm have functions related to printing such as printing and copying, and functions of connecting to the intranet4000and communicating with external devices such as the management client2000.

A CPU301functions as a controller that controls the entire system. For this purpose, the CPU301reads the control program from a ROM302or an HDD305. When the control program is read from the HDD305, the reading is controlled by a disk controller (DKC)304.

A RAM303is used as a work area when the CPU301executes a control program. When the CPU301executes the control program, a device service unit48and a self-monitoring function unit49(refer toFIG. 4) can be configured by software and operated.

A UI306is a user interface for allowing a user to use a printer308and a scanner309, and includes a switch and an LED indicator for the user to operate. Information indicating an operation that has been performed by the user using the UI306is transmitted to the CPU301.

A card reader307reads the user information from the IC card at the time of login processing and transmits it to the CPU301. The CPU301collates this user information with the user information stored in the HDD307in advance to execute user authentication.

The printer308executes printing processing based on the control of the CPU301. Similarly, the scanner309executes document reading processing based on the control of the CPU301. Specifically, the control processing for the printer308and the scanner309is performed by the device service unit48configured by software by the CPU301.

A network interface card (NIC)310communicates with a management client2000via the intranet4000.

FIG. 4is a block diagram conceptually illustrating an example of the software configuration of the management server1000, the management client2000, and the device group3000. With respect to the devices DevA1to DevAn and DevB1to DevBm included in the device group3000, only one self-monitoring device is shown inFIG. 4. As shown inFIG. 4, the management server1000includes the device management service unit41, the device information receiving unit42, and the data storage unit43.

The device management service unit41manages the devices DevA1to DevAn and DevB1to DevBm. For example, the device management service unit41can detect the occurrence of a failure in the devices DevA1to DevAn and DevB1to DevBm, and the necessity of replenishing consumables via the intranet4000. As the device management service unit41, what is referred to as a “cloud service” can be used.

The device information receiving unit42receives the management information of the devices DevA1to DevAn and DevB1to DevBm, and transmits the management information to the device management service unit41. The data storage unit43is a storage region that stores the management information of the devices DevA1to DevAn and DevB1to DevBm, and, for example, a part of the storage region provided in the HDD209is used.

The management client2000includes the client service unit44, the proxy unit45, the function monitoring unit46, and the device monitoring unit47. By this configuration, the management client2000operates as a proxy server. The proxy unit45relays the transmission of the operation information from the devices DevA1to DevAn, which have the self-monitoring function, to the management server1000. Note that the setting corresponding to the proxy information set in the proxy unit45of the management client2000is performed in advance for the devices DevA1to DevAn and DevB1to DevBm.

The client service unit44acquires the device information of the devices DevA1to DevAn and DevB1to DevBm from the data storage unit43of the management server1000. Subsequently, the client service unit44controls the function monitoring unit46and the device monitoring unit47based on the device information to monitor the devices DevA1to DevAn and DevB1to DevBm. Details of the operations of the client service unit44, the function monitoring unit46, and the device monitoring unit47will be described below.

In addition to the proxy function of the management client2000, another proxy server may be provided in a communication path between the management server1000and the devices DevA1to DevAn and DevB1to DevBm.

The self-monitoring devices DevA1to DevAn of the device group3000are provided with the device service unit48and the self-monitoring function unit49. As described above, the device service unit48performs control processing of the printer308and the scanner309.

The self-monitoring function unit49monitors by itself whether or not failures such as an errors have been generated in the self-monitoring devices DevA1to DevAn. When determining that failures such as an error have occurred, the self-monitoring function unit49collects the operation information related to the failures. The collected operation information is transmitted from the device service unit48to the device information receiving unit42of the management server1000through the proxy unit45of the management client2000, and is transferred from the device information receiving unit42and stored in the data storage unit43. Specifically, when the management client2000receives the operation information from the self-monitoring devices DevA1to DevAn, the management client2000transfers this operation information to the management server1000by using the proxy unit45. In this transfer, the client service unit44is not involved.

Note that the self-monitoring function unit49is one what are referred to as “device applications” that operate on the devices DevA1to DevAn. Therefore, the self-monitoring function unit49has functions such as starting, stopping, updating, and deleting, as characteristics of the device application.

In contrast, the non-self-monitoring devices DevB1to DevBm have only the device service unit48, and do not have the self-monitoring function unit49. For this reason, with respect to the non-self-monitoring devices DevB1to DevBm, the device monitoring unit47of the management client2000accesses the device service unit48by using what is referred to as “polling” or the like to monitor whether or not failures such as an error have occurred in a timely manner.

When it is determined that failures such as an error have occurred, the device monitoring unit47of the management client2000collects the operation information related to the failure from the device service unit48of the non-self-monitoring devices DevB1to DevBm. Subsequently, the device monitoring unit47transfers the collected operation information to the device information receiving unit42of the management server1000through the client service unit44, the device information receiving unit42transfers the information to the data storing unit43, and the information is stored in the data storing unit43. Specifically, when receiving the operation information from the non-self-monitoring devices DevB1to DevBm, the management client2000transfers this operation information to the management server1000by using the device monitoring unit47and the client service unit44. In this transfer, the proxy unit45is not involved.

As described above, in the self-monitoring devices DevA1to DevAn, the self-monitoring function unit49monitors the state of the device by itself, and when there is a failure, the self-monitoring function unit49transmits the operation information to the management server1000through the management client2000. Therefore, when the self-monitoring function unit49itself stops for some reason and the operation information cannot be transmitted, the notification about the failure is not provided to the management server1000.

The operation information transmitted by the self-monitoring function unit49may significantly affect the downtime of the self-monitoring devices DevA1to DevAn, for example, support by a service person is required depending on the error content. Hence, it can be said that the self-monitoring function unit49has a particularly high need for a stable operation in comparison to the other device applications.

Accordingly, in the present embodiment, the management client2000is provided with the function monitoring unit46to monitor the self-monitoring function unit49. Hereinafter, the operation of the function monitoring unit46will be described in detail with reference to the flowchart ofFIG. 5.

First, the client service unit44of the management client2000accesses the data storage unit43via the device information receiving unit42of the management server1000. This access is performed by the client service unit44periodically performing a request to the data storage unit43. Subsequently, the client service unit44acquires, from the data storage unit43, the information about the devices to be managed, in other words, the device information of the devices DevA1to DevAn and DevB1to DevBm belonging to the device group3000(step S500).

In this context, the device information is information for specifying device attributes such as a device name, a device IP address, and the presence or absence of the self-monitoring function. The device information is information for identifying a state of a function of handling the operation information of each device. Additionally, the presence or absence of the self-monitoring function may be set in advance when the device is registered in the data storage unit43, or may be set by the client service unit44of the management client2000performing device search. For the device search, known search techniques such as SNMP, IP Broadcast, and SLP/Multicast can be used.

Next, the client service unit44determines whether or not the self-monitoring device is present in the device group3000by using the device information that has been acquired in step S500(step S501). If it is determined that the self-monitoring device is “not present”, the process ofFIG. 5ends.

In contrast, if it is determined in step S501that “the self-monitoring device is present in the device group3000.”, the client service unit44provides an instruction to the function monitoring unit46to monitor the self-monitoring device (step S502). In the present embodiment, the client service unit44provides an instruction to the function monitoring unit46to monitor the self-monitoring devices DevA1to DevAn.

In the present embodiment, the function monitoring unit46executes monitoring processing of the self-monitoring devices DevA1to DevAn at each predetermined monitoring timing. For this purpose, the function monitoring unit46first waits until the time reaches the monitoring timing (step S503). When the time reaches the monitoring timing, the process proceeds to step S504.

Here, the monitoring timing may be a predetermined time, a time after the lapse of a predetermined time from the previous monitoring processing, or the monitoring timing may be determined by using other criteria. The same monitoring timing may be provided for all the self-monitoring devices DevA1to DevAn, or different monitoring timings may be provided for each of them.

When the time reaches the monitoring timing, the function monitoring unit46accesses, for example, each of the device service units48of the self-monitoring devices DevA1to DevAn. Subsequently, the function monitoring unit46confirms whether or not a device application configuring the self-monitoring function unit49by software (hereinafter, referred to as a “self-monitoring application”) is operating (step S504).

Additionally, the function monitoring unit46determines whether a self-monitoring device in which the self-monitoring application of the self-monitoring function unit49is in a stopped state is “present” or “not present” among the self-monitoring devices DevA1to DevAn (step S505). When the function monitoring unit46determines that a self-monitoring device in which the self-monitoring application of the self-monitoring function unit49is in a stopped state is “not present”, the process ofFIG. 5ends.

In contrast, when the function monitoring unit46determines that “a self-monitoring device in which the self-monitoring application of the self-monitoring function unit49is in a stopped state is present”, the function monitoring unit46provides an instruction to the device service unit48of the self-monitoring device to restart the self-monitoring application (step S506). At the same time, the function monitoring unit46transmits a notification indicating that the self-monitoring device is in a stopped state to the management server1000, and causes the data storage unit43to store the notification.

Subsequently, the function monitoring unit46determines whether or not the restart of the self-monitoring application determined to be in a stopped state in step S506has been completed (step S507). When the restart has been completed, the process ofFIG. 5ends.

In contrast, if the restart has not been completed after the lapse of the predetermined time, the function monitoring unit46transmits an error notification to the management client2000(step S508). When receiving the error notification, the client service unit44of the management client2000causes the display device (CRT)205to display an error.

Although, in the present embodiment, the error notification is transmitted to the client service unit44of the management client2000, it may be transmitted to the device management service unit41of the management server1000or may be transmitted to another destination.

As described above, in the present embodiment, the function monitoring unit46periodically determines whether or not a self-monitoring application that has stopped is present (refer to step S505). In contrast, each of the self-monitoring function units49of the self-monitoring devices DevA1to DevAn may periodically transmit a notification indicating that the device is in a normal operation state (that is, a heartbeat) to the function monitoring unit46of the management client2000. This heartbeat may be transmitted, for example, to the device information receiving unit42of the management server1000through the proxy unit45of the management client2000.

By the above process, in the present embodiment, even if the self-monitoring function unit49of the devices DevA1to DevAn stops for some reason, it is possible to quickly restore it to a normal state. As a result, according to the present embodiment, it is possible to enhance the reliability of the management for the operation states of the self-monitoring devices DevA1to DevAn.

Second Embodiment

Next, a device management system according to the second embodiment of the present invention will be described with reference toFIG. 6andFIG. 7. The network configuration, the hardware configuration, and the software configuration of the management server1000, the management client2000, and the devices DevA1to DevAn and DevB1to DevBm according to the present embodiment are substantially the same as those of the first embodiment (refer toFIG. 1toFIG. 4). However, the present embodiment differs on the following points.

FIG. 6is a block diagram conceptually illustrating a software configuration example of the self-monitoring devices DevA1to DevAn. InFIG. 6, components to which the reference numerals that are the same as those inFIG. 4are given are the components that are the same as those inFIG. 4.

The self-monitoring devices DevA1to DevAn of the present embodiment have a device application management unit50for managing information as to whether or not each installed device application uses proxy information.

Additionally, in the present embodiment, the function monitoring unit46of the management client2000stores a revision log of the proxy setting for each of the self-monitoring devices DevA1to DevAn. Specifically, also in the present embodiment, the proxy setting of the self-monitoring devices DevA1to DevAn is changed in response to the change of the proxy setting of the management client2000, as in the case of the first embodiment. However, the proxy setting before the change is stored in the function monitoring unit46.

Hereinafter, a process of monitoring the self-monitoring function unit49of the self-monitoring devices DevA1to DevAn in the present embodiment will be described. As described in the first embodiment, there are cases in which the self-monitoring devices DevA1to DevAn fail to restart the self-monitoring application (refer to step S507).

If the restart of the self-monitoring application has failed, it is desirable to return the proxy setting of the self-monitoring function unit49to the state that is before the proxy setting has changed in accordance with the proxy setting of the management client2000. Typically, the self-monitoring device has only one proxy setting, so that if a failure occurs in the proxy unit45of the management client2000, the influence may affect the communication of the other device applications in the self-monitoring device. Hence, if the self-monitoring function unit49is not operating normally, it is desirable to return the setting so that the self-monitoring application does not use the proxy.

However, when a device application other than the self-monitoring application uses the information about the proxy setting, it is desirable that such a device application can use the proxy as it is. Hence, for example, it is desirable to continue using the proxy without returning the proxy setting to the previous state.

FIG. 7is a flowchart illustrating monitoring processing of the self-monitoring function unit49in the present embodiment. InFIG. 7, the processes of steps S500to S507are the same as the processes having the same reference numerals inFIG. 5. As described below, the processes of the present embodiment is different from the processes of the above first embodiment in that the processes of steps S700to S702are performed instead of the error notification (refer to step508ofFIG. 5) of the first embodiment or in addition to the error notification.

First, as in the first embodiment, the client service unit44of the management client2000acquires the device information from the data storage unit43of the management server1000(refer to step S500). Subsequently, as in the first embodiment, the restart of the self-monitoring application that is in a stopped state is executed (refer to steps S501to S506).

Subsequently, the function monitoring unit46determines whether or not the restart of the self-monitoring application has been completed (step S507), and when the restart has been completed, the processing ofFIG. 7ends. In contrast, if the restart has not been completed after the lapse of the predetermined time, the function monitoring unit46performs the processing below.

If the function monitoring unit46determines that the restart has failed (step S507), the function monitoring unit46acquires the device application information including the presence or absence of the use of the proxy information from the corresponding device application management unit50(step S700).

Subsequently, the function monitoring unit46determines whether a device application other than the self-monitoring application that uses the proxy information is “present” or “not present” based on the device application information that has been acquired in step S700(step S701).

If the function monitoring unit46determines that a device application other than the self-monitoring application that uses the proxy information is “not present” in step S701, the function monitoring unit46transmits an instruction for returning the proxy of each device to the original setting state to the devices DevA1to DevAn (step S702). The original setting state is a setting state when the proxy unit45is not used. At this time, if the proxy information has not been set before the setting change, the proxy information of each device returns to an empty state. The function monitoring unit46may transmit an instruction to explicitly set the proxy setting of each device to an empty setting. After step S702, the function monitoring unit46ends the process ofFIG. 7.

In contrast, if it is determined in step S701that a device application other than the self-monitoring application that uses the proxy information is present, the function monitoring unit46ends the processing ofFIG. 7without returning the proxy information to the original setting state.

Note that the device application may include a device application that performs proxy setting for another device application. Such a device application does not have to be included in “another device application that uses the proxy information”. Accordingly, in the present embodiment, when “another device application that uses the proxy information” other than such a device application is not present, the proxy information is returned to the original setting state. Additionally, an instruction to change the proxy setting shown in step S702may be transmitted to a target device without providing an instruction to restart the self-monitoring application in step S506. When it is determined that an abnormality has occurred in the self-monitoring function or that the restart of the self-monitoring application has failed, the setting of the proxy server of the network device is changed to empty, and the device monitoring similar to the non-self-monitoring device is performed. In other words, the device monitoring unit47requests the devices to provide the operation information to acquire the information. Thus, duplicate transmission of the operation information when the self-monitoring application of the device shifted to the monitoring by the device monitoring unit47returns to normal can be prevented.

By the above process, according to the present embodiment, even if the self-monitoring function of the self-monitoring devices DevA1to DevAn stops for some reason, the normal operation of other functions can be easily ensured.

Third Embodiment

Next, a device management system according to the third embodiment of the present invention will be described with reference toFIG. 8. The network configuration, the hardware configuration, and the software configuration of the management server1000, the management client2000, and the devices DevA1to DevAn and DevB1to DevBm according to the present embodiment are substantially the same as those of the first embodiment (refer toFIG. 1toFIG. 4). However, the present embodiment differs on the following points.

Hereinafter, a process of monitoring the self-monitoring function unit49of the self-monitoring devices DevA1to DevAn in the present embodiment will be described. As described in the first embodiment, there are cases in which the self-monitoring devices DevA1to DevAn fail to restart the self-monitoring application (refer to step S507).

If the restart has failed, operations such as self-monitoring application recovery processing is typically required in order to perform the operation of the self-monitoring application normally. The self-monitoring device cannot operate the self-monitoring function unit49normally until the self-monitoring application starts normally after the recovery processing. Hence, in the present embodiment, the self-monitoring device can be used as a non-self-monitoring device until the self-monitoring function unit49of the self-monitoring device returns to a normal operation.

FIG. 8is a flowchart illustrating the monitoring processing of the self-monitoring function unit49in the present embodiment. InFIG. 8, the processes in steps S500to S507are the same as the processes inFIG. 5to which the same reference numerals are provided. As described below, the processing of the present embodiment is different from the processing of the first embodiment in that the non-self-monitoring processing of step S800is performed instead of the error notification of the first embodiment (refer to step S508ofFIG. 5) or in addition to this error notification.

First, as in the first embodiment, the client service unit44of the management client2000acquires the device information from the data storage unit43of the management server1000(refer to step S500). As in the first embodiment, the restart of the self-monitoring application that is in a stopped state is executed (refer to steps S501to S506).

Subsequently, the function monitoring unit46determines whether or not the restart of the self-monitoring application has been completed (step S507), and when the restart has been completed, the process ofFIG. 7ends. In contrast, if the restart of the self-monitoring application has failed, the function monitoring unit46performs the non-self-monitoring processing to be described below (step S800).

In this non-self-monitoring processing, first, the function monitoring unit46of the management client2000requests the client service unit44to change the device from the self-monitoring device to the non-self-monitoring device.

Upon receipt of this request, the client service unit44provides an instruction to the device monitoring unit47to additionally register the device as a non-self-monitoring device.

After the additional registration, the device monitoring unit47of the management client2000monitors the device as a non-self-monitoring device. Specifically, the device monitoring unit47accesses the device service unit48by polling or the like, thereby the occurrence of a failure can be monitored.

By the above process, according to the present embodiment, even when the restart of the self-monitoring application has failed, the normal operation of other functions can be ensured.

Fourth Embodiment

Next, a device management system according to the fourth embodiment of the present invention will be described. The network configuration, the hardware configuration, and the software configuration of the management server1000, the management client2000, and the devices DevA1to DevAn and DevB1to DevBm according to the present embodiment are substantially the same as those of the first embodiment (refer toFIG. 1toFIG. 4). However, the present invention differs in the following points.

In the first embodiment, whether or not the self-monitoring application is operating is checked in order to determine whether the self-monitoring function unit49is normal or abnormal (refer to step S504ofFIG. 5). However, even if the self-monitoring application is operating, a failure that has occurred in the self-monitoring devices DevA1to DevAn may not be detected or reported due to internal failures of the self-monitoring application. In such a case, even if various failures occur in the self-monitoring devices DevA1to DevAn, the device management service unit41of the device management service unit1000cannot recognize the failures.

In contrast, in the present embodiment, the following process is performed instead of the process that is the same as in the first embodiment (refer toFIG. 5) or in addition to the process that is the same as in the first embodiment. As in the first embodiment, the device information receiving unit42of the management server1000stores transmission data such as device data and operation information of the self-monitoring devices DevA1to DevAn.

The function monitoring unit46of the management client2000periodically accesses the data storage unit43through the client service unit44and the device information receiving unit42of the management server1000. Subsequently, from the data storage unit43, the function monitoring unit46acquires and stores the latest date and time information of the transmission data received from the self-monitoring devices DevA1to DevAn. Subsequently, the function monitoring unit46determines whether or not the self-monitoring devices DevA1to DevAn having no information updating within a predetermined time period is present based on the acquired latest date and time information.

Further, the function monitoring unit46provides an instruction to the device service unit48of the self-monitoring devices DevA1to DevAn that have been determined not to have information updating within a predetermined time period to restart the self-monitoring application.

By the above processes, according to the present embodiment, when the self-monitoring devices DevA1to DevAn cannot detect or report a failure even though the self-monitoring application is operating, the self-monitoring application can be restarted to return to a normal operation state. Note that the device management system may be configured to include all the features of the first to fourth embodiments.

Other Embodiments

This application claims the benefit of Japanese Patent Application No. 2020-020923, filed Feb. 10, 2020, which is hereby incorporated by reference wherein in its entirety.