Hi,
Using the monitoring in the webapp, without the optional collect server,
is simpler and in general more effective. But yes, you can use an
optional centralized collect server if you want.
As said in the advanced user guide, this optional collect server can
centralize in a same user interface and with a unique storage the
monitoring of several applications (QA and production for example) and /
or the monitoring of an application with several instances of servers (a
cluster for example). So the reports, the storage and the charts are
moved out of the monitored application to the collect server.
The collect server calls periodically the monitored webapps to get the
delta of the statistics and some data about global status (this is pull
and not push).
The channel of communication between the collect server and the
monitored webapps is http. And the format of the data is java
serialization over this http channel (xml over http is also possible but
not needed).
You can configure the frequency of calls and the storage directory.
There are options to secure the access to the data of the monitored
webapps including basic authentication and ip white list.
The collect server can be deployed in a container like Tomcat or with
the already included servlet container.
You can view the reports of the collect server with your browser and
choose the application and the period of the charts and of the
statistics to display (day, week, month, year or custom between two
dates). The graphics and the statistics are aggregated when the
application is for several instances in a cluster. The graphics are
stored in RRD format and the statistics are stored in ser.gz format.
Documentation:
https://code.google.com/p/javamelody/wiki/UserGuideAdvanced#Optional_centralization_server_setup
bye,
Emeric