IBM WebSphere Application ServerTM
Release 8

com.ibm.websphere.pmi.stat
Interface WSStats


public interface WSStats

WebSphere Performance Monitoring Infrastructure (PMI) Stats interface. This interface is similar to javax.management.j2ee.statistics.Stats interface. There are two ways to access stats:

  1. via MBean stats attribute
  2. via WebSphere Perf MBean
When using the MBean stats attribute an object of type javax.management.j2ee.statistics.Stats will be returned. If the MBean has a specific stats interface defined in the J2EE specification then an object of that specific type will be returned. For example, if the target MBean type is JVM then the return type will be javax.management.j2ee.statistics.JVMStats.

When using the Perf MBean an object of type com.ibm.websphere.pmi.stat.WSStats will be returned. The Perf MBean doesn't provide support for specific stats interface like JVMStats. The following example explains how to get the individual statistic from WSStat interface.

    ObjectName perfMBean;   // get Perf MBean (MBean type=Perf)
    String query = "WebSphere:type=perf,node=" + nodeName + ",process=" + serverName + ",*";
        ObjectName queryName = new ObjectName(query);
        Set s = adminClient.queryNames(queryName, null);
        if (!s.isEmpty())
      perfMBean = (ObjectName)s.iterator().next();

    ObjectName jvmMBean;    // get JVM MBean  in the same way as above with type JVM(MBean type=JVM)

    // invoke getStatsObject on perfMBean
    signature = new String[] {"javax.management.ObjectName","java.lang.Boolean"};
    params = new Object[] {jvmMBean, new Boolean(false)};
    WSStats jvmStats = (WSStats) ac.invoke(perfMBean, "getStatsObject", params, signature);

    // get JVM Heap size.
    // WSJVMStats interface defines all the statistics that are available from JVM
    WSRangeStatistic jvmHeapStatistic = (WSRangeStatistic) jvmStats.getStatistic (WSJVMStats.HeapSize);
    long heapSize = jvmHeapStatistic.getCurrent();

    // print all statistics
    System.out.println (jvmStats.toString());
 
WebSphere Performance Monitoring Infrastructure (PMI) maintains the Stats from various components in a tree structure. Refer to the Perf MBean documentation for details about Perf MBean API.


Method Summary
 int getLevel()
          Deprecated. No replacement
 java.lang.String getName()
          Returns the Stats name (eg., JVM Runtime, Thread Pools)
 WSStatistic getStatistic(int id)
          Get Statistic by ID.
 WSStatistic getStatistic(java.lang.String statisticName)
          Get Statistic by Name.
 java.lang.String[] getStatisticNames()
          Get Statistic names
 WSStatistic[] getStatistics()
          Get all statistics
 WSStats getStats(java.lang.String name)
          Get the sub-module stats by the name
 java.lang.String getStatsType()
          Returns the Stats type (eg., jvmRuntimeModule, threadPoolModule).
 WSStats[] getSubStats()
          Get all the sub-module stats
 long getTime()
          Returns the time when the client request came to the server
 int getType()
          Deprecated. No replacement
 java.lang.String[] listStatisticNames()
          Deprecated. As of 6.0, replaced by getStatisticNames()
 WSStatistic[] listStatistics()
          Deprecated. As of 6.0, replaced by getStatistics()
 WSStats[] listSubStats()
          Deprecated. As of 6.0, replaced by getSubStats()
 int numStatistics()
          Returns the number of statistics available in this Stats object (this number doesn't include the sub-module stats).
 void resetOnClient(boolean recursive)
          Reset the statistic (the statistic is reset only in the client side and not in the server side).
 void setConfig(PmiModuleConfig config)
          Set textual information.
 java.lang.String toString()
          Returns the Stats in String format
 java.lang.String toXML()
          Returns the Stats in XML format
 void update(WSStats newStats, boolean keepOld, boolean recursiveUpdate)
          Update the Stats object
 

Method Detail

getName

java.lang.String getName()
Returns the Stats name (eg., JVM Runtime, Thread Pools)


getStatsType

java.lang.String getStatsType()
Returns the Stats type (eg., jvmRuntimeModule, threadPoolModule). This type is used to bind the text information like name, description and unit to the Stats.


getTime

long getTime()
Returns the time when the client request came to the server


setConfig

void setConfig(PmiModuleConfig config)
Set textual information. If the text information like name, description, and unit are null then this method can be used to bind the text information to the Stats. The text information will be set by default.

See Also:
WSStatsHelper

getStatistic

WSStatistic getStatistic(int id)
Get Statistic by ID. The IDs are defined in com.ibm.websphere.pmi.stat.WS*Stats interface.


getStatistic

WSStatistic getStatistic(java.lang.String statisticName)
Get Statistic by Name.


getStatisticNames

java.lang.String[] getStatisticNames()
Get Statistic names


getStatistics

WSStatistic[] getStatistics()
Get all statistics


getStats

WSStats getStats(java.lang.String name)
Get the sub-module stats by the name


getSubStats

WSStats[] getSubStats()
Get all the sub-module stats


numStatistics

int numStatistics()
Returns the number of statistics available in this Stats object (this number doesn't include the sub-module stats).


listStatistics

WSStatistic[] listStatistics()
Deprecated. As of 6.0, replaced by getStatistics()

Returns all the statistics


listSubStats

WSStats[] listSubStats()
Deprecated. As of 6.0, replaced by getSubStats()

Returns all the sub-module statistics


listStatisticNames

java.lang.String[] listStatisticNames()
Deprecated. As of 6.0, replaced by getStatisticNames()

Returns all the statistic names


update

void update(WSStats newStats,
            boolean keepOld,
            boolean recursiveUpdate)
Update the Stats object

Parameters:
newStats - the new value of the Stats
keepOld - indicates if the the statistics/subStats that are not in newStats should be removed
recursiveUpdate - recursively update the sub-module stats when it is true

resetOnClient

void resetOnClient(boolean recursive)
Reset the statistic (the statistic is reset only in the client side and not in the server side).


toXML

java.lang.String toXML()
Returns the Stats in XML format


toString

java.lang.String toString()
Returns the Stats in String format

Overrides:
toString in class java.lang.Object

getType

int getType()
Deprecated. No replacement

Returns the PMI collection type


getLevel

int getLevel()
Deprecated. No replacement

Returns the PMI instrumentation level


IBM WebSphere Application ServerTM
Release 8