Resource Trend Report Description Document

Author: Sheldon Lee-Loy
email: sleeloy@ca.ibm.com
Last update: Dec 20, 2006

Requirement summary

To understand the requirements of this report lets consider the Java Pet Store blueprint application. The Java Pet Store is a sample application that uses J2EE technology to demonstrate . The following figure illustrates one possible multi tiered network topology that can support this application:

The topology is composed of the following nodes:

Consider the following use case. The Pet Shop Store application is running on the enterprise system and the system administrator wants to gauge the "health" of the system every morning. To determine the "health" of the system the system administrator wants to determine the network throughput for each node, memory utilization and cpu utilization over time. This trend report will allow the system administrator to determine the network traffic at certain time of the day. This report will also determine whether the current system can handle the day to day loads.

Now consider the case where a specific node in the network is showing irregular memory utilization. In this case a more detailed report showing the memory utilization of processes running in the node would isolate the cause of the irregular memory utilization.

Design summary

Data model

The following shows a possible XML data structure that models the information needed to generate a trend report for the system.

<document>
    <node hostName="clientHost">
        <data name="throughput" unit="bytes/second">
              <sample time="12939942432" value="2312"/>
              .....
        </data>
        <data name="cpu utilization" unit="%">
              <sample time="12939942432" value="12"/>
              .....
        </data>
              .....
   </node>
    .....
</document>

Here is a complete sample.xml file.

Similarly a data structure is needed to model monitoring information from processes running on a particular network node.

<document>
    <node hostName="webaserverHost">
    <process id="22" name="apache.exe">
        <data name="memory utilization " unit="%">
              <sample time="12939942432" value="21"/>
              .....
        </data>
        <data name="cpu utilization" unit="%">
              <sample time="12939942432" value="12"/>
              .....
        </data>
              .....
   </process>
    .....
   </node>
</document>

Here is a complete sample.xml file.

Report mockup

The following shows a report mockup of the trend report for the system. Notice that the report composes of three charts that shows throughput, memory usage and cpu usage. A detailed table follows.