Tuesday May 22, 2018


About pymon

pymon is an open source network and process monitoring solution implemented in python. The interface and conifiguration is designed to be easily and rapidly deployed, saving on time and overhead often associated with other monitoring solutions.

Design Goals and Purpose

pymon is desinged with one goal in mind: simplicity. Simplicity in configuration, deployment, and management. Its API is designed to not only accomplish this goal, but to allow you the freedom to do whatever you want with it -- including making it as complicated as you want.

In our view, all that a monitoring application should do is monitor. Yet, a good application should let you have access to its data and functionality. pymon strives for this goodness, enabling you to make it part of other applications, or a larger meta-application.


  • The perfect remote monitoring tool for systems administrators and IT managers alike
  • Easy installation and configutation for rapid deployment
  • Apache-style configuration file for zero learning curve, instant implementation, and easy maintenance
  • Email notifications
  • Unified auditing/logging
  • Built-in http daemon for the display of all service, host, and network states (supports virtual hosting for easy integration with Apache)
  • Asynchronous (Twisted Python) code for near-realtime capabilities
  • The ability to monitor thousands of simultaneous services, hosts, page content checks, responses to protocol requests, etc.



pymon is released under a BSD License.

The Future

Here are some of the things in the works:
  • The creation of PyMon+ that includes the capacity to run remote, light-weight agents/probes. With the introduction of this feature, the option will be available for those wanting "push," agent-based monitoring.
  • An interactive pymon shell for creating, modifying, deleteing, querying as well as enabling and disabling services, hosts, and networks; acknowledging alerts; manually performing escalations; modifying general, non-monitor-instance-specific pymon configuration parameters.
  • Escalation notification logic.
  • Built-in snmp daemon with the ability to receive authenticated emails and respond according to message content. This would include the full range of abilities provided by the interactive shell.
  • Support for authenticated access to the interactive shell via Jabber client sessions or IRC channel bot.
  • Open storage, configuration, and messaging APIs for the easy development of additional user interfaces within third-party systems.
  • SNMP MIBs for seamless integration into other monitoring frameworks (e.g., HPOpenView).
  • Distributed monitoring capbilities where multiple pymon hosts communicate to provide the most reliable coverage and notification of service availability.


[ 2008.01.17]  

New News Feed

The pymon project has a news feed now, thanks to SF.net. We've managed to unify the news-generation process, so all news items from now on will be available in three places:
  • the front page (and news archives) of the pymon site;
  • the Summary and News pages for the pymon project at SF.net; and
  • the RSS feed for the pymon project at SF.net.
The RSS feed has also been added to the pymon site, available in both the address bar and on the page as a link.

We wrote a fun little command-line script that allow us to keep the pymon site and the SF.net project news section in-sync and up-to-date with a single command. This lowers the resistance barrier to publishing news items by minimizing time and hassel.

Keep in mind that these will be the major news items, while the dev mail list will (in general) publish items of interest more frequently.

[ 2008.01.11]  

New Mail List

There's a new mail list for pymon development discussions, bring the total pymon mail list count to three:

To date, all intense technical discussions and development planning have taken place on the pymon list, however, from now on that list will be for asking and answering questions about usage and deployment.

[ 2008.01.11]  

Great Progress

Well, things are going well on the dev front. I've been testing the Twistsed-based portscanner that checks the hosts in a given netblock (or blocks) for open TCP ports and then generates pymon config files for those services (TCP ping check only). I'm in the middle of writing the TCP ping checker (100% python, no need for an external tool or for a local agent service to be running, which is what the current ping checker uses) and should be done with that soon. That will leave me with a few more areas to cover before a new release:
  • testing scalability (in massive configuration deployments as well as checks)
  • continuing work on the storage component (which will replace the global registry and pickled code)
  • updating the HTTP status checker
  • updating the HTTP content checker
I will likely make a testing release at this point for folks to give a try, whet their appetite, and provide some feedback on. Then, in short order, I will work on the following which will result in a follow-up release:
  • bug reports from the previous test release
  • start initial work on messaging
  • fine-tune workflow
  • write a plugin HOWTO
Given the little time I have available to work on pymon, I'm really surprised and excited about the amount that has happened in such a short time. Several long-term goals have been met over the past two months; seeing how I had anticipated those being completed a year from then, this is most unexpected :-) I guess working for Divmod has really given me a lot of energy and enthusiasm.

News Archives