Skip to content

Application Runtime Monitoring

Nikos Kefalakis edited this page Jan 15, 2015 · 7 revisions

Monitoring is one of the main functionalities of the OpenIoT Host Environment (IDE). The monitoring module uses the JavaMelody library to implement the relevant functionality. Java Melody can be configured to provide monitoring information for the entire Host Environment, as well as each individual component.

More specifically, JavaMelody can:

  • provide facts about the average response times and number of executions

  • make decisions when trends are bad before problems become too serious

  • optimize based on the more limiting response times

  • find the root causes of response times

  • verify the real improvement after optimizations

  • includes summary charts which can be viewed on the current day, week, month, year or custom period, showing the evolution over time of the following indicators:

    • Number of executions, mean execution times and percentage of errors of HTTP requests, SQL requests, JSF actions, JSP pages or methods of business façades (if EJB3, Spring or Guice)
    • Java memory
    • Java CPU
    • Number of user sessions
    • Number of JDBC connections

JavaMelody also includes statistics of predefined counters (current HTTP requests, SQL requests, JSF actions, JSP pages and methods of business façades for EJB3, Spring or Guice) with, for each counter :

  • A summary indicating the overall number of executions, the average execution time, the CPU time, and the percentage of errors.
  • The percentage of time spent in the requests for which the average time exceeds a configurable threshold.
  • The complete list of requests, aggregated without dynamic parameters with, for each, the number of executions, the mean execution time, the mean CPU time, the percentage of errors and an evolution chart of execution time over time.
  • Each HTTP request indicates the size of the flow response, the mean number of SQL executions and the mean execution time.
  • It also includes statistics on HTTP errors, on warnings and errors in logs, on data caches if Ehcache and on batch jobs if Quartz.
  • Number of executions, mean execution times and percentage of errors of HTTP requests, SQL requests, JSF actions, struts actions, JSP pages or methods of business façades (if EJB3, Spring or Guice)
Clone this wiki locally