+

Search Tips   |   Advanced Search

Enterprise bean counters

Use this page as a reference for properties of enterprise bean counters.


Counter definitions

Name Key EJB Type ID Description Type Level Overhead Troubleshoot
CreateCount beanModule.creates Stateless Stateful Entity MDB 1 The number of times that beans were created. CountStatistic Basic Low Stateless, MDB: When this value is higher than expected, reference FreedCount and DiscardCount.
RemoveCount beanModule.removes Stateless Stateful Entity MDB 2 The number of times that beans were removed. CountStatistic Basic Low None.
ActivateCount beanModule.activates Stateful Entity 3 The number of times that beans were activated. CountStatistic All Low Stateful: When this value is higher than expected and not using failover, consider changing activation policy to ONCE.

Entity: When this value is higher than expected with option A or B caching, the container cache size could be too small.

PassivateCount beanModule.passivates Entity 4 The number of times that beans were passivated. CountStatistic Basic Low None.
InstantiateCount beanModule.instantiates Stateful Entity 5 The number of times that bean objects were instantiated. CountStatistic All Low None.
FreedCount beanModule.destroys Stateful Entity 6 The number of times that bean objects were freed. CountStatistic All Low None.
LoadCount beanModule.loads Entity 7 The number of times that bean data was loaded from persistent storage. CountStatistic All Low None.
StoreCount beanModule.stores Entity 8 The number of times that bean data was stored in persistent storage. CountStatistic All Low If this value is higher than expected, consider using read-only setting.
ReadyCount beanModule.readyCount Entity 9 The number of bean instances in ready state. RangeStatistic Basic High None.
LiveCount beanModule.concurrentLives Stateless Stateful Singleton Entity MDB 10 The average number of concurrently live beans. RangeStatistic Extended High Stateless, MDB: If this value is consistently higher than pool size, consider increasing the pool size.

Stateful: If this value is higher than expected, the application might be missing calls to remove method.

MethodCallCount beanModule.totalMethodCalls Stateless Stateful Singleton Entity MDB 11 The number of calls to the business methods of the bean. CountStatistic Basic High None.
MethodResponseTime beanModule.avgMethodRt Stateless Stateful Singleton Entity MDB 12 The average response time in milliseconds on the business methods of the bean. AverageStatistic Basic High None.
CreateTime beanModule.avgCreateTime Stateless Stateful Entity MDB 14 The average time in milliseconds for instantiate and PostConstruct. AverageStatistic TimeStatistic All Max None.
RemoveTime beanModule.avgRemoveTime Stateless Stateful Entity MDB 15 The average time in milliseconds for PreDestroy (including the time at the database, if any). AverageStatistic TimeStatistic All Max None.
ActiveMethodCount beanModule.activeMethods Stateless Stateful Singleton Entity MDB 18 The number of concurrently active methods (that is, the number of methods called at the same time). RangeStatistic All High None.
RetrieveFromPoolCount beanModule.getsFromPool Stateless Entity MDB 19 The number of calls retrieving object from the pool. CountStatistic All Low None.
RetrieveFromPoolSuccessCount beanModule.getsFound Stateless Entity MDB 20 The number of times that a retrieve found an object available in the pool. CountStatistic All Low If this value is considerably lower than RetrieveFromPoolCount, consider increasing the pool size.
ReturnsToPoolCount beanModule.returnsToPool Stateless Entity MDB 21 The number of calls returning an object to the pool. CountStatistic Extended Low None.
ReturnsDiscardCount beanModule.returnsDiscarded Stateless Entity MDB 22 The number of times that the returning object was discarded because the pool was full. CountStatistic Extended Low If this value is larger than expected, consider increasing the pool size.
DrainsFromPoolCount beanModule.drainsFromPool Stateless Entity MDB 23 The number of times that the daemon found the pool was idle and attempted to clean it. CountStatistic All Low None.
DrainSize beanModule.avgDrainSize Stateless Entity MDB 24 The average number of objects discarded in each drain. AverageStatistic All Medium None.
PooledCount beanModule.poolSize Entity MDB 25 The current number of objects in the pool. RangeStatistic Basic High None.
MessageCount beanModule.messageCount MDB 26 The number of messages delivered to the onMessage method of the bean. CountStatistic Basic Low None.
MessageBackoutCount beanModule.messageBackoutCount MDB 27 The number of backed out messages that failed to be delivered to the onMessage method of the bean. CountStatistic All Low None.
WaitTime beanModule.avgSrvSessionWaitTime MDB 28 The average time in milliseconds required to obtain a server session from the pool. AverageStatistic TimeStatistic All Medium None.
ServerSessionPoolUsage beanModule.serverSessionUsage MDB 29 The percentage of the server session pool in use. RangeStatistic All High None.
ActivationTime beanModule.activationTime Stateful Entity 30 The average time in milliseconds for activating a bean object. AverageStatistic TimeStatistic All Medium None.
PassivationTime beanModule.passivationTime Stateful Entity 31 The average time in milliseconds for passivating bean object. AverageStatistic TimeStatistic All Medium None.
LoadTime beanModule.loadTime Entity 32 The average time in milliseconds for loading the bean data from persistent storage. AverageStatistic TimeStatistic All Medium None.
StoreTime beanModule.storeTime Entity 33 The average time in milliseconds for storing the bean data to persistent storage. AverageStatistic TimeStatistic All Medium None.
PassivationCount beanModule.passivationCount Stateful 34 The number of beans in a passivated state. RangeStatistic Basic Low Stateful: When this value is higher than expected and not using failover, consider changing activation policy to ONCE.
ReadyCount beanModule.methodReadyCount Stateless Stateful 35 The number of bean instances in ready state. RangeStatistic Basic High When this value is lower than expected, consider increasing pool size.
ReadLockTime beanModule.readLockTime Singleton 36 The average time in milliseconds that threads wait for a read lock prior to the invocation of the Singleton methods. TimeStatistic Basic Medium WRITE is the default container-managed concurrency demarcation for all Singleton methods. If this value is higher than expected, ensure that all methods are changed to READ concurrency unless WRITE concurrency is required.
WriteLockTime beanModule.writeLockTime Singleton 37 The average time in milliseconds that threads wait for a write lock prior to the invocation of Singleton methods. TimeStatistic Basic Medium WRITE is the default container-managed concurrency demarcation for all Singleton methods. If this value is higher than expected, ensure that all methods are changed to READ concurrency unless WRITE concurrency is required.
LockCancelCount beanModule.LockCancelCount Singleton 38 The total number of Singleton method invocations that were canceled because they exceeded the specified Access Timeout value. CountStatistic Basic Low If this value is higher than expected, increase the Access Timeout value for this Singleton type, or change the design of the Singleton method to reduce the ReadLockTime and WriteLockTime values.
AsyncWaitTime beanModule.asyncWaitTime Stateless Stateful Singleton 39 The average time asynchronous methods wait on the work manager queue prior to the methods run. TimeStatistic Basic High If this value is higher than expected, increase maximum number of threads in work manager.
AsyncQSize beanModule.asyncQSize Stateless Stateful Singleton 40 The average size of the work manager queue for asynchronous methods. RangeStatistic Basic High If this value is higher than expected, increase maximum number of threads in work manager.
AsyncCancelCount beanModule.asyncCancelCount Stateless Stateful Singleton 41 The number of canceled fire and return results asynchronous methods. CountStatistic Basic Low If this value is higher than expected, review application design along with system and error logs to identify cause of method cancellation.
AsyncFNFFailCount beanModule.asyncFNFFailCount Stateless Stateful Singleton 42 The number of failed fire and forget asynchronous methods. CountStatistic Basic Low Review system and error logs to identify the cause of method failures.
AsyncFutureObjectCount beanModule.asyncFutureObjectCount Stateless Stateful Singleton 43 The number of server-side Future objects from fire and return results asynchronous methods. This statistic is only collected for asynchronous remote business interface methods. CountStatistic Basic High Review the application to ensure all client-side Future objects are tracked and the Future.get() method is called, where all the resources associated with the future object are released. Alternatively, reduce the futureTime attributes of the EJBAsync configuration object. Default value: 86400 (24 hours).
DiscardCount beanModule.discards Stateless Stateful Singleton Entity MDB 44 The number of bean instances that have been discarded. CountStatistic Basic Low Review the system and error logs to identify why the bean instances have been discarded.
MethodCalls beanModule.methods.methodCalls Stateless Stateful Singleton MDB 51 The number of method invocations. CountStatistic Basic High None.
MethodRt beanModule.methods.methodRt Stateless Stateful Singleton MDB 52 The average method response time in milliseconds. For Singleton beans this does not include any time elapsed waiting for a lock. AverageStatistic TimeStatistic All Maximum None.
MethodLoad beanModule.methods.methodLoad Stateless Stateful Singleton MDB 53 The number of concurrent calls to invoke the same method. RangeStatistic All Maximum None.
MethodLevelCallCount beanModule.methodLevelCallCount Stateless Stateful Singleton MDB 54 The number of method invocations made by WebSphere Application Server on the enterprise bean. For message driven beans, this is the number of attempts to deliver messages to the bean onMessage method of the bean. CountStatistic Basic Low None.

The EJB home object is the scope for counters, unless specified otherwise. The following table lists other possible scopes for counters, along with a list of counters that have that scope:

EJB Scope Counters
EJB home object and pool object

RetrieveFromPoolCount

RetrieveFromPoolSuccessCount

ReturnsToPoolCount

ReturnsDiscardCount

DrainsFromPoolCount

DrainSize

PooledCount

EJB bean type

MessageCount

MessageBackoutCount

WaitTime

ServerSessionPoolUsage

PassivationCount

ReadyCount

AsyncWaitTime

AsyncQSize

AsyncCancelCount

AsyncFNFFailCount

AsyncFutureObjectCount

DiscardCount

MethodCalls

MethodRt

MethodLoad

MethodLevelCallCount

Some of the counters can be retrieved with the use of java.management.j2ee.statistics API. The following table lists the available counters, bean type, and API.

Counter Bean type java.management.j2ee.statistics API
CreateCount All EJBStats.getCreateCount()
RemoveCount All EJBStats.getRemoveCount()
ReadyCount Entity EntityBeanStats.getReadyCount()
PooledCount Entity EntityBeanStats.getPooledCount()
MessageCount MDB MessageDrivenBeanStats.getMessageCount()
PassiveCount Stateful StatefulSessionBBeanStats.getPassiveCount()
MethodReadyCount All SessionBeanStats.getMethodReadyCount()

  • Monitor overall system health
  • PMI data organization