Sun GlassFish Enterprise Server v3 Prelude Administration Guide

About Monitoring

Monitoring is the process of reviewing the statistics of a system to improve performance or solve problems. By monitoring the state of various components and services deployed in the Enterprise Server, you can identify performance bottlenecks, predict failures, perform root cause analysis, and ensure that everything is functioning as expected. Data gathered by monitoring can also be useful in performance tuning and capacity planning.

The asadmin utility provides multiple ways of viewing monitoring data: by using the monitor command to view common data, and by using the list and get commands to view more comprehensive data.

The following topics are addressed here:

How the Monitoring Tree Structure Works

A monitorable object is a component, subcomponent, or service that can be monitored. Enterprise Server uses a tree structure to track monitorable objects. Because the tree is dynamic, the tree changes as components of the Enterprise Server instance are added or removed.

In the tree, a monitorable object can have child objects (nodes) that represent exactly what can be monitored for that object. All child objects are addressed using the dot (.) character as a separator. These constructed names are referred to as dotted names.

The following are monitorable objects for the instance server:


server.applications
server.http-service
server.jvm
server.web

Dotted names can also address specific attributes in monitorable objects. For example, the jvm type has a memory attribute called maxheapsize-count. The following dotted name addresses the attribute:

server.jvm.memory.maxheapsize-count

Although an object is monitorable, it is not necessarily being monitored. For instructions on activating monitoring, see Configuring Monitoring.

Tree Structure of Monitorable Objects

Each monitorable object has a hierarchical tree structure. In the tree, a replaceable such as *statistics represents the name of the attribute that you want to show statistics for.

This section shows the node tree hierarchies of the following monitorable objects:

Applications Tree Hierarchy

The applications tree contains the following nodes:

server.applications
       application-name
           virtual-server
                request
                   *statistic 
					

An example dotted name might be server.applications.hello.server.request.maxtime-count. For available attributes, see Applications Statistics.

HTTP Service Tree Hierarchy

The http-service tree contains the following nodes:

server.http-service
       virtual-server
           request
               *statistic
       _asadmin
           request
               *statistic

An example dotted name might be server.http-service.virtual-server1.request.requestcount-count. For available attributes, see HTTP Service Statistics.

JVM Tree Hierarchy

The jvm tree contains the following nodes:

server.jvm
           class-loading-system
           compilation-system
           garbage-collectors
           memory
           operating-system
           runtime 

An example dotted name might be server.jvm.memory.maxheapsize-count. For available attributes, see Java Virtual Machine (JVM) Statistics.

Web Tree Hierarchy

The web tree contains the following nodes:

server.web
           jsp
              *statistic
           servlet
              *statistic
           session
              *statistic
           request
              *statistic

An example dotted name might be server.web.servlet.activeservletsloadedcount-count. For available attributes, see Web Module Common Statistics.

Tools for Monitoring Enterprise Server

The following asadmin commands are provided for monitoring the services and components of Enterprise Server: