You are on page 1of 12

J2EE-JAVA SYSTEM MONITORING

(Wily introscope)

Purpose:

To describe a procedure for java system monitoring through SAP certified
third party tool Wily introscope.

Scope: (Assumption)

This procedure is applicable for monitoring SAP systems based on J2EE
(java processes). As a pre-requisite Wily introscope should be installed and
configured.

Procedure:

With the help of Wily introscope the following areas in the java system will
be monitored as a part of regular activity.

CPU utilization
File system usage
OS Memory utilization
Java thread monitoring
Java memory utilization
Http sessions monitoring.


Launch wily introscope:

Launch the wily introscope tool,



Console view: All the systems monitored under Wily introscope will be
displayed in the single window. (Expert usage)

Investigator view: We can monitor each and every individual system in this
view (Beginners usage).

Click on investigator tab to launch it.


CPU utilization monitoring:

In the investigator tab navigate to tree as Superdomain<service name>
SAP HostAgent Process - SAP HostAgent <No> SAP OsCol- CPU.

The CPU monitoring of the server will be look as below,





Pre-requisite: The SAP OS collector should be running to view these values.

Click on any one of the parameters in the investigator tab to view the
graphical representation.



The parameters such as idle %, System %, Total % and user % should be
monitored.

The CPUs performance can be monitored from the current time to the
custom range based on our purpose.

File system monitoring:

In the investigator tab navigate to tree as Superdomain<service name>
SAP HostAgent Process - SAP HostAgent <No> SAP OsCol-Filesystems

The filesystems tab will look like the below picture,



The file systems such as /usr/sap/<SID>,
/sapmnt/<SID>/oracle/<SID>/oraarch should be monitored.

Click on the required file system and monitor the free usage,





Operating system memory utilization:

In the investigator tab navigate to tree as Superdomain<service name>
SAP HostAgent Process - SAP HostAgent <No> SAP OsCol-Memory to
monitor the memory related parameters.

The pictorial representation will be as below,



The parameters such as free memory, free swap should be monitored here.

Click on the parameter and view the graph in the right tab.
Java thread monitoring:

Basics of Threads:

Threads in java will process all the j2ee requests in the java systems.

Thread manager: Supplies the threads required for the core J2EE engine to
operate.

Application thread manager: Supplies the threads in which the clients
application code is executed. (i.e.) when an HTTP request reaches the J2EE
engine, an application thread receives it. Application thread runs only on the
server process.

To monitor the threads usage in the wily introscope, please navigate to the
below tabs

In the investigator tab navigate to tree as Superdomain<service
name>SAP Netweaver<Server node>- JMX- com.sap.default
SAP_J2EEKernelRuntimeperNode- Thread manager.

The pictorial representation will look like the below,



The parameters such as ActiveThreadsCount, CurrentThreadCount,
WaitingTasksCount,WaitingTasksUsageRate, MaxThreadCount should be
monitored.

ActiveThreadsCount: The number of threads from the thread pool, which are
executing a Runnable task pool
CurrentThreadCount: The current number of threads created in the thread
pool.

WaitingTasksCount: The number of Runnable tasks waiting for available
thread from the thread pool to be executed

WaitingTasksUsageRate: The ratio of the current size of the waiting tasks
queue to the maximum configured size.

MaxThreadCount: The maximum size of the thread pool.

From the wily introscope we can monitor the thread manager as below,



Likewise please click on each parameter required mentioned above.

From the above picture we can see the MaxThreadCount as 100.

To monitor application threads please navigate to the below,

In the investigator tab navigate to tree as Superdomain<service
name>SAP Netweaver<Servernode>-JMX-com.sap.default
SAP_J2EEKernelRuntimeperNode- Application Thread manager.

The pictorial representation will as below,



The parameters such as ActiveThreadsCount, CurrentThreadCount,
WaitingTasksCount, WaitingTasksUsageRate, MaxThreadCount should be
monitored as we did it for Thread manager.

From the above figure we can see the active thread count as 11.

Please click on each individual parameters and look the values.

Java memory utilization:

Java memory concepts:

Before analyzing the memory utilization we should be aware of different
memory concepts in the java.

In java, Java Virtual Machine (JVM) will allocate the memory from the OS
level.

Each server and dispatcher node will have a separate JVM.

The objects that no longer use the memory must be released. This is taken
care by the a special process called Garbage Collector (GC)

Eden or young generation:

The objects will be first placed in the eden spaces. (i.e.) recently created
objects will be placed in this space.

Tenured or old generation:

The objects, which survive some young generation collections, are moved to
old generation.

Permanent generation:

The objects, which are needed permanently for the java system (class
metadata), will be placed here.

Garbage collector (GC) will run in two phases namely

1) Minor GC
2) Full GC.

Minor GC: Will clear the objects in the new generation, which are no longer
required.

Full GC: Will clear the objects in both young & old generation.

In the investigator tab navigate to tree as Superdomain<service name>
SAP HostAgent Process - SAP HostAgent <No>SAP GC Server name to
monitor the java memory areas.



The parameters such as Minor GC time (ms), Full GC time (ms), Eden After,
Eden Before, Tenured After, and Tenured Before should be monitored as a
part of regular activity.

%, Minor GC time- Amount of time taken by the GC to clear the objects in
the young generation. Normally it should take few ms.

% Full GC time-Amount of time taken by the GC to clear the objects in the
old generation. Will be always higher than minor GC time but will be in ms
only.

Eden Before- Memory space in the young generation before the minor GC
was executed.

Eden After - Memory space in the young generation after the minor GC was
executed.

We should compare these spaces to check whether the minor GC actually
cleared the objects.

Tenured before- Memory space in the old generation before the full GC was
executed.

Tenured after- Memory space in the old generation after the full GC was
executed.
We should compare these spaces to check whether the full GC actually
cleared the objects.



KPI for GC:

1) For a good java system full GC should be happen less frequently.
2) Minor GC should happen frequently.




Click on each parameters and view the graphical representation to monitor
the java memory usage.

GC Heap:

In the investigator tab navigate to tree as Superdomain<service name>
SAP HostAgent Process - SAP HostAgent <No>GC Heap to monitor the
heap usage.









Http sessions monitoring:

In the http sessions monitoring the parameters such as AllRequestscount,
Total Response time should be monitored.

This parameter denotes the number of http requests to the particular server
node and the total response time of the same.


In the investigator tab navigate to tree as Superdomain<service
name>SAPNetweaver<Servernode>-JMX-
com.sap.defaultSAP_J2EEServiceRuntimePernode




!!! Congratulations!!! Java system is monitored through Wily introscope






















Appendix:

Once you have familiarised with the above activity, please use the Console
view in the wily introscope to monitor all parameters of the multiple systems
in the same window.(Short span monitoring).

The console view will be as below,



Click on any on the tab to view the details,
(i.e.) Multiple systems can be monitored on a single console window.

You might also like