This invention relates to monitoring of electronic devices and more particularly relates to displaying an off-switch location.
Complex information systems commonly include several devices, each working together to provide various data storage, communication, and processing services. Such systems are commonly used for business. Where such systems are involved in business and financial transactions, reliability is typically a particular concern for system administrators. If an error occurs on such a system, there may be a substantial financial impact to the company.
Commonly, system administrators use system monitoring applications to measure the availability and to ensure the accessibility of the information system resources. Monitoring applications commonly use Simple Network Management Protocol (SNMP) ping packets and other network monitoring commands to monitor responsiveness of the various system resources.
Common applications may provide an abstract graphical display of the network indicating the status of the various resources. For example, a network monitoring application may assign a box or circle called a “node” to represent a resource in the network. Commonly, such nodes are colored to indicate the status of the resource. For example, a green node may indicate that the resource is available, and a red node may indicate that the network management application cannot access the resource.
However, typical monitoring applications do not provide a physical description of the monitored device. Furthermore, monitoring applications also generally do not provide information regarding the physical location within a large system of the monitored device.
Typically, monitoring systems only collect data about the accessibility of the system resources. Additionally, monitoring systems do not provide a system administrator with information about the physical location or physical configuration of the system resources within the system.
An apparatus for displaying an off-switch location is disclosed. The apparatus includes a processor and a non-transitory computer readable storage medium storing computer readable code that is executable by the processor. The processor displays a rack image of a physical rack of a plurality of monitored devices separate from the processor. The rack image comprises a physical representation of the physical rack with device representations of each monitored device disposed within the rack image as each monitored device is disposed within the physical rack. The processor displays an icon configured to convey a status of each monitored device of the plurality of monitored devices. The processor monitors a position of a mouse. The processor identifies a given monitored device at the position of the mouse and configuration data associated with the given monitored device. The configuration data defines an area of the rack view associated with the given monitored device. In response to identifying the given monitored device, the processor displays a locate off hyperlink for the given monitored device. In response to a selection of the locate off hyperlink, the processor displays an off-switch location on the rack image of the given monitored device. A method and computer program product also perform the functions of the apparatus.
In order that the advantages of the invention will be readily understood, a more particular description of the invention briefly described above will be rendered by reference to specific embodiments that are illustrated in the appended drawings. Understanding that these drawings depict only typical embodiments of the invention and are not therefore to be considered to be limiting of its scope, the invention will be described and explained with additional specificity and detail through the use of the accompanying drawings, in which:
Many of the functional units described in this specification have been labeled as modules, in order to more particularly emphasize their implementation independence. For example, a module may be implemented as a hardware circuit comprising custom VLSI circuits or gate arrays, off-the-shelf semiconductors such as logic chips, transistors, or other discrete components. A module may also be implemented in programmable hardware devices such as field programmable gate arrays, programmable array logic, programmable logic devices or the like.
Modules may also be implemented in software for execution by various types of processors. An identified module of executable code may, for instance, comprise one or more physical or logical blocks of computer instructions which may, for instance, be organized as an object, procedure, or function. Nevertheless, the executables of an identified module need not be physically located together, but may comprise disparate instructions stored in different locations which, when joined logically together, comprise the module and achieve the stated purpose for the module.
Indeed, a module of executable code may be a single instruction, or many instructions, and may even be distributed over several different code segments, among different programs, and across several memory devices. Similarly, operational data may be identified and illustrated herein within modules, and may be embodied in any suitable form and organized within any suitable type of data structure. The operational data may be collected as a single data set, or may be distributed over different locations including over different storage devices, and may exist, at least partially, merely as electronic signals on a system or network.
Reference throughout this specification to “one embodiment,” “an embodiment,” or similar language means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Thus, appearances of the phrases “in one embodiment,” “in an embodiment,” and similar language throughout this specification may, but do not necessarily, all refer to the same embodiment.
Reference to a signal bearing medium may take any form capable of generating a signal, causing a signal to be generated, or causing execution of a program of machine-readable instructions on a digital processing apparatus. A signal bearing medium may be embodied by a transmission line, a compact disk, digital-video disk, a magnetic tape, a Bernoulli drive, a magnetic disk, a punch card, flash memory, integrated circuits, or other digital processing apparatus memory device.
Furthermore, the described features, structures, or characteristics of the invention may be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided, such as examples of programming, software modules, user selections, network transactions, database queries, database structures, hardware modules, hardware circuits, hardware chips, etc., to provide a thorough understanding of embodiments of the invention. One skilled in the relevant art will recognize, however, that the invention may be practiced without one or more of the specific details, or with other methods, components, materials, and so forth. In other instances, well-known structures, materials, or operations are not shown or described in detail to avoid obscuring aspects of the invention.
In one embodiment, the monitoring device 102 may include an application server or workstation in communication with the network 104. The monitoring device 102 may host a network monitoring application configured to collect status information, configuration information, and availability statistics from the monitored device 106. Further embodiments of the monitoring application are described below with reference to
The monitored device 106 may include various components of a computer or network. For example, a monitored device 106 may include a hard drive in an array of hard drives. Alternatively, the monitored device 106 may include a computer processor. In another alternative embodiment, the monitored device 106 may include a network router, switch, or hub. In still another embodiment, the monitored device 106 may include an application server or a data server. One of ordinary skill in the art of computer and network monitoring may recognize other potential devices or even software applications that may require monitoring from a monitoring device 102.
In one embodiment, the rendering module 202 is configured to display a physical representation of the monitored device 106. For example, if the monitored device 106 were an array of storage disks held in a rack of storage disk arrays, the rendering module 202 may display a picture of a component rack. The picture may also include several disk arrays mounted within the component rack. In a further embodiment, the picture may include a depiction of one or more storage disks within the disk arrays. The rendering module 202 may display an actual picture of the monitored device 106. Alternatively, the rendering module 202 may display a graphical representation of the monitored device 106, where the physical configuration of the monitored device 106 is accurately depicted. For example, the rendering module 202 may display a graphical model of the monitored device 106.
The grid module 204 may generate one or more grid lines with the physical representation of the monitored device 106. For example, if the monitored device 106 is a storage disk within an array of storage disks, the grid module 204 may generate a group of grid lines that outline the general area of the storage disk. The grid module 204 may further generate a group of grid lines separating one disk array from another disk array, and so on. In one embodiment, the grid module 204 may display the grid lines in a graphical layer that is separate from the graphical layer in which the rendering module 202 displays the physical representation of the monitored device 106. Alternatively, the grid module 204 may draw the grid lines directly on the physical representation of the monitored device 106 so that both the physical representation and the grid lines are displayed in the same graphical layer. In an alternative embodiment, the grid module 204 may not display the grid lines to the user, but maintain information regarding the location of the grid lines and the associated area defined by the intersection of the grid lines.
The status module 206 may display an icon configured to convey information regarding the status of the monitored device 106. For example, the status module 206 may display the icon within an area defined by a group of grid lines displayed by the grid module in a way that the icon indicates the status of a monitored device 106 whose physical representation is contained within an area enclosed by the grid lines. In one embodiment, the icon may include a color or an image that provides some indicia of the status of the monitored device 106. For example, the icon may be green to indicate that the monitored device 106 is operating properly. Alternatively, the icon may include an image of a stop sign or warning sign to indicate that an error has occurred on the monitored device 106. In a further embodiment, the status icon may convey information regarding a specific characteristic of the monitored device, such as the temperature, up-time, scheduled maintenance dates, or the like.
Although in certain embodiments, the monitoring device 102 may not include the event capture module 208 or the interface module 210, in the depicted embodiment the monitoring device 102 does include these modules. The event capture module 208 may highlight an area enclosed by a group of grid lines in response to a user selection. For example, if a user places a mouse pointer over a grid box, the event capture module 208 may highlight the grid box to indicate that the grid box is selectable or that a further action may be taken with respect to the monitored device 106 associated with the grid box. Indeed, the event capture module 208 may capture a variety of user interactive events. Further embodiments are described below with reference to
In an alternative embodiment, the event capture module 208 may display a device description in response to detecting a selection event in the area defined by the grid box. For example, if a mouse pointer is placed over the grid box associated with a storage disk within a storage array, the event capture module 208 may display a small pop-up window or box that includes a name, location, and/or physical description of the storage disk.
In a further embodiment, the event capture module 208 also includes an interface module 210. In one embodiment, the interface module 210 may display a device interface window or menu in response to detecting a mouse hover over a grid box associated with the monitored device 106. Alternatively, a mouse left click or right click may trigger the interface module 210 to display the device interface. Further embodiments of the device interface are described below with relation to
As illustrated the physical view 300 may include multiple graphical display layers. For example, the rendering module 202 may display the physical representation of the rack 302, the storage disk arrays 318 and the storage disks in a first display layer and the grid module 204 may generate the grid 304 of grid boxes 306-314. The grid boxes 306-314 may be displayed or hidden. In a further embodiment, the display layers may include multiple HyperText Markup Language (HTML) layers displayed one on top of another. In an alternative embodiment, the rendering module 202 and the grid module 204 may display the physical representation and the status icon 320 in the first layer. In such an embodiment, the status module 206 may display the icon 320 in the first layer and the event capture module 208 may display the highlighting 316 and/or the description (not shown) in the second display layer. Various alternative embodiments may include additional layers, or rearranging the order and matching of images in the various display layers.
As illustrated, the grid 304 may include multiple grid lines configured to define an area of the second display layer associated with a monitored device 106. For example, the grid 304 may include multiple grid boxes 306-314. In such an embodiment, grid boxes 306 through 312 may each be associated with a separate storage disk within a storage disk array 318. Grid box 312 may be associated with a power supply for the storage disk array 318, and grid box 314 may be associated with the entire storage disk array 318.
In such an embodiment, when a mouse pointer is positioned over grid box 306, the event capture module 208 may display a highlight 316 over grid box 306 to indicate that the disk array associated with grid box 306 has been selected. Alternatively, if the mouse pointer is positioned over grid box 314, the event capture module 208 may display a highlight 316 over each of boxes 306-314 to indicate that the entire storage disk array 318 has been selected.
A system administrator may initially configure the device monitoring application by identifying the monitored device 106 and configuration data associated with the monitored device 106. In a specific embodiment, the configuration data may include an image of the monitored device 106 that the rendering module 202 may display as the physical representation in the physical view 300 of the monitored device 106. Additionally, the configuration data may include defining an area of the physical view associated with the monitored device 106 to be defined by the grid lines. The configuration data may also include a network address for the monitored device 106, a Domain Name System (DNS) name for the monitored device 106, or the like.
In one embodiment, the physical view 400 includes the physical view 300 as described above with relation to
In a particular embodiment, the physical view 400 may include several different icons 402-410 to illustrate various operational states of the monitored devices 106. For example, the physical view 400 may include a warning icon 402 to indicate that an error has occurred on the monitored device 106 or any selectable subcomponent. A check icon 404 may indicate that the monitored device 106 is operating properly. An ‘X’ icon 406 may indicate that the monitored device 106 has failed. A ‘?’ icon 408 may indicate that a monitored device 106 is not reachable, or that the status is unknown. A tool icon 410 may indicate that the monitored device 106 is undergoing a maintenance procedure.
In a further embodiment, the interface module 210 may display a device interface. The device interface may include a query panel 412 and a control panel 416. The query panel 412 may display a response from the monitored device 106 to an information query from the monitoring device 102. For example, the query panel 412 may indicate that the device is in a warning state 414. Additionally, the query panel 412 may display a volume of available storage space on a storage disk, a firmware revision level that is loaded on the monitored device 106, or the like.
The control panel 416 may display one or more selectable controls configured related to the monitored device 106. For example, the control panel 416 may include an update firmware hyperlink 418 that automatically triggers a firmware update operation and/or a window to allow a system administrator to remotely update the firmware on the monitored device 106. In one embodiment, the firmware update operation locates a latest firmware version for the monitored device 106 that is compatible with the monitored device's current configuration. The firmware update operation may further automatically install the latest firmware version.
In one embodiment, the control panel 416 includes a repair hyperlink 431. If selected, the repair hyperlink 431 may trigger a repair operation. The repair operation may automatically diagnose one or more problems for the monitored device 106. In addition, repair operation may present repair instructions to resolve the diagnosed problems for the monitored device 106.
The control panel 416 may include a locate off hyperlink 433. If selected, the locate off hyperlink 433 may automatically display an off-switch location for the monitored device 106. The off-switch location may be a location of an off switch. In one embodiment, the off-switch location includes the location of all potential off switches for the monitored device 106. The potential off switches may include an off-switch that is local to the monitored device 106, and off switch for the rack 302, and/or an off switch for the power circuit to which the rack 302 and/or the monitored device 106 are connected. In one embodiment, the off-switch location is highlighted on the rack image of the monitored device 106.
The schematic flow chart diagrams that follow are generally set forth as logical flow chart diagrams. As such, the depicted order and labeled steps are indicative of one embodiment of the presented method. Other steps and methods may be conceived that are equivalent in function, logic, or effect to one or more steps, or portions thereof, of the illustrated method. Additionally, the format and symbols employed are provided to explain the logical steps of the method and are understood not to limit the scope of the method. Although various arrow types and line types may be employed in the flow chart diagrams, they are understood not to limit the scope of the corresponding method. Indeed, some arrows or other connectors may be used to indicate only the logical flow of the method. For instance, an arrow may indicate a waiting or monitoring period of unspecified duration between enumerated steps of the depicted method. Additionally, the order in which a particular method occurs may or may not strictly adhere to the order of the corresponding steps shown.
If the event capture module 208 detects 610 a second selection event, the interface module 210 display 612 an interface to the monitored device 106. The second selection event may include a left mouse click, or the like. In one embodiment, the interface may include a query results field configured to display responses to data queries received from the monitored device 106. In another embodiment, the interface may include a control panel 416 configured to display a selectable control, such as a hyperlink, configured to trigger a communication of data from the monitoring device 102 to the monitored device 106.
The method 700 starts, and in one embodiment, the processor displays 705 the control panel 416. Displaying 705 the control panel 416 may display 705 one or more of the locate off hyperlink 433, the update firmware hyperlink 418, and the repair hyperlink 431.
The processor determines 710 if a selection of one or more of the locate off hyperlink 433, the update firmware hyperlink 418, and the repair hyperlink 431 is received. If no selection is received, the method 700 ends. If a selection of one or more of the locate off hyperlink 433, the update firmware hyperlink 418, and the repair hyperlink 431 is received, the processor performs 715 the selection and the method 700 ends. In one embodiment, the processor displays the off-switch location on the rack image of the monitored device 106 in response to a selection of the locate off hyperlink 433. In addition, the processor may trigger the firmware update operation for the monitored device 106 in response to a selection of the update firmware hyperlink 418. In one embodiment, the processor triggers the repair operation in response to a selection of the repair hyperlink for the monitored device 106.
The present invention may be embodied in other specific forms without departing from its spirit or essential characteristics. The described embodiments are to be considered in all respects only as illustrative and not restrictive. The scope of the invention is, therefore, indicated by the appended claims rather than by the foregoing description. All changes which come within the meaning and range of equivalency of the claims are to be embraced within their scope.
This is a continuation-in-part application of and claims priority to U.S. patent application Ser. No. 14/167,573 entitled “APPARATUS AND METHODS FOR DISPLAYING A PHYSICAL VIEW OF A DEVICE” and filed on Jan. 29, 2014 for Andrew Gary Hourselt, which is incorporated herein by reference and which claims priority to U.S. patent application Ser. No. 12/047,199 entitled “APPARATUS AND METHODS FOR DISPLAYING A PHYSICAL VIEW OF A DEVICE” and filed on Mar. 12, 2008 for Andrew Gary Hourselt, which is incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
5276877 | Friedrich et al. | Jan 1994 | A |
5286202 | de Gyarfas | Feb 1994 | A |
5682487 | Thomson | Oct 1997 | A |
5850539 | Cook | Dec 1998 | A |
5861882 | Sprenger et al. | Jan 1999 | A |
5887193 | Takahashi et al. | Mar 1999 | A |
5890204 | Ofer et al. | Mar 1999 | A |
6115041 | Dang et al. | Sep 2000 | A |
6253240 | Axberg et al. | Jun 2001 | B1 |
6269398 | Leong et al. | Jul 2001 | B1 |
6384842 | DeKoning et al. | May 2002 | B1 |
6446966 | Crozier | Sep 2002 | B1 |
6609034 | Behrens et al. | Aug 2003 | B1 |
6610102 | Aldred et al. | Aug 2003 | B1 |
6639893 | Chikenji et al. | Oct 2003 | B1 |
6779027 | Schunicht et al. | Aug 2004 | B1 |
6813037 | Collard | Nov 2004 | B1 |
6825860 | Hu et al. | Nov 2004 | B1 |
6829513 | Piersanti et al. | Dec 2004 | B2 |
7043605 | Suzuki | May 2006 | B2 |
7055105 | Windl et al. | May 2006 | B2 |
7072986 | Kitamura et al. | Jul 2006 | B2 |
7221357 | Von Essen et al. | May 2007 | B2 |
7236987 | Faulkner et al. | Jun 2007 | B1 |
7266638 | Coppock et al. | Sep 2007 | B2 |
7290168 | DeKoning | Oct 2007 | B1 |
7290182 | Windl | Oct 2007 | B2 |
7383381 | Faulkner et al. | Jun 2008 | B1 |
7430568 | DeKoning et al. | Sep 2008 | B1 |
7437505 | Chew | Oct 2008 | B2 |
7437621 | Kawase | Oct 2008 | B2 |
7441083 | Suzuki et al. | Oct 2008 | B2 |
7447939 | Faulkner et al. | Nov 2008 | B1 |
7512894 | Hintermeister et al. | Mar 2009 | B1 |
7519909 | Kuiawa et al. | Apr 2009 | B2 |
7526568 | Swanton et al. | Apr 2009 | B1 |
7647126 | Blevins et al. | Jan 2010 | B2 |
7667668 | Domi et al. | Feb 2010 | B2 |
7669139 | Hintermeister et al. | Feb 2010 | B2 |
7689391 | Cochran et al. | Mar 2010 | B2 |
7715929 | Skourup et al. | May 2010 | B2 |
7852337 | Archer et al. | Dec 2010 | B2 |
20010035880 | Musatov et al. | Nov 2001 | A1 |
20020035620 | Takahashi et al. | Mar 2002 | A1 |
20020135859 | Haga | Sep 2002 | A1 |
20020145770 | Nomura et al. | Oct 2002 | A1 |
20020175938 | Hackworth | Nov 2002 | A1 |
20020190946 | Metzger | Dec 2002 | A1 |
20030001883 | Wang | Jan 2003 | A1 |
20030033550 | Kuiawa et al. | Feb 2003 | A1 |
20030095123 | Hahn | May 2003 | A1 |
20030217357 | Parry | Nov 2003 | A1 |
20040073854 | Windl | Apr 2004 | A1 |
20040107085 | Moosburger et al. | Jun 2004 | A1 |
20040243778 | Barrios et al. | Dec 2004 | A1 |
20040243945 | Benhase et al. | Dec 2004 | A1 |
20050021291 | Retlich et al. | Jan 2005 | A1 |
20050034012 | Bartlett et al. | Feb 2005 | A1 |
20050055641 | Machida | Mar 2005 | A1 |
20050096872 | Blevins et al. | May 2005 | A1 |
20050125489 | Hanes | Jun 2005 | A1 |
20060161395 | Beam | Jul 2006 | A1 |
20060178864 | Khanijo | Aug 2006 | A1 |
20060190768 | Kawase | Aug 2006 | A1 |
20060241793 | Skourup et al. | Oct 2006 | A1 |
20060250352 | Fairs et al. | Nov 2006 | A1 |
20060285821 | Kim et al. | Dec 2006 | A1 |
20070025195 | Oh et al. | Feb 2007 | A1 |
20070028137 | Chen | Feb 2007 | A1 |
20070073825 | Suzuki | Mar 2007 | A1 |
20070187343 | Colucci | Aug 2007 | A1 |
20070283389 | Hallberg | Dec 2007 | A1 |
20070294212 | Ozaki et al. | Dec 2007 | A1 |
20080016466 | Grasser et al. | Jan 2008 | A1 |
20080028338 | Kodosky et al. | Jan 2008 | A1 |
20080194239 | Hagan | Aug 2008 | A1 |
20080201657 | Archer et al. | Aug 2008 | A1 |
20090059103 | Azor et al. | Mar 2009 | A1 |
20090089714 | Blake et al. | Apr 2009 | A1 |
20090091468 | O'Bra | Apr 2009 | A1 |
20100023865 | Fulker et al. | Jan 2010 | A1 |
20110057803 | Yamaoka | Mar 2011 | A1 |
Number | Date | Country | |
---|---|---|---|
20180059915 A1 | Mar 2018 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 12047199 | Mar 2008 | US |
Child | 14167573 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 14167573 | Jan 2014 | US |
Child | 15805530 | US |