Abstract:
The present invention includes a system for and a method of a support system which includes an information manager to gather performance information and error condition-related information from a computer product which is sent by the information manager electronically to a support server. The support server, working with an associated database, attempts to solve the underlying error present in the computer product by analyzing the information received, comparing the information to a database containing previously reported error related information and identification of a proposed solution or corrective action from the database. This proposed solution, or corrective action is then sent to the information manager.

Description:
TECHNICAL FIELD 
     The invention relates to the resolution of error conditions in computer storage systems and more specifically, to the automated collection of information to identify a problem and solution generation for computer storage devices. 
     BACKGROUND 
     Typically, manufacturers of computer systems, computer devices, computer components or software (computer products) offer customers technical support once the computer products have been purchased or leased by the consumer. This support may consist of technical information on the use of the computer products or may be directed to the identification and solution of problems encountered when using the computer products. Typically, when a customer encounters a problem with a computer product, he or she calls the manufacturer&#39;s support center, who in turn generates an incident number, and then requests that the consumer manually gather data from the malfunctioning computer product. This data is then formatted into an electronic mail, or e-mail, message or described verbally and sent or communicated to the service center of the manufacturer. After allowing time for the service center to receive this information, the customer calls the service center where technical personnel access the data contained in the e-mail or verbal message and, working with the customer, attempt to identify the malfunction (or the misuse) of the computer product. Once the problem is identified, the service center personnel instructs the customer on the steps required to correct the problem. If, however, the service center personnel cannot identify and/or solve the malfunction, a service technician is dispatched to the site or the consumer is asked to bring the computer product in for repair. 
     The process in identifying and solving malfunctions in computer products is manually intensive, time consuming, and inefficient. Additionally, each service center personnel must be trained in the identification and solutions for malfunctions which may appear in the supported computer products. This process is again inefficient as support personnel turnover requires retraining and additional education. Additional inefficiencies occur when trained service personnel spend time and expend resources in solving known problems or when particularly complicated or difficult problems are resolved by different personnel at a later time for a different customer. 
     SUMMARY OF THE INVENTION 
     The present invention is directed to a method of and apparatus for a support system which comprises a storage device including an information manager configured to collect performance information and to generate an error message including the performance data. Also included is a support server which receives the error message and, working with the information in an associated database, identifies malfunctions and proposes solutions. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a block diagram of a system which automatically gathers error information and suggests solutions for the error condition according to the present invention; and 
         FIG. 2  is a flow chart which depicts an overall process of an embodiment of the present invention. 
     
    
    
     DETAILED DESCRIPTION 
       FIG. 1  is a block diagram of a system that may be used pursuant to the present invention to automatically gather parameter information from a malfunctioning storage device indicative of symptoms of a fault. The information is then transmitted to a dedicated support server that may include a central processing unit and a connection to a database which, working together, are programmed to identify malfunctions and propose solutions to correct the malfunctions of the storage device. Specifically, for example, consumer  109  purchases computer storage device  101 , such as a tape library, from a manufacturer and installs storage device  101  into the consumer&#39;s system  100 . Included within storage device  101  is an information manager such as a Remote Management Card (RMC)  102  that collects and packages information used to troubleshoot the malfunction within computer product  101  for analysis and tracking by dedicated support server  103 . This information may be performance data or error information or combined performance and error information. RMC  102  gathers the relevant information, the information is embedded in a performance or error message and the message, including that information is sent to dedicated support server  103  through consumer firewall  104  (if present) via Internet  105 . The performance or error information collected may be error-condition related information. “Pushing” this information through firewall  104  allows the information to be received by dedicated support server  103  which could not otherwise initiate access of the information. This communication may be transmitted using HTTP or other protocol and/or format. Consumer firewall  104 , if present, allows RMC  102  to push data out from the consumer&#39;s Local Area Network (LAN) (not shown) or other local communications environment to Internet  105 . Once RMC  102  data is received by dedicated support server  103 , embedded Central Processing Unit (CPU)  106  executes resident software to analyze the data contained in RMC  102  message. In analyzing this data, CPU  106  may access database  107  to compare RMC  102  data to pre-existing records or trends. 
     If dedicated support server  103  cannot identify or solve the malfunction, RMC  102  data may be sent to support personnel  108  for follow-on analysis. Alternatively, if dedicated support server  103  can identify the problem and identify a proposed solution, an appropriate message may be sent from dedicated support server  103  to RMC  102  or to consumer  109  with the suggested corrective action. 
     Additionally, database  107  collects, stores and processes data gathered by RMC  102  and performs comparisons between this data and other data generated by, and collected from similar storage devices. This information is used to create a database of information about storage devices, their characteristics, maintenance issues, error conditions, malfunctions, solutions, and early indications that would be helpful in future trouble-shooting. 
     Preferably, the report page generated by RMC  102  would be written in Extensible Markup Language (XML) which would allow CPU  106  to easily parse the data for processing and storage in database  107 . Alternatively, other mark-up languages and formats may be used or formats that can be converted into a user-friendly form can also be used without deviating from the spirit of this invention. The XML-based report page may be communicated using Hypertext Transfer Protocol (HTTP) as the transport mechanism. 
     If repair information containing corrective or proposed solutions is sent from CPU  106  to RMC  102  this information may be sent via an e-mail to gain access through consumer firewall  104 , or may be in response to RMC  102  generated poll to CPU  106 . 
       FIG. 2  shows a flow chart which outlines an overall process of an embodiment of the invention. In step  201 , the user of the storage device determines that the storage device is malfunctioning. The user requests that RMC  102  gather relevant information (from sensors or internal logs) and send that information to dedicated support server  103  ( FIG. 1 ). In step  202 , RMC  102  establishes communication with CPU  106 , through dedicated support server  103 , and downloads the information to CPU  106  in step  203 . In step  204 , CPU  106  analyzes the information and preferably accesses the database (step  205 ) to identify the malfunction and, if possible, a solution. At step  206 , if information relevant to the identified malfunction is contained in the database, CPU  106  uses the information to determine a course of action (step  207 ), and sends this information to the user or RMC  102  ( FIG. 1 ) for implementation (step  208 ). The information collected may be performance data, error messages or information, or any other data pertinent to the operation of the storage device 
     Alternatively, if at step  206  information relevant to identified malfunction is not contained in the database, in step  209  a new database entry is created in which to store this error information. Because CPU  106  cannot suggest a solution, the problem is referred to support personnel in step  210  for resolution. In step  211  the support personnel identify a solution and import information relevant to the solution into the database. The support personnel would preferably also follow up with the customer to ensure the problem with the storage device was correctly resolved. 
     If a problem is experienced by the tape library, for instance an updated release of the software or firmware stored within the tape library is interrupted during loading causing the tape library to remain in boot-up, the RMC may preferably be used to collect corresponding information when enabled by the user. In this example, the corresponding information may include software or firmware version number, the date the software or firmware was loaded, the size of the corresponding file, etc. The collected information would be sent to the support server, which upon analysis of the problem would identify the failed software or firmware update and accordingly would instruct the operator to reload the information. In this example, the problem may be identified from a variation in size between the expected software or firmware loaded and the actual size of the file. Similarly, partial availabilities of tape libraries, or other problems, may be identified by the support server by analysis of information collected by the RMC. 
     In another embodiment, the present invention includes an automatic recognition capability that determines the presence of an error condition and begins collecting error-related information as a result of this detection. Such automatic detection mechanisms are known in the art and this embodiment of the present invention includes these as the impetus to start information collection. For example, Hewlett-Packard manufactures a C7200 tape library that is currently shipped with a Remote Management Card (RMC) installed. The RMC card allows access of the purchasing company&#39;s local network&#39;s tape library to gather information from sensors located within the tape library.