... your friendly monitoring daemon.

About MonAMI

MonAMI architecture MonAMI architecture.

MonAMI is a monitoring daemon. Its responsible for getting monitoring data from a service (like MySQL) to where it's needed (e.g. a monitoring system). MonAMI will get information from many different services and can send the data to lots of monitoring systems.

MonAMI can gather information in different ways. It can collect information periodically. It can obtain a stream of asynchronous events from a service, directing them to different monitoring systems. It can also wait until information is requested, delivering fresh information "on-demand". It can also do all three monitoring types concurrently.

One of the advantage of MonAMI is that the monitoring plugins need know nothing about how the data is to be reported. Data from a monitoring target can be sent to any number of reporting targets. With a MonAMI monitoring plugin for your favourite application, you can plot graphs with Ganglia, trigger emails with Nagios, just keep a log of performance over time or send the data to any of the other reporting plugins.

MonAMI can monitor many thing concurrently. It will automatically aggregate information so there is never any duplication in requests, and so minimises the impact on the services being monitored.


MonAMI uses a plugin architecture to allow it to be extended by developing new targets. Information is provided by plugins and delivered to different destination by targets. MonAMI-core mediates the flow of information, collecting data from plugins when the data is needed and sending it to the correct destination.

MonAMI deployment example An example with MonAMI and MonaLisa.

How to get MonAMI

Obtaining the binary RPM

Prebuild binary RPMs of MonAMI for selected Linux platforms are available from the project download page. If the binary RPM isn't available, try building your own from the source RPM (available from the same page) with the command rpmbuild --rebuild monami-*-1.src.rpm. Let us know if you have problems.

Installing the RPM

The RPM should be installed as root: rpm -Uvh monami-*-1.i386.rpm. Once installed, you can make sure MonAMI will start up when the machine is rebooted by configuring the init script, thus: chkconfig monami on.

Configuring MonAMI

Although MonAMI has one key configuration file (/etc/monami.conf), the default configuration tells MonAMI to read the files within the /etc/monami.d directory. Files within this directory contain the information about how MonAMI should run, which services to monitor and how the monitoring information should be reported. How to configure these files is fully documented in the User Guide. The MonAMI by example tutorial gives a step-by-step guide to using MonAMI.


There is a User Guide providing a definitive reference and a step-by-step Tutorial "MonAMI by Example".

User guide: [HTML], [HTML (single page)], [A4 PDF], [Letter PDF].

Tutorial: [HTML], [HTML (single page)], [A4 PDF], [Letter PDF].

How to get involved

There's lots to do, from easy projects to harder and more long-term projects. Perhaps you would like adapt MonAMI so it can monitoring your favourite application. Maybe you have an alternative way of displaying the monitoring data. Writing an additional plugin is a fairly easy way of improving MonAMI.

If you do want to get involved, subscribing the the developer's mailing list and introduce yourself. Logo GridPP Logo