Java(TM) Execution Time Measurement Library

The Java(TM) Execution Time Measurement Library provides a small set of classes to measure execution performance of existing J2SE or J2EE applications.


Java Execution Time Measurement (JETM) Core
etm.core.aggregation Pre-packaged aggregation strategies.
etm.core.aggregation.persistence Persistence support for aggregated performance data.
etm.core.configuration Static configuration support similar to Log4j configuration.
etm.core.jmx JETM JMX support.
etm.core.metadata Metadata providing EtmMonitor configuration details at runtime.
etm.core.monitor Java™ Execution Time Measurement Library core package.
etm.core.monitor.event Event subsystem.
etm.core.plugin JETM extension support.
etm.core.renderer Performance statistics rendering support.
etm.core.timer Execution timer abstraction.
etm.core.util JETM utility classes.


JETM - AOP Support
etm.contrib.aop.aopalliance AOPAlliance Support.
etm.contrib.aop.aspectwerkz AspectWerkz Support.
etm.contrib.aop.jboss JBoss AOP Integration.
etm.contrib.aop.spring Spring Support.


JETM - Framework Integrations
etm.contrib.integration.spring.configuration Spring 2.x configuration support.
etm.contrib.integration.spring.web Performance monitoring support for spring managed web applications.
etm.contrib.integration.web Generic Web Application integration support.


JETM - HTML Console
etm.contrib.console A drop in HTTP console that may be used standalone or as JETM plugin.
etm.contrib.console.actions Classes that process console requests.
etm.contrib.console.servlet Servlet request/response abstraction.
etm.contrib.console.standalone Standalone request/response abstraction.
etm.contrib.console.util Console utility classes.


JETM - Contributed Aggregators
etm.contrib.aggregation.filter Contributed filter implementations.
etm.contrib.aggregation.log Various logging aggregators which may be used to dump raw measurement results using a specific log implementation.
etm.contrib.aggregation.swing Swing aggregation support.


JETM - Result Rendering Support
etm.contrib.renderer This package contains additional renderers.
etm.contrib.renderer.plugin Contributed plugins such as pluging writing performance results on shutdown etc.
etm.contrib.renderer.swing Swing rendering support.


JETM - RRD Support
etm.contrib.rrd.core Generic RRD support.
etm.contrib.rrd.rrd4j RRD4j support.


Other Packages
etm.contrib.util Contrib utilities


The Java(TM) Execution Time Measurement Library provides a small set of classes to measure execution performance of existing J2SE or J2EE applications.

What's the purpose of this library?

In order to identify the root cause of bad application performance a fairly limited set of data is needed. Usually it is enough to know

to track down application hotspots. However collecting those data is either expensive (in terms of budget or application side effects) or too low level or just highly proprietary. The Java(TM) Execution Time Measurement Library tries to target these issues.

How does it work?

The main idea of this library is to collect the data mentioned as so called Named Measurement Points, while an Measurement Point may be any abritary code segment such as an method call, a constructor invocation or a limited set of Java instructions. Measurement Points may be inserted into existing code either by hand or declarative with the help of Aspect Oriented Programming (AOP) frameworks. Since Measurement Points might be nested within others the library supports recording of nested Measurement Points and represent them as Execution Path.

For further details see one minute and five minute tutorial.

Please note that it is not recommended to use this library for low level profiling. We highly encourage everyone to use this library for high level performance analysis only. For low level optimization please consider the use of an commercial or non commercial profiler.

Copyright © 2004,2005, 2006, 2007 All Rights Reserved.