The InnovationQ application will be updated on Sunday, May 31st from 10am-noon ET. You may experience brief service interruptions during that time.
Browse Prior Art Database

Dynamic Monitoring of System Parameters

IP.com Disclosure Number: IPCOM000014172D
Original Publication Date: 2000-Mar-01
Included in the Prior Art Database: 2003-Jun-19

Publishing Venue



A server system (a collection of processes and server logic) runs on a server computer and provides services on behalf of clients. These clients may be people using an interface such as an interactive program or command shell, or they may be application programs. They may be running remotely (over a network) or locally (on the same machine). A common objective is to optimise the operation of the server system. The server program can be tuned during development by profiling the processes and server logic whilst a simulated client load is applied. Client programs may also be tuned during development in a similar manner. This type of tuning is commonplace but has the disadvantage that once the system enters production, such analysis is no longer feasible, particularly as the gathering of analysis data is likely to impact overall system performance. If workloads and use patterns vary, then the tuning performed during development may become less effective over time. Proposed is a method of analysing the performance of a server system whilst it is in production use. If the server system has parameters that can be configured by administrators, selected by users or passed by application programs, it may experience invalid or ill-advised combinations such parameters. A secondary system can monitor the use of the server system to detect such conditions, which may lead to performance problems, increased storage requirements, or other undesirable consequences. The secondary system monitors the server system using "hooks" which allow it to discover environmental settings, parameters and optionally internal statistics of the server system. The hooks provide only coarse-grain activity in the system, which helps to reduce the overhead typically associated with the collection of trace data. The secondary system contains rules or heuristics which it allow it to predict problems and alert an administrator to the risk which are derived from the expert knowledge of the developers of the server system. The expertise of the secondary system infers the system performance from the coarse trace data. An example might be the monitoring of optional, range or default parameters to an API verb, and comparison of the values used in practice to the current settings of the system parameters, such as timeouts, buffer sizes, or security settings. In addition to detecting combinations likely to lead to sub-optimal performance, the secondary system could also provide reports on the use of invalid, illegal or ill-advised combinations of