Start

Introduction


Installation

Introduction

Execution Profiler is a tool to help you understand program execution when you don't have the source code readily available. Generally, when you have the source code, you can use a debugger and break points to stop execution and examine variables and the stack. This generally is not possible when examining third party (non-open source) software. Execution Profiler instruments the classes you specify and records when any instrumented method is invoked. It then provides you this information in a GUI accessible via your operating system's system tray.

Execution Profiler provides the following information:

For each instrumented method: HTTP Request/Response Data: JDBC:

Please note, this tool was designed to have minimum impact on application performance. As such, execution data is stored in heap. The amount of execution data you can record is relative to the amount of heap available in the JVM. This tool is not intended to store execution data over larger periods. It was designed such that its normal state is not recording. When you want to analyze program execution, you would:

  1. Start recording
  2. Click a button or submit a request (i.e. the action you are interested in analyzing)
  3. Stop recording
  4. Examine data

At this time, the data cannot be persisted, but a database (versus heap) data store is in the works for the future.

Disclaimer

This tool has not been thoroughly tested. It is unknown how it will perform under load. In a scenario where many classes are instrumented and there are many threads creating hundreds or thousands of events per second, it is possible the JVM will become unstable (perhaps run out of heap or the CPU processing of method events drowns out application processing). However, this software does work really well with a small number of threads over a short amount of time, especially if there is limited processing occurring.


Start

Introduction


Installation