Apama 10.3 | Apama Documentation | Using Apama with Software AG Designer | Debugging JMon Applications
Debugging JMon Applications
Preparing the correlator for remote debugging
Creating a debug run configuration
Debug perspective
Example debug session
Additional resources for Java debugging
This section describes practical information for developing and debugging JMon applications with Software AG Designer. General knowledge of Java and Apama application development is assumed.
Software AG Designer is built on the Eclipse IDE framework and as such running and debugging JMon applications for the Apama correlator engine is no more different than with any standard Java application. There are however a few things to consider:
*Single thread — For JMon applications, the correlator uses a single thread of execution. When programming in Java consider the importance of maintaining determinism by not routing, emitting, or enqueueing an event in a thread other than the current thread. Java provides no guarantee on execution order for separate threads, so try to keep your JMon applications single threaded at all times. Although multiple threads are currently allowed for JMon applications, this might change in the future, with the correlator JVM issuing a warning or possibly an error.
*Event definitions — To instantiate event definitions in your JMon application, the Event subclass in question needs to be defined and included in your JAR file. This is because the correlator uses a separate classloader for each application (that is, each JMon JAR file injected) and hence cannot share the event definitions across separate JMon applications. Also, a JMon application cannot make use of any event definition already present in the correlator. Any event definition (either a subclass of the JMon Event class or a definition in an EPL file) must be replicated for each JMon application and for your injected EPL files.

Copyright © 2013-2018 | Software AG, Darmstadt, Germany and/or Software AG USA, Inc., Reston, VA, USA, and/or its subsidiaries and/or its affiliates and/or their licensors.