Integrating Open Source Monitoring With Monitis

In this post, we’re going to examine two popular open source monitoring methods and their integration with the Monitis platform.  The first open source monitoring method we’ll discuss is Nagios — which allows you to monitor any network service with the use of plug-ins. The second is Munin — another software monitor with it’s own strengths and weaknesses. 

Nagios is a popular systems monitoring platform that includes scripting capabilities to maintain your monitoring tasks. Munin is a server monitoring system that is growing increasingly popularity in the open source community. Through integration with these services, Monitis can provide hosted server and network monitoring solutions.

Local and remote software monitoring is used by many administrators to provide analysis and notifications of issues as they arise. All of us in the server administration world know how tedious maintaining systems monitoring can be. Whether you run local monitors on every server, or remote clusters to monitor several locations, weeding through all of the data can be a bit of a headache at times. With Monitis, you can centralize all of these tasks into an easy-to-use and intuitive interface.

Traditional monitoring methods have  drawbacks in that you have to maintain a separate server to store and analyze the data provided through plug-ins and scripts. Even more troubling is the fact that if your server or network fails, you might not even receive your alerts!  A good solution for resolving this is to set up a robust monitoring cluster outside your systems. With this solution however, you’re going to add a noticeable workload on a system administrator to configure and maintain it.

But if you use Monitis, you could achieve this solution and sidestep the negatives.  You could easily do this all in a matter of minutes. Answer this: what server admin wouldn’t want to make things easier on themselves?

A great way to ensure that your alerts are received is to use a hosted monitoring system. Monitis offers a user-friendly interface, powerful tools, and a distributed network to ensure you receive your alerts when you need them the most. Ah, at last a way to put your mind at ease! In addition to greater security, this will free up a system administrator’s time because they’re no longer running around trying to find the problem. Now, they’re able to directly address it.

What if I already use the Nagios Monitoring Platform?

We have a simple solution to integrate your Nagios monitoring with your Monitis account. Through the use of a simple wrapper script you can load your data into our platform. Monitis offers the ability to measure any values with an easily created  custom monitor. Here we will demonstrate by creating a custom monitor that accepts data from the Nagios Load Plug-in. The Load Plug-in monitors server load times on one-, five- and 15-minute intervals. With just a few simple steps you can achieve this solution.

1. Creating a Custom Monitis Monitor

Download the readily available script at and run it as follows

$ ./ -w 5,3,3 -c10,5,4
 OK - load average: 0.88, 0.74, 0.65|load1=0.880;5.000;10.000;0; load5=0.740;3.000;5.000;0; load15=0.650;3.000;4.000;0;

This script is specifying the state values to be read via Monitis REST API and providing load values for the one-, 10-, and 15-minute intervals. Many functions of the Monitis API can be use in traditional monitoring software. Flexible integration with a simple API is the Monitis way.

Mow that your Monitor is  created,  log into your Monitis account and add your new monitor. Notice now that you have a customizable and user friendly interface at your disposal. Stylish graphs and status information can all be displayed on your single dashboard for easy network analysis in one convenient location.

2.  Write a Nagios Wrapper Script To Send Your Data To Monitis

For this step you will need two scripts first the wrapper for the check_load plugin:
available here.  The previous script then uses an ‘add data’ script that you can obtain here.Then simply run the script like so:

$ ./ -w 5,3,3 -c10,5,4
 OK - load average: 0.88, 0.74, 0.65|load1=0.880;5.000;10.000;0; load5=0.740;3.000;5.000;0; load15=0.650;3.000;4.000;0;

This script will run the plug-in, parse the data provided and then use that information to send the results  to your Monitis Custom Monitor. Once you restart Nagios, you will then begin to generate a fine looking and comprehensive analysis of your data.

3. Set up your Monitis Alerts

Through the Dashboard of your Monitis account you can easily use the Notification Rules of the Custom Monitor you created earlier to set up notifications. Monitis ensures you will always receive your alerts even if the Nagios server fails due to network outages. The distributed Monitis network’s user friendly interface will provide a reliable platform for any open source monitoring method.  Traditional systems-monitoring software can, under certain circumstances, fail you when you need it the most. Freeing up your time as a system administrator from locating issues to quickly being notified and then directly solving the issue at hand is just one of the many added benefits
of using Monitis.

Moving on to Munin

Nevermind. With Monitis you can centralize all of your monitoring needs into one easy-to-use interface. No more looking through multiple monitoring locations to view multiple servers. What if you’re already setup with Munin on several locations? Not a problem! Monitis offers a simple way to make multi-server monitoring and analysis more efficient and friendly. This is another great way to save time, and it allows you to focus on fixing the issues instead of searching for them.

Through the use a few steps and the readily available Monitis Linux scripts repository, you can achieve the integration of Munin and Monitis.

Follow these simple steps

# mkdir -p /usr/share/monitisexchange && cd /usr/share/monitisexchange
# git clone git://
# cd Monitis-Linux-Scripts/RRD
# vim monitis_config
After that is completed, add to monitis config:
# ./ munin list_hosts /var/lib/munin

This is the basis for initiating the use of Munin and Monitis. Using plug-in-specific arguments, you can then add monitors and then hook them together to allow Munin to work completely with the centralized Monitis platform.

List the counters produced by Munin for the memory of localhost

# ./ munin list_counters_for_monitor /var/lib/munin localhost memory

Add the Munin counter that shows the amount of threads running on the system to Monitis.

# ./ munin add_monitor /var/lib/munin localhost threads threads

This will add the counter to Monitis

Now add performance data

/ munin update_data_for_monitor /var/lib/munin localhost threads threads
Now provided you have a returned result of RRD_localhost_munin_threads under the Monitis interface, all that is left to do is hook it all together. A script for hooking the auto update of the data to Monitis is available here.

Note: In Fedora and Debian, Munin is invoked in /etc/cron.d/munin

And there you have it: two solutions for the integration of Monitis into open source monitoring applications. Whether your needs are to free up resources from locally monitored servers or to centralize remote monitoring applications, Monitis has the solutions you need to deliver efficient and user friendly results.

The Monitis platform offers flexible ways to integrate remote distributed monitoring into any platform and meet your unique needs.

Learn more about Nagios and Munin integration here: