Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

There are a host of open source network monitoring systems available. I tried we used to use Nagios, I have been hearing good things about Munin too.

The thing is most networking monitors are written in either PHP or Perl. If really struggle to change/modify or add additional functionality I really struggle. My questions -

  1. Is there any monitoring solutions in python?
  2. Of all these different ones which is most active & has best community support.
share|improve this question
why negative vote? is this not a valid question? I need advice... – Srikar Appal May 17 '12 at 9:34
Please, clarify which functionality you want to change/modify. Monitoring solutions are usually highly optimized to work under high load. That's why almost all solutions are written on C/C++. You can easily add plugins on most of languages/platforms in most cases. – DukeLion May 17 '12 at 9:40
i would like to add additional support like no. of signups/day or number of users using a particular feature etc. – Srikar Appal May 17 '12 at 10:12
then you can write plugin for nagios in python. There is a lot of python libs, e.g. – DukeLion May 17 '12 at 10:16
possible duplicate of What tool do you use to monitor your servers? – Shane Madden May 17 '12 at 21:03
up vote 1 down vote accepted

Shinken is the up and coming modern monitoring system that was rewritten based on intimate knowledge of Nagios.

An all Python workflow would look like this:

  • Shinken core
  • Shinken discovery engine and management console (Skonf)
  • Graphite time-series database and visualisation
  • MK Multisite* or Shinken's own WebUI as a frontend

  • Which actually work very well together. MK Multisite will soon get published support for Shinken's Business impact and Business rules in the UI, it has been implemented and tested but not released yet.

Shinken supports integrated modules for extending the functionality of the monitoring system which are programmed in Python with the possibility of compiling them or embedding C for computationally intensive algorithms.

Shinken and Graphite have good integration and are complimentary.

The only parts of the monitoring system which are not Python based are specific Nagios checks being executed or remote agents (NRPE, send_nsca, NSClient++, collectd, statsd, etc.) and the graphical representation of data in Nagvis which is in PHP with very opaque development unfortunately.

Hope this helps.

share|improve this answer

Shinken is a rewrite of Nagios with Python:

It's only a nagios core replacement, you'll need to install an UI, see

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.