jMonit is composed by three architectural layers :
layer is included in the application code to extract the
datas. To avoid too much intrusion in your code, the
required classes are limited to the
package, and many of them are simple interfaces.
The computation layer gathers those datas ands builds indicators, like statistics, history, or threshold warnings. The instrumentation and computation layers can collaborate using the feature API, that enable jMonit to accept custom code plugged at runtime.
The formating layer renders the indicators into a user interface. jMonit provides a web UI and a simple way to programmatically collect datas if you need to format them by yourself. The formating layer is based on the Visitor pattern, so the data may be formatted in any format (XML, CSV, PDF...) by simply creating the adequate renderer.